Work

First-person engineering work. Client names are withheld: some of this was delivered as an employee, and none of it is presented as a client reference.

On record

Case 01 · LLM systems

A production agent with the assurance layer built in

Tagged

baselines, diffed per run

Vector retrieval over an embedded corpus, structured output through forced tool-use rather than parsing free text, and a twenty-case evaluation harness with tagged baselines and a regression-diff tool. Every call persists its own cost, and the provider chain fails over rather than failing.

  • Structured output enforced by tool schema, never by parsing model prose
  • Tagged evaluation baselines with a diff tool that surfaces regressions between runs
  • Per-call cost accounting persisted alongside each decision
  • Multi-provider failover on upstream overload

Case 02 · Governance controls

Audit logging, RBAC and tenant isolation, in one release

+5,015

lines, one release

A single release adding a typed permission-scope vocabulary, role guards at both page and action level, an append-only audit log enforced by database trigger rather than by convention, and row-level-security tenant isolation in Postgres. Roughly five thousand lines across eighteen files.

  • Append-only audit log enforced at the database, not in application code
  • Row-level-security tenant isolation with a validated tenant wrapper
  • Typed scope vocabulary with tests, not free-form permission strings
  • Admin review surface and CSV export for the audit trail

Case 03 · Data platform

An entire production ETL, migrated and re-platformed

246

pipelines migrated

Sole-authored migration of a production pipeline estate off legacy tooling: 246 pipelines and 67 workflows across 453 commits. Then re-platformed onto 43 parallel containerised tasks, taking the main run from roughly three hours down to about one hour forty, and the player-data pipeline from nine hours to three, across 44 tenant schemas.

  • 246 pipelines and 67 workflows migrated, sole-authored
  • 43 parallel containerised tasks on immutable pinned images
  • Two pipelines re-platformed: main 3h to 1h40m, player data 9h to 3h
  • Roughly 3B rows across 44 tenant schemas, player data included
  • Staged release discipline with health gates and retained rollback points

Case 04 · AI governance in code

Transparency in the product, guardrails on the agents

Art. 50

in shipped code

EU AI Act Article 50 transparency reasoning written into a customer-facing assistant at the point of interaction. Alongside it, controls constraining the development agents themselves: credential reads blocked at the tool level, least-privilege tool allow-lists, and backups taken outside model control that abort the run if they fail.

  • Article 50 disclosure reasoning at the point of interaction
  • Pre-execution hook denying agent access to environment and secret files
  • Least-privilege tool allow-lists with pinned model versions and turn caps
  • Backups taken outside model control, aborting on failure

Engagements start with a scoping call. You work with the person who does the work.