Back to Blog

Tag

#distributed systems

6 articles
Article preview
War Stories May 4, 2026 13 min read

The Friday Afternoon Slack Message That Killed My Weekend

How a duplicate-payouts report from finance taught me that idempotency is a system property, not a one-service bug fix — and the path from a tactical patch to a cross-cutting framework that took at-least-once seriously.

Article preview
War Stories May 3, 2026 13 min read

The Customer Support Ticket That Taught Me to Profile Before Designing

A "simple" lost-update bug took me through optimistic locking, pessimistic locking, and finally a two-stage Redis-locked aggregator — a tour of why the right concurrency primitive depends entirely on the shape of your contention.

Article preview
War Stories May 2, 2026 16 min read

The Day Half Our Real-Time Updates Vanished

A routine scale-up from one pod to three exposed an architectural assumption I'd been making for years — that Spring's in-memory STOMP broker could survive horizontal scaling. It can't. Here's the Redis Pub/Sub fan-out pattern that fixed it.

Article preview
War Stories May 1, 2026 14 min read

When the Backend Spoiled the Animation

A UX complaint led me to one of the most underrated primitives in the Kafka client — consumer.pause(). Here's how a 2-second delay problem ruled out three reasonable approaches and ended up at a pause/resume pattern with a TaskScheduler.

Article preview
Core Patterns February 10, 2025 11 min read

Highload Distributed Systems Architecture

How distributed systems stay up when traffic moves from hundreds to hundreds of thousands of requests per second — the architectural decisions, trade-offs, and failure modes that actually matter at scale.

« Prev Page 1 Next »