Start a Project

Technology

What we work with

A working list, not an exhaustive one. Tools are chosen to fit the problem and the people who will maintain the result — if your team already runs something well, that usually counts for more than our preference.

Languages

Java

Long-lived backend services where reliability matters more than novelty.

C#/.NET

Application and service development, especially on Windows estates.

PHP

Web applications and server-rendered sites, with modern frameworks.

SQL

The part most people skip. Done properly it saves years of pain.

JavaScript

Browser behaviour, kept to what the page genuinely needs.

Python

Data work, scripting and AI tooling.

Data

PostgreSQL

Our default database. Free, dependable and genuinely capable.

MySQL / MariaDB

Common in existing systems we take over.

SQLite

Embedded storage for single-machine tools.

Schema design

Constraints, indexing and migrations under version control.

ETL & imports

Getting historical data in, validated rather than hoped over.

AI & Automation

Local LLMs

Models running on your hardware, with no external calls.

Hosted AI APIs

Where a hosted model is genuinely the better fit.

Retrieval over your documents

Answers grounded in your material, with sources.

Workflow orchestration

Scheduled and event-driven pipelines that recover from failure.

Infrastructure

Docker

Deployments that behave the same everywhere they run.

Linux

Server administration, hardening and maintenance.

Nginx

Reverse proxy, TLS termination and static delivery.

Git

Version control, with self-hosted options if you want them.

REST APIs

Integration between systems, in both directions.

How we choose

The list above is where we are fluent, not a boundary. If a project is better served by something not on it, we will either learn it or tell you plainly that another firm is a better fit.

Three things weigh more heavily than novelty when we pick a tool:

  • Can it be maintained? Something with a large community and long-term support beats something clever with three contributors, because you will still need it working in five years.
  • Can you leave? Open formats and standard protocols, so moving off a component later is a project rather than a rewrite.
  • Does it fit what you already run? Introducing a fourth language into a team that knows one is a cost you pay every month, not once.

On this site, specifically

This website and the customer portal behind it are built the way we build for clients: containerised services, a PostgreSQL database with versioned migrations, authentication handled by mature framework libraries rather than anything home-made, automated tests, and documentation that covers backup, restore and deployment.

It runs entirely on infrastructure we control, and it would run just as well on yours.

Tell us what you are trying to fix

The first conversation is thirty minutes, free, and has no pitch in it. We will tell you whether we can help, roughly what it would cost, and if the honest answer is that you do not need us, we will say that too.