Architecture & modernisation
Evolving monoliths into platforms without stopping the business, with decisions written down so they stay reviewable.
Principal Software Engineer at eMed UK
I design and ship safe changes in regulated systems: payments, healthcare interoperability, multi-region platforms and AI-assisted delivery.
Principal Software Engineer with 34+ years shipping software, leading architecture at Babylon Health from 2018 and at eMed UK since 2023, across a healthcare platform operating in the UK, US and Canada. I am a player-coach: I write the design doc, review the PRs and still ship the hard fix when it matters.

Selected impact
B2B onboarding automation across 700+ client organisations and ~3M members; setup errors cut from ~7% to under 1%.
Decommissioned a UK telehealth platform with GDPR-safe exports and an immutable, access-controlled media vault.
Real-time Twitter firehose ingestion, ranking and anomaly detection for electronic trading firms at FSWire.
What I do
Cross-cutting architecture for platforms that move money, handle patient data and span jurisdictions, and the engineering culture to keep them healthy.
Evolving monoliths into platforms without stopping the business, with decisions written down so they stay reviewable.
Multi-provider, multi-region payment domains, configuration-driven pricing and zero-downtime provider migrations.
HL7 FHIR domain modelling, e-prescribing and signing, and pharmacy claims submission and reconciliation.
Back-pressure, bulkheads, autoscaling signals, graceful shutdown, load testing and cost-aware architecture.
Application security, credential rotation, GDPR operations and residency-clean, per-region stacks for new markets.
Harnesses, agent standards and skills catalogues that hold AI-generated PRs to the same checkable rules as human ones.
Open source · MIT
A harness-agnostic delivery workflow that turns a request into a validated contract (brief, spec, plan and verification evidence) before anyone writes code. Run it from the accord CLI with Claude Code, Cursor or Pi, or install the Pi extension for a /accord command inside Pi. It is built around one metric: how little of an engineer’s attention it consumes.
❯ accord drive PROJ-1234 --harness claude pattern implement/standard align → brief.md spec → spec.json (AC-1 … AC-4) plan → plan.json (TDD-ordered) tasks test → review-test → code → review-code ❯ accord finish PROJ-1234 VERIFICATION COMPLETE Verdict: gaps (3/4 pass) AC-1: pass auth.test.ts:42 AC-2: pass refresh.test.ts:17 AC-3: fail no test for configurable TTL AC-4: pass eslint no-direct-jwt
Experience
Own technical strategy and architectural direction for a global healthcare platform. As architecture lead across all engineering pillars, set cross-cutting architecture, reference patterns and standards, and bridge commercial intent and technical delivery through B2B2C expansion, GLP-1 product lines, US and Canadian market entry and the Babylon legacy sunset.
Set architectural direction and standards for the engineering organisation while hands-on in the core platform.
Led in-house and offshore teams delivering white-label small-business SaaS for Lloyds Banking Group and RBS, combining architect and lead-engineer responsibilities.
Led engineering end to end for a real-time social and market data platform serving high-frequency and electronic trading firms.
Designed and engineered a BlackBerry FX messaging and trading application.
Led the iManage WorkSite mobile team, engineered the WorkSite FileShare prototype and led the team behind server-based email management for the WorkSite suite.
Writing
Architecture, delivery and the occasional war story, from real-time finance to regulated healthcare.
A seed job, a build artifact, five services across three package managers and an AWS emulator, all brought up in dependency order and wired to each other by one command. How we built a thin orchestration layer from a YAML registry, a pure-JS resolver and Tilt, and the things we deliberately didn't build.
Four years on from my Babylon-era setup: agent skills in Pi, tmux and Neovim as the whole IDE, Gmail in the editor, dotfiles that build a machine in one command, a PARA notes repo as a second brain, and the same session from desk, iPad or iPhone over Tailscale and mosh.
A replacement workflow engine would have cut the licence bill by more than 90%. The honest business case said the question wasn't cost at all. How to write a platform-migration case that counts engineering time, opportunity cost and operational maturity honestly.
Entering a market that requires patient data to stay in-country doesn't have to mean cloning your whole platform. Split it into data cells and processing hubs, then hunt down the places data quietly comes to rest.