Writing

Field notes on ledgers, events, Postgres and migrations — plus the search-and-AI-visibility playbooks — written from production, not from theory. Roughly one substantial piece a month; no filler, no listicles. The flagship: the fourteen-company fintech teardown series — Stripe, Revolut, Monzo, Nubank, PhonePe, Kaspi and eight more, canonical here, syndicated to LinkedIn.

The teardowns are the spine. Each one reads a company’s production architecture from its artefacts — engineering blogs, incident reports, API behaviour — and names what’s imitable at your scale and what isn’t. They’re also the standing proof behind every service page: judge the reasoning free, then decide whether to rent it.

Start by problem. Numbers don’t match → Why Your Ledger Drifts. Building a money product → Ledger Design and Idempotency Done Right. A migration you’re scared of → Zero-Downtime Migration. Distributed-systems pain → Event-Driven Pitfalls. Want to be found by AI answer engines → Generative Engine Optimisation and the technical SEO foundation under it.

Everything here follows the site’s own rules: answer-first openings you can quote, sources named inline, and no advice that wouldn’t survive being read back to me on a client call. The articles give the methods away; the services sell the hands. That trade is deliberate — engines cite reasoning, buyers trust receipts, and the confidence trick where the trick is competence needs both.

Systems Writing Field notes on ledgers, events, Postgres and migrations: what breaks when a system meets real volume, and what to design before it gets there. Growth Writing Playbooks for search, AI visibility and conversion: how ranking actually works now, and which changes are worth making on a technical business website. Ledgers Everything written here about double-entry accounting, reconciliation and settlement, for teams building products that hold and move customer money. Architecture Writing Writing on domain modelling, event-driven design and API contracts: the decisions that determine whether a system stays changeable after two years. Postgres Practical Postgres notes from production: indexing strategy, vacuum behaviour, lock contention and the query plans worth reading before you scale up. SEO Search engine optimisation written for engineers: crawling, indexation, site architecture and the platform-level fixes that outlast any content refresh. AI Search How ChatGPT, Claude and Perplexity select and cite sources, and what a site must publish to be part of the answer rather than a link nobody clicks. Marketing Writing Notes on strategy, content and reputation for technical businesses, judged on pipeline generated rather than impressions, reach or engagement rate. Case Study Writing Written accounts of real engagements: the problem, the decision taken, the outcome measured, and the parts that did not go according to plan. Double-Entry for Engineers Double-entry explained as an invariant system rather than accounting jargon: a five-hundred-year-old consistency protocol that assumes humans make mistakes. Ranking in AI Answers How to be cited by ChatGPT, Claude and Perplexity: the crawlability gate, answer-first passages, one consistent entity, and a panel you measure monthly. Ledger Design Why double-entry wins for any product that moves money, and what goes wrong the moment you try to store balances instead of deriving them from the entries. Reconciliation at Scale Matching millions of transactions nightly without a queue of unresolved breaks: how to rank exceptions by value and resolve them from a guided audit workflow. Event-Driven Pitfalls Ordering, replay and poison messages are the three failures that ruin most event-driven systems. What to design in first, and which guarantees you can skip. Postgres in Production Indexes, vacuum and lock contention: the three things that decide whether Postgres stays fast at scale, and how to spot each one before it takes the site down. Zero-Downtime Migration Dual-write and backfill, done in the right order. A practical sequence for moving a live database without a maintenance window or a nervous rollback plan. Why Your Ledger Drifts Ledger drift is never random. Where the difference actually comes from, how to prove it with a reconciliation query, and what to change so it cannot recur. The T+1 Problem Settlement time and business reality rarely agree. How to model T+1 properly so your customer balance, your bank statement and your ledger tell one story. Idempotency, Done Right Keys, time windows and where to store them. How to make a payments API safely retryable without quietly double-charging a customer during a network failure. GEO Versus SEO, Honestly Ranked How AI answer engines choose what to cite, why entity clarity matters more than keyword density, and what to change on a site to be named in generated answers. Reconciling UPI Settlements Why UPI settles in seconds but reconciles on another clock: which reference to key on, the state nobody models, and the three-way match that works. Why Gateway Settlements Never Match Commission, tax, refunds from other periods, chargebacks and rolling reserve sit between gross sales and the bank credit. Each needs its own account. The Four Rails, and How Each Breaks UPI, IMPS, NEFT and RTGS differ in timing, reversal behaviour and which identifier settlement files join on. Modelling all four is an architecture job. The Technical SEO Audit Order Crawl, index and Core Web Vitals explained for engineers: which platform decisions quietly cost you rankings, and how to fix them in the codebase, not a plugin. What Actually Moves the Map Pack Maps, business profile and citations, in the order that actually moves the local pack. A practical sequence for practices competing inside a few kilometres. Google Updates What actually changed in the recent core updates, separated from the speculation, and which of those changes justify doing anything different on your own site. Conversion Optimisation Testing without fooling yourself: sample sizes, stopping rules and the traps that make a losing variant look like a winner in the second week of a test.