SYSTEM
DESIGN
Real-world architecture problems with hard constraints. No textbook answers — trade-offs, failure modes, and the thinking that connects them.
6 parts published
Designing a Real-Time Cinema Seat Booking System
How to handle 8,000 concurrent users fighting over 300 seats — with WebSocket sync, Redis holds, and Postgres as the final lock.
Staff Prep 24: Redis Data Structures & Caching Patterns Beyond GET/SET
Most engineers use Redis as a dumb key-value store. Sorted sets, streams, pub/sub, and HyperLogLog solve entire classes of problems without touching your database.
Staff Prep 25: Message Queues — Kafka vs SQS vs Redis Streams
Kafka retains messages for replay. SQS is fully managed and simpler. Redis Streams is the lightweight middle ground. Choosing wrong means rewriting your event pipeline in 12 months.
Staff Prep 26: Load Balancing Strategies — L4 vs L7, Health Checks & Consistent Hashing
L4 balancers see TCP. L7 balancers see HTTP. The difference determines what routing decisions you can make. Consistent hashing minimises reshuffling when servers join or leave.
Staff Prep 27: Distributed Systems — CAP Theorem, Eventual Consistency & Conflict Resolution
CAP is not a choice between three things — it is a choice between two, when a partition occurs. Here is how to reason about it like a Staff engineer.
Staff Prep 28: Observability — Metrics, Logs, Traces & SLOs
Monitoring tells you something is wrong. Observability tells you why. The three pillars — metrics, logs, traces — and how to wire them together to actually find production problems.