Distributed system design: building blocks, back-of-the-envelope math, and end-to-end case studies.
This course covers the parts large-scale systems are built from: load balancers, caches, rate limiters, shards, message queues, storage engines. Then how they combine, and where the combinations break.
Each lesson opens with a failure story, works through the idea with real numbers, and ends with a quiz and a set of Anki cards. Every lesson comes back to the same four trade-offs: latency, availability, consistency, durability.
The material follows Alex Xu’s System Design Interview series, Vol 1 and 2, plus ByteByteGo.
Written one at a time, each grounded in a primary source.
1 Back-of-the-envelope estimation Foundations · 6 min 2 Rate limiter algorithms & trade-offs Traffic · 8 min 3 Consistent hashing Hashing · 7 min 4 Hash rings Hashing · 9 min 5 Designing a key-value store Storage · 10 min