Blog
Notes on systems, payments & the work
Practical writing about engineering at scale and the personal side of a career in software — architecture decisions, trade-offs, failures, and lessons learned.
9 min
Designing Reliable Payment APIs
The boundaries, invariants, and failure modes that make payment APIs trustworthy.
PaymentsAPI Design
10 min
A Practical Guide to API Timeouts
Timeouts are part of an API contract, not an afterthought added after the first outage.
API DesignReliability
10 min
The Cost of Hidden Retries
Retries can turn a small failure into a traffic storm when they are invisible and unbounded.
ReliabilityAPI Design
14 min
Idempotency Keys Are Not Optional
If a client can retry a request — and it always can — your write endpoints need idempotency keys. Here is how to design them so retries are safe without turning your database into a bottleneck.
Distributed SystemsAPI Design