Seven layers down.
The name is a literal promise: seven layers, and we work all of them. Below is the whole stack — surface to silicon — and what the work looks like at each level.
- Layers
- 7
- Surface
- Applications
- Floor
- Silicon
Read straight down. The bedding tightens and the rock darkens as you go — by the time the seam on the left runs the full height of a band, you are at the silicon.
Applications
The part everyone sees — and the part we ship, rather than hand off. Web frontends, backend services and APIs, mobile apps, and the AI surfaces layered over them: whatever shape the product needs, built by one team instead of split across three. And built so that a probabilistic system still feels dependable — streaming, citations, graceful failure, and the affordances that let a person stay in control.
- Web & mobile apps
- Backend & APIs
- AI-native interfaces
- Human-in-the-loop
- Trust & citations
Agents
Control flow for models. Where a task gets decomposed, which tool is reached for, what gets remembered, and when the loop must stop. Most agent failures are architecture failures, not model failures.
- Tool contracts
- State & memory
- Planning loops
- Failure containment
Retrieval
Getting the right context in front of the model at the right moment. Chunking strategy, hybrid retrieval, reranking and freshness — the difference between a demo that impresses and a system that answers.
- Hybrid retrieval
- Chunk strategy
- Rerankers
- Grounding evals
Models
Which model, and why. Capability mapped against cost, latency, licence and control — with an honest read on where a frontier API earns its price and where a smaller open model wins outright.
- Capability mapping
- Open vs. frontier
- Licensing
- Eval harnesses
Training & Tuning
Data is the model, and adaptation is how it learns your domain instead of being told in a prompt every time. Collection, cleaning, deduplication and synthetic augmentation; then adapters, preference optimisation and distillation that trade a general model for a specific one — smaller, faster and yours. Instrumented so a result can be reproduced rather than retold.
- Data curation
- Reproducible runs
- LoRA & preference tuning
- Distillation
Inference & Serving
Where the bill lives, and where it has to survive traffic. Quantisation, speculative decoding, KV-cache strategy and prompt economics on one side; continuous batching, request routing, autoscaling and back-pressure on the other — so cost per token falls and p99 stays flat when load does not.
- Quantisation
- KV-cache & decoding
- Continuous batching
- p99 discipline
Silicon
The floor of the stack. Kernel selection, memory layout and occupancy read off a profiler rather than guessed at — and beneath that, accelerator choice, interconnect topology and capacity planning: decisions with an eighteen-month shadow, made once and lived with.
- Kernel profiling
- Memory & occupancy
- Accelerator choice
- Capacity planning
The same symptom, two different answers.
Surface-level work treats the layer it can reach. Depth means treating the layer the problem is actually in.
Swap in a bigger model
Find out which layer is the bottleneck
Optimise the prompt
Optimise the decode path
Scale the instance
Fix utilisation, then decide on scale
Ship the demo
Ship the eval that guards the demo
Which layer is yours?
Bring the symptom. We'll locate it in the stack, tell you what it would take to fix, and be honest about whether it's worth fixing.
Typical reply within one working day.