← All posts

Series

Engineering

4 parts, in reading order.

  1. Part 1

    June 23, 20264 minEngineering

    The exactly-once lie: idempotency keys and how I keep payments honest

    Networks retry. Queues redeliver. Users double-click. If your payment endpoint can't tell a retry from a new request, you will eventually pay someone twice. Here is the pattern I reach for every time.

    • engineering
    • backend
    • distributed-systems
    Read more →
  2. Part 2

    June 25, 20264 minEngineering

    Maayo: building an offline-first sync library because I can't trust the network

    The unreliable internet that interrupted me when I was learning to code is the exact thing this library exists to defeat. Here is how Maayo lets apps write instantly offline and sync themselves when the connection comes back, and the design calls that actually mattered.

    • engineering
    • offline-first
    • typescript
    Read more →
  3. Part 3

    June 26, 20264 minEngineering

    How Serena made Claude Code usable in a 100-microservice codebase

    I knew a hundred-microservice system well, but there were deeper layers I had never had to touch, and Claude Code kept burning its whole context just digging them out. Serena fixed that. Here is how, and the gotchas to watch for.

    • engineering
    • claude
    • ai-tools
    Read more →
  4. Part 4

    July 17, 20268 minEngineering

    Barme: I wanted a lightweight object store, so I built one in Rust

    I wanted an object store that stays small, is aware of versions, manages its own storage, compresses, and is written in Rust. I couldn't find one that fit, so I built Barme. It stores objects by content instead of by name, which turns out to hand you dedup, cheap versioning, and integrity almost for free. Here is the idea and the parts that bit me.

    • engineering
    • rust
    • storage
    Read more →