We are a unique software engineering firm, with a track record of rapidly delivering high-quality IT systems to meet challenging business objectives.
Complexity, still the primary cause of failure and delay of IT projects, arises from the interaction of concerns.
The fundamental concerns in IT systems are code, form, data and time — their subtle interactions and couplings combine to have a suffocating impact on software projects.
Our approach to building IT systems is defined by a unique methodology and a set of supporting tools that allow us to keep these four concerns separate, resulting in:
Rapid development of large IT systems
Increased levels of agility and software re-use
Lower maintenance costs
Secure, reliable systems that are robust yet flexible
We believe that systems should be built on the conceptual bedrock of a dual timeline. This provides a universal set of essential capabilities for organisations who operate within disparate and ever-evolving landscapes of information, and who require an accurate and consistent view of information at any point: past, present and future.
The main timeline is fully controllable and it allows for:
The secondary timeline is immutable and provides a guaranteed audit trail, 'built-in'.
Data is fundamental to the creation of software. It will routinely outlive the interpretations we derive from it and the applications we build on top of it. Therefore, we will always seek to lay the foundations of data management independently of a particular application or use-case, and above a common timeline.
Table-based structures, found in spreadsheets and traditional SQL databases, are helpful for displaying and analysing data, but they are not an appropriate format for storing data.
Tables are insufficient for representing data in its purest form, and this is particularly obvious when modelling sparse data or multi-valued attributes, or coping with the evolution of data over time.
Instead, we believe that data is best recorded as units of facts and relationships, without constraints.
More simply put, we believe graph-oriented systems point us towards the correct approach for data management, and organisations such as Facebook and Google have proved how powerful the widespread use of graph-structured data can be.
Organisations can unlock different amounts of value from data depending on how they interpret it, how they shape it and the constraints they place on it.
Complex types & tables, schemas & structures, classes & containers, models and metadata, formats and encodings, representations.
These are the forms we construct for interpreting, analysing and extracting value from our data. Tools such as relational schemas and ontologies are common structures we use for understanding, analysing and managing our information.
Too often, software developers will attempt to "codify" these structures into their software as types and objects.
By understanding that schema is just another form of data, on a timeline, we let our information systems grow and flex with the businesses they serve. This is how we are able to build maintainable models of the real world.
The software patterns and practices that underlie your application architecture are certainly important, but less fundamentally relevant than making the correct choices with regards to the structure of your data in time. Assuming those other foundations are in place, we believe that the best approach to code is to keep it short, readable and expressive.
In reality this means we prefer:
By pulling out the state and domain, the remaining code is simple. Developers can focus on writing code to implement business logic, pure functional calculations and derivations, with resulting actions that automate the execution of business processes.
As software complexity is tamed, productivity soars.
XTDB is our unbundled bitemporal graph database:
XTDB provides the data 'time-line' as a value, storing both 'valid' time and 'transaction' time. Queries that are often impossible in other databases are made simple in XTDB.
Many object-oriented programming languages coax the developer into coupling code with data.
Functional programming languages pull them apart. Our go-to functional programming language — Clojure — goes further, providing language features to protect simplicity.
JUXT's leadership is made up of experienced software consultants who have led Agile projects, run Agile training courses and brought Agile methodologies into large organisations.
We have taken the best parts of Agile methodologies and combined them into a process that scales and delivers. We deploy often, provide regular showcases and encourage daily stand-ups. We use best-of-breed tools to provide transparency and to manage project work-streams.
We’ve been building systems on AWS since early 2014, over that time we’ve accumulated first-hand knowledge and expertise of managing and automating AWS infrastructure.
Our AWS systems have been successfully audited for PCI DSS compliance and won praise for their operational stability, information security and regulatory compliance. We have experience in meeting GDPR requirements and protecting data privacy.
Here are some of the projects we've been proud to build.
To help deliver a new cash management platform using Clojure and Kafka
JUXT assisted teams at Gresham Technologies to build out features ahead of the product launch with a major bank.
The product uses an innovative event driven architecture backed by Kafka Streams, using techniques such as event sourcing and CQRS. JUXT were able to quickly get productive with the system and slot into teams, providing expertise and feedback, to help them deliver on target and on budget.
Clojure, Kafka Streams, Event Sourcing, CQRS, GraphQL
Colin Reid, Development Manager
To develop Clojure and Kafka streams applications for data processing
Kooth engaged with JUXT to build Kafka Streaming apps in the emerging Kooth Data Mesh: simplifying topologies, improving testing and writing new data products.
JUXT also helped with the infrastructure roll-out and data migration.
Clojure, Kafka Streams, Data Mesh
To build the back-end of a rewards and loyalty programme for all UK mobile customers.
Highly scalable platform, delivered into production in 8 months, on time and on budget.
Successfully launched, currently serving >3 million active users, the system has proven highly reliable, with 100% uptime and zero outages.
Mattia Piccinini, Strategic Solutions and Technology, Senior Director
To deliver an innovative public-facing global sales platform for a multi-national investment bank
JUXT delivered a highly innovative data-driven user-interface, covering multiple life-cycle phases of complex structured derivatives.
ClojureScript, JSON Schema
MD, Investment Bank
To deliver a viable competitor to the UK’s property portal duopoly in just 9 months
JUXT led development of the OnTheMarket.com platform which was launched in 2015, on time and on budget.
Clojure, AWS, ElasticSearch
Morgan Ross, Technical Director
+44 (0) 333 93 98 309