- Correctness is designed, not tested in
- Money systems don't get to be probably right. I reach for designs that make failure structurally impossible — single-writer settlement so two workers can't book the same payment, idempotency keys so retries are free, database-level unique constraints as the last line. Tests confirm the design; they don't substitute for it.
- Everything degrades gracefully
- Networks drop, webhooks vanish, sockets die. The bus tracker falls back from WebSocket to polling. The exam engine keeps answers in IndexedDB through a dead connection. Reconciliation sweeps recover callbacks the gateway never delivered. The failure path is part of the feature, not an afterthought.
- Upgradeable beats clever
- A customization that blocks the next framework upgrade is technical debt with interest. Our 25-app suite keeps the core pristine: overlay apps, hooks, fixtures, and isolated class overrides — no forks, no monkey-patching. New institutions onboard without touching the platform.
- Performance is a query plan, not a guess
- The 4–5s → sub-500ms win came from reading EXPLAIN output, restructuring joins, and adding the right composite indexes — then layering Redis with doc-event invalidation so the cache is correct, not just fast. Measure, fix the actual bottleneck, cache last.
- AI compounds when it's in the pipeline
- An engineer using AI is faster; a team whose pipeline uses AI is faster everywhere. The LLM review pipeline reads every PR with repo context before a human does. Claude Code and Copilot are in my daily loop for migrations, tests, and refactors. The judgment stays human; the toil doesn't.
- Infrastructure is code, delivery is Git
- Production and UAT come from the same ~9k lines of Terraform. Deploys are ArgoCD syncing what Git says, images update themselves, and secrets exist only as references — never plaintext. The documented 43% cost cut came from the same discipline: read the bill like a query plan.