Source: CURRICULUM.md

30-Day FAANG System Design Curriculum

Structured progression: Foundations → Data & Storage → Scaling → Reliability → Advanced → Case Studies.

Each topic maps to one day (~60 min). Order matters — later topics assume earlier ones.


Phase 1 — Foundations (Days 1–7)

Day Topic Why it matters
1 Client-Server model, HTTP/HTTPS, DNS Every design starts here
2 Latency, Throughput, and "Numbers every engineer knows" Back-of-envelope math is a FAANG staple
3 TCP vs UDP, WebSockets, Long Polling, SSE Choosing the right transport
4 Load Balancers (L4 vs L7, algorithms, health checks) Nearly every design uses one
5 Caching fundamentals (client, CDN, app, DB) Biggest lever for latency & scale
6 Cache strategies (write-through, write-back, TTL, eviction) Depth on caching wins interviews
7 Content Delivery Networks (CDN) deep dive Static/dynamic content, edge caching

Phase 2 — Data & Storage (Days 8–14)

Day Topic Why it matters
8 SQL vs NoSQL — when to pick which The single most-asked trade-off
9 ACID vs BASE, Isolation levels Data correctness under load
10 Indexing (B-tree, LSM-tree, hash indexes) Query performance
11 Replication (leader-follower, multi-leader, leaderless) High availability & read scaling
12 Sharding / Partitioning (range, hash, directory) Horizontal scale
13 Consistent Hashing Foundation for distributed caches, DBs, LBs
14 Data warehousing basics (OLTP vs OLAP, columnar stores) Analytics vs transactions

Phase 3 — Distributed Systems (Days 15–21)

Day Topic Why it matters
15 CAP theorem & PACELC The mental model for every distributed choice
16 Consistency models (strong, eventual, causal, read-your-writes) Nuance that separates senior candidates
17 Message queues & event streaming (Kafka, SQS, RabbitMQ) Async architectures
18 Pub/Sub patterns & fan-out Notifications, feeds, real-time
19 Consensus overview (Raft/Paxos at a high level) Understanding coordination
20 Distributed transactions (2PC, Sagas, Outbox) Cross-service correctness
21 Idempotency, retries, exactly-once semantics Reliability under failure

Phase 4 — API, Reliability & Ops (Days 22–25)

Day Topic Why it matters
22 API design: REST vs gRPC vs GraphQL Interface choices
23 Rate limiting algorithms (token bucket, leaky bucket, sliding window) Classic mini-design question
24 Observability: metrics, logging, tracing Ops maturity signal
25 Auth & security (OAuth2, JWT, TLS, encryption at rest) Bare-minimum expected knowledge

Phase 5 — FAANG Case Studies (Days 26–30)

Day Case Study Focus
26 Design a URL Shortener (bit.ly) Hashing, key generation, DB choice, caching, analytics
27 Design a Rate Limiter Algorithms, distributed state, Redis
28 Design Twitter/News Feed Fan-out on write vs read, caching, timelines
29 Design WhatsApp / Chat WebSockets, message delivery, ordering, storage
30 Design YouTube / Video Streaming CDN, chunked storage, transcoding pipelines

Post-30 (bonus deep dives — unlocked after Day 30)

  • Design Uber / Ride-hailing (geospatial, matching)
  • Design Instagram (media pipeline, feed)
  • Design Dropbox / Google Drive (block storage, sync)
  • Design Google Docs (CRDTs, OT, real-time collab)
  • Design a Distributed Search Engine
  • Design Netflix (CDN, recommendations, adaptive bitrate)
  • Design a Payment System (idempotency, ledger, reconciliation)

Spaced repetition rule

Any topic where diagnostic/quiz score is < 70% gets re-quizzed on Day+3 and Day+10.