Software development

The platforms and technologies behind everything else we do - Java, Scala, Spring, Kafka and its connectors, the cloud, and the databases - and where each of them earns its place.

The stack, and why it is this one

Most of what we build runs on the JVM, moves its events through Kafka, and keeps its record in a relational database until something makes a better answer worth having. That is not fashion: it is the well-worn, well-documented, still-supported middle of the industry, and boring is a feature when somebody has to run the thing in five years.

What follows is one page per technology, written for somebody deciding whether we are the right people for a job rather than for somebody who already agrees with us.

What we work in

  • Java The platform behind most of the services we write, and the one most of our clients are already running somewhere.
  • Scala For the work that is really about data and types: pipelines, stream processing, and models that have to mean something.
  • Spring Framework The default way to build a Java service properly - APIs, persistence, security and batch - without inventing a framework.
  • Kafka The log at the centre of an event-driven system: how events are ordered, replayed, and kept.
  • Kafka Connect Getting data in and out of Kafka without a hand-written service for every system that holds some.
  • DevOps on AWS and Azure Infrastructure as code, delivery pipelines, containers, and the operational half of everything above.
  • Databases Nine datastores we work with, what each one is actually for, and the work we do on them.

How we choose

The technology follows the problem rather than the other way round. Who maintains the result matters more than a benchmark, a managed service that removes a rota is usually cheaper than the one that does not, and the smallest stack that does the job is the one that fails least often at three in the morning.

If what you need is better served by something that is not on this list, we will say so - including when the honest answer is that you do not need us at all.

How it starts

Tell us what the system has to do and what is already there. We will tell you what we would build, what we would keep, and what it would cost to get from one to the other.

The names and marks above belong to their owners: Oracle, Java and MySQL to Oracle, Azure and SQL Server to the Microsoft group of companies, AWS and DynamoDB to Amazon, and the rest to the companies that publish them. Each is shown only to name a technology the studio works with, and no partnership, sponsorship or endorsement is implied.

A little ambition goes a long way

Got a wild idea?
Let’s make it real.

Start a conversation