Evaluation
Deciding whether a system that gives different answers each time actually got better — with a number you'd stake a release on.
LLM evaluation · eval harness · LLM-as-judge · gold sets · offline eval · benchmarking · variance and significance testing
- The harness told me my AI was worse than I thought
- Built a category-balanced question set across two dozen question shapes, scoring correctness, completeness and faithfulness separately
- Found the harness itself carried enough run-to-run variance that every apparent gain in an optimisation sweep sat inside the noise band — moved decisions to offline replay over already-judged answers, confirmed with multi-run significance testing
Context engineering
Designing what information reaches the model — and treating that information as a product with owners, versions and tests, rather than a folder someone dumps files into.
context layer · context window · context governance · CDLC · RAG substrate · provenance and lineage · freshness · knowledge layer
- The five ways context fails
- SDLC → CDLC: governing the context that feeds your LLM
- Designed a release pipeline for knowledge: candidate builds, contract gate, human promotion, pinned versions, one-click rollback
AI governance
The controls that decide what an automated system is allowed to change, who approves it, and how you undo it when it turns out to be wrong.
runtime governance · guardrails · human-in-the-loop · audited rollback · gating · promotion · least-privilege agent tooling
- A gate that isn't wired into the robot is decoration
- Governing the information your AI reads — the deck
- Built the gate that blocks unsafe changes; separately found the provenance fields behind retrieval ranking were wired but carrying no data, so the authority ranking was a no-op
Agentic systems
Systems where the model decides which tools to call and in what order, rather than following a fixed script.
AI agents · tool use · function calling · tool routing · agent loops · ReAct · MCP · autonomous pipelines
- Built retrieval as an agent loop — the model chooses whether to search, grep or read source, instead of being handed a fixed context
- Raised an assistant's high-confidence answers from 81 to more than 90 out of 100 (its own confidence label); none of the failures was missing data — they were routing gaps and tool bugs
- Shipped a conversational standup agent that extracts structured updates and writes back to the work-tracking system
Retrieval & search
Finding the right passages to put in front of a model — and knowing when the ranking that helps one kind of question quietly hurts another.
RAG · retrieval-augmented generation · vector search · pgvector · embeddings · chunking · hybrid search · reranking · cross-encoder · intent classification
- One retrieval rule fixed enumeration and broke explanations
- Built intent-conditioned ranking: work out what kind of question is being asked before deciding what to fetch
- Traced a 34-minute promotion gate to a reranking stage that took about three-quarters of retrieval time and blocked the event loop — not the database
Orchestration
Coordinating many moving parts — jobs, agents, stages — so that failures are contained and the sequence is recoverable.
multi-agent orchestration · pipelines · workflow engines · scheduling · job orchestration · state machines · checkpointing
- Designed a candidate → gate → promote → rollback pipeline to keep automated jobs off production — then had to audit and contain the write paths that still bypassed it
- Built, from scratch, the state machine that moves every case through its lifecycle in a workflow product
- Learned the hard way that a job dying at import writes no run record at all — the failure is invisible by construction
Models & model selection
Choosing and swapping the model underneath a product — and proving the swap actually helped on real traffic, not just on the questions you happened to test.
model routing · model evaluation · foundation models · Claude · GPT · Gemini · prompt caching · cost/latency tradeoffs
- Ran a model upgrade that won clearly on the curated question set and regressed on real user traffic; the promotion was reverted
- Every promotion before that had been scored only on curated questions — the discipline now is to promote on production-derived sets
- Per-role model selection across Claude, GPT and Gemini, and question-type routing between a knowledge-base lane and a source-code lane; prompt and embedding caching to hold latency down
Distributed systems
Systems spread across services, clusters and regions, where the interesting failures are the ones that only appear at the seams.
multi-tenant SaaS · replication · change data capture · event-driven · Pub/Sub · reconciliation · multi-cluster · data pipelines
- Led the reliability audit of an analytics data pipeline and authored a self-correcting redesign — replication and automatic reconciliation
- Found one entity's records split across two data sources; the rollup had to sum across them, not group by them. Caught only by an audit
- Built the platform audit system and owned search and notification delivery across a multi-tenant product
Reliability & observability
Knowing when something is broken — especially the failures that produce no error, no alert, and no record that they happened.
incident RCA · SRE · monitoring · instrumentation · silent failures · production debugging · Kubernetes · Cloud Run
- A gate that isn't wired into the robot is decoration
- Root-caused a severe production CPU-spike incident following an infrastructure upgrade
Engineering leadership
Running the function: what it can absorb, how to grow the people in it, and how to turn engineering reality into something leadership can decide on.
engineering management · capacity planning · headcount modelling · talent retention · platform-as-product · AI transformation · executive communication
- Engineers transformed. Engineering didn't — the deck
- Lead an engineering function of 30+ engineers and plan against effective capacity rather than headcount
- Led the function through a period of turnover
- Scored my own capacity forecasts against what happened: the bug projection was over-pessimistic by more than twice over at two months, the broader bugs-and-features forecast by about 30%