- Home
- Technology
How we build
The method matters more than the model.
Model architectures change every few months. What does not change is the discipline that decides whether a system works: a measured baseline, an honest evaluation set, a temporal split, and monitoring that catches decay before a customer does.
01 / Selection
How we choose what to use.
- Simplest thing that clears the bar
- We start with logistic regression and gradient-boosted trees on tabular problems because they are fast, interpretable, cheap to serve and frequently competitive. Heavier methods have to earn their place on your evaluation set.
- Buy, fine-tune or train
- An API call, a fine-tuned open-weight model, or a model trained from scratch — decided on data volume, latency, unit cost, privacy constraints and how much the domain differs from what general models already know. Usually in that order of preference.
- Open weights where they fit
- For steady high-volume workloads, and anywhere data cannot leave your environment, self-hosted open-weight models are often both cheaper and simpler to govern. We will recommend this even though a metered API is less work for us.
- Boring infrastructure
- Containers, a queue, a relational database, object storage, scheduled jobs. Novel infrastructure is a liability in a system your team has to operate for years after we have gone.
- Written decision records
- Every significant technical choice is recorded with its alternatives and its reasoning, so the engineer who revisits it in two years knows what was already considered and why it was rejected.
02 / Architecture
Five layers. The middle one is where projects die.
Evaluation is the layer that gets cut when a deadline tightens, and it is the layer whose absence makes every subsequent decision guesswork. Without it there is no way to tell an improvement from a regression, so teams stop changing the system at all.
We build it early, wire it into CI, and treat a drop in evaluation score the same way any competent team treats a failing test.
03 / Practice
Engineering standards we hold regardless of the model.
None of this is specific to AI. That is rather the point — the projects that fail usually fail on ordinary software discipline that was treated as optional because the subject matter felt novel.
- 01Reproducible trainingPinned dependencies, versioned data snapshots, recorded random seeds and tracked experiments. A result that cannot be reproduced next month is not a result you can build a business process on.
- 02Evaluation in continuous integrationThe evaluation suite runs on every change, with thresholds that fail the build. This is what allows a team to keep improving a system without silently breaking it.
- 03Temporal validation by defaultTrain on the past, test on the future. Random splits inflate almost every metric on data with time structure, and they are the single most common source of a model that looked excellent and then disappointed.
- 04Explicit failure behaviourEvery integration has a defined timeout, retry policy and fallback. Every model has an answer to 'what happens when this is unavailable, slow, or confidently wrong?' — written down and tested.
- 05Cost and latency ceilings in codePer-request budgets enforced at runtime, not monitored in a dashboard afterwards. Costs in this field scale with success, which is exactly when nobody is watching them.
- 06Monitoring on inputs and outcomesInput distribution drift, output distribution drift and, wherever ground truth eventually arrives, realised accuracy. Model decay is normal; discovering it from a customer complaint is not.
04 / Budgets
Latency and cost are designed, not discovered.
Before a component is chosen we allocate the request budget across retrieval, inference, post-processing and network. That allocation drives the architecture — it is the reason to cache, to route easy cases to a smaller model, or to accept a slightly less accurate approach that fits the envelope.
Next step
Want this examined against your existing system?
We review other teams' and other vendors' AI systems as a standalone engagement — architecture, evaluation, failure behaviour and running cost — and give you a written, unvarnished assessment.