System Design Interview - An Insider's Guide
Author: Alex Xu
Edition: Second Edition
Chapter-by-chapter summary covering scale, back-of-the-envelope estimation, framework for system design interviews, and design walkthroughs for various distributed systems.
Chapters
- 06 - Scale from Zero to Millions of Users: the scaling journey from single server → sharding + CDN + multi-DC
- 07 - Back-of-the-Envelope Estimation: the 3 reference tables + Twitter QPS/storage worked example
- 08 - A Framework for System Design Interviews: the 4-step process, dos/don'ts, 45-min time budget
System Design Problems
- 09 - Design a Rate Limiter: 5 algorithms + Redis counters; sliding window counter ≈ best
- 10 - Design Consistent Hashing: hash ring + virtual nodes; only ~k/n keys move
- 11 - Design a Key-Value Store: CAP, quorum, vector clocks, Merkle trees (Dynamo-style)
- 12 - Design a Unique ID Generator in Distributed Systems: snowflake bits, 1+41+5+5+12
- 13 - Design a URL Shortener: base 62 beats hash+collision; 301 vs 302 redirects
- 14 - Design a Web Crawler: URL frontier with front queues (priority) + back queues (politeness)
- 15 - Design a Notification System: one queue per channel; retry + dedupe
- 16 - Design a News Feed System: hybrid fanout; store post IDs, hydrate at read
- 17 - Design a Chat System: WebSocket, KV-store history, presence via heartbeats
- 18 - Design a Search Autocomplete System: trie with cached top-k per node → O(1)
- 19 - Design YouTube: cloud CDN + blob storage; DAG transcoding pipeline
- 20 - Design Google Drive: block servers + delta sync; long polling; Glacier cold storage
- 21 - The Learning Continues: real-world architecture reading list by company