system-design/readme.md

System Design — End-to-End Curriculum

A comprehensive system design reference built for Google L3/L4 prep. Written from first principles, with trade-offs explicitly called out, and Google-relevant systems (GFS, Bigtable, Spanner, Borg) folded in.

~2 min read·updated 5/29/2026

System Design — End-to-End Curriculum

A comprehensive system design reference built for Google L3/L4 prep. Written from first principles, with trade-offs explicitly called out, and Google-relevant systems (GFS, Bigtable, Spanner, Borg) folded in.

Read top to bottom for full coverage. Each chapter stands alone and links forward.


Part I — Foundations

  1. Fundamentals: Reliability, Scalability, Maintainability
  2. Numbers & Capacity Estimation
  3. Networking: TCP, HTTP, DNS, WebSockets

Part II — The Data Layer

  1. Data Models: Relational, Document, Graph
  2. Storage Engines: B-Trees vs LSM Trees
  3. SQL Deep Dive: ACID, Isolation, MVCC
  4. NoSQL Deep Dive: KV, Document, Wide-Column, Graph
  5. Encoding & Schema Evolution: JSON, Protobuf, Avro
  6. Caching: Strategies, Eviction, Redis vs Memcached
  7. Replication: Single-Leader, Multi-Leader, Leaderless
  8. Partitioning & Sharding

Part III — Distributed Systems Theory

  1. Consistency Models, CAP, PACELC
  2. Distributed Systems Fundamentals: Faults & Networks
  3. Time, Clocks, Ordering (Lamport, Vector, TrueTime)
  4. Consensus: Paxos, Raft, ZAB
  5. Transactions: Local, Distributed, 2PC, Saga, TCC
  6. Probabilistic Structures: Bloom, Consistent Hashing, Merkle, HLL

Part IV — Architecture & Patterns

  1. Load Balancing: L4 vs L7, Algorithms
  2. Message Queues & Event Streaming: Kafka, RabbitMQ, SQS
  3. Microservices, Monoliths, Service Mesh
  4. API Design: REST, GraphQL, gRPC
  5. Async Patterns: Pub/Sub, CQRS, Event Sourcing, Saga
  6. Rate Limiting & Throttling
  7. CDN & Edge Computing
  8. Search Systems: Inverted Index, Elasticsearch

Part V — Operations

  1. Observability: Logs, Metrics, Traces, SLOs
  2. Security: TLS, OAuth, JWT, OWASP
  3. Containers, Kubernetes, Borg
  4. Deployment: Blue/Green, Canary, Feature Flags

Part VI — Big Data & Streaming

  1. Batch Processing: MapReduce & Spark
  2. Stream Processing: Kafka Streams, Flink, Exactly-Once

Part VII — Case Studies

  1. Design a URL Shortener (TinyURL/bit.ly)
  2. Design Twitter / News Feed
  3. Design YouTube / Video Streaming
  4. Design Uber / Ride Hailing
  5. Design WhatsApp / Chat at Scale
  6. Design Dropbox / Google Drive
  7. Design a Web Crawler
  8. Design Typeahead / Autocomplete
  9. Design Yelp / Geo-Search
  10. Design a Distributed Cache
  11. Design a Rate Limiter Service
  12. Design a Notification System
  13. Design a Payment System
  14. Design an Ad Click / Counting System

Part VIII — Interview Strategy

  1. The Interview Framework (RESHADED)
  2. Cheat Sheet: Common Trade-offs & Patterns
  3. Google Papers: GFS, Bigtable, Spanner, MapReduce, Borg

How to use this

  1. First pass (8 weeks): Read Parts I–VI like a book. Don't skip math sections. Sketch every diagram by hand.
  2. Second pass (8 weeks): Take a case study (Part VII), close your eyes, design it on paper, then read the chapter and diff.
  3. Third pass (8 weeks): Mock interviews. Use Part VIII as a checklist.

Every chapter has a "Trade-offs" section. Memorize the trade-offs, not the conclusions. An interviewer cares whether you can reason about CP vs AP under context X — they don't care whether you "chose" Postgres or DynamoDB.

// 1 view

main
UTF-8·typescript