Hi, I'm Rahul.
I build JavaScript systems that have to keep working when nobody is watching. This site is where I put the writing, notes, and tools that came out of that — mostly about the un-glamorous middle of software: connection pools, deploys, tracing, the bits that decide whether a Tuesday is quiet or not.
Recent writing
The cost of a thousand pods
Horizontal scaling solves a lot of problems and creates one big one: every pod is a tiny machine with its own opinions about your database.
Postgres pooling in 2026
A pragmatic survey of where pooling lives now — in the driver, in a sidecar, in the cloud — and which one to reach for first.
Type-driven infrastructure, finally
SST and CDK pushed infra-as-code into TypeScript. The interesting part is what type inference does to the shape of a stack.
Packages I keep reaching for
People I read
He thinks about developer experience as a kind of systems engineering. SST is the artifact, but the way he talks about it on streams is the real material.
Tools that feel inevitable in retrospect. The discipline of shipping small, sharp libraries — unocss, vitest, slidev — is a craft I keep trying to learn.
Loud takes, but the underlying engineering judgment is sound. The yearly stack videos are an honest accounting of what changed and what did not.
Writes the kind of documentation that you wish came with every framework — narrative, specific, opinionated where it counts.
An ongoing demonstration that one PHP file and a domain is enough to start. The opposite of my usual instincts, which is why I keep paying attention.
A Philosophy of Software Design is the book I quote at code reviews. He treats complexity as the enemy with a precision most working engineers do not.
Short notes
Indices are not free
Every index is a write tax you pay forever in exchange for reads you may or may not run. I keep meeting teams who have ten indices on a table and use three.
The runbook is the product
If the service can only be operated by the person who built it, you have not finished building it. The runbook is the part where engineering becomes operations.
Small deploys, often
A deploy that takes six hours to roll back is not a deploy, it is a renovation. Optimize for the size of the change you can revert in one click.
Logs are a design decision
Every log line is a tiny API your future self will depend on. Treat them like a public interface — versioned, structured, ruthlessly pruned.
REST is fine
I keep watching teams rip out a working REST API for a GraphQL one they will replace with tRPC inside a year. The shape of your network calls is rarely the bottleneck.
Two engineers and a shell
Most operational outages I have been part of were ultimately fixed by two engineers and a shared shell. The tooling we wrap around that fact matters less than we admit.
Things I bookmarked
- The Mythical Drug Testusenix.org
On measuring the wrong thing, well.
- A forty year careerlethain.com
Will Larson on what longevity in this work looks like.
- Lessons from incident reportsdanluu.com
Dan Luu read a thousand postmortems so you do not have to. You should still read a few.
- Marc Brooker's blogbrooker.co.za
The clearest distributed-systems writing currently being published.
- Hexing the technical interviewaphyr.com
Aphyr. Just read it.
- Standing invitationkalzumeus.com
Patrick McKenzie's open call. A small thing that changes networks.