Selected work
Four decisions
Not feature lists. Each one records the constraint, what was chosen over what, and the detail a mid-level engineer would have got wrong — because that is what a senior reader actually evaluates.
Three of the four are under NDA. The domains are described concretely and the clients are not named, which is the whole of the compromise: no logos, no product names, no screenshots. Groundwork is the exception — it is public, and it is linked.
- 01
Groundwork
Risk-based task classification L0–L4, 5 specialised review agents,11 automated gates and 14 workflow procedures, shipped under MIT with semantic versioning.
The subtle partRoughly one task in three is stopped before any code is written — mis-scoped, conflicting with existing behaviour, or cheaper to solve without development. - 02
Voice to structured data
Speech becomes a validated task rather than a guess — domain-tuned transcription, schema-constrained extraction, and a human in front of every action.
The subtle partThe tests must never call the provider. It is not about the invoice — a suite that depends on a remote model is a suite that fails for reasons unrelated to the change under test, and a team learns to ignore it within a fortnight. The provider is mocked in CI, and model upgrades are caught by response-regression tests that compare structured output against fixed cases, so a silently retrained model is caught by the suite instead of by a user. - 03
Payments, clearing and tax documents
Card tokenization, idempotency-keyed clearing and accounting export, in a domain where being approximately right is being wrong.
The subtle partA tax document with a zero total is rejected outright by the provider. That sounds like an edge case until a discount, a refund or a fully-covered line produces one in the middle of an otherwise valid batch — and because issuance is all-or-nothing, the whole batch fails and nobody's invoices go out. Those items have to be recognised and closed locally instead, so the zero never reaches the provider at all. - 04
Multi-market commerce platform
One codebase cloned per market — config-driven currency, locale and timezone — with a pricing engine, driver-abstracted payments and delivery, and an ERP catalogue sync.
The subtle partCatalogue sync from the ERP stages every product change as a typed DTO for a human to review before it applies. It would have been far less work to write the incoming data straight to the catalogue — and an import that applies itself is an import nobody can undo. When the ERP sends a bad price on ten thousand products, the difference between staging and applying is the difference between a rejected batch and a weekend.