system-design/system-design-syllabus.md

System Design Syllabus — 24 Weeks

Phase 2. Run in parallel with Neetcode (Phase 1) at 30 min/day, then ramp to 1h/day from Aug.

~3 min read·updated 5/29/2026

System Design Syllabus — 24 Weeks

Phase 2. Run in parallel with Neetcode (Phase 1) at 30 min/day, then ramp to 1h/day from Aug.

Resources

  • Designing Data-Intensive Applications by Kleppmann (DDIA) — the bible
  • System Design Primer (donnemartin/system-design-primer on GitHub)
  • HelloInterview free design walkthroughs (YouTube)
  • ByteByteGo newsletter + book

Weekly cadence (8 weeks DDIA + 8 weeks SDP + 8 weeks practice)

Block A — DDIA (Weeks 1-8, May–Jun parallel to Neetcode)

WeekDDIA chapterTopicPractice
1Ch 1Reliable, Scalable, MaintainableSketch supplement-store's failure modes
2Ch 2Data ModelsDocument DB vs SQL — why InvoiceAI uses Postgres
3Ch 3Storage & RetrievalB-trees vs LSM trees, indexes (you use Prisma — what indexes does Prisma actually create?)
4Ch 4Encoding & EvolutionJSON vs Protobuf vs Avro; how Stripe versions APIs
5Ch 5ReplicationSingle-leader, multi-leader, leaderless. Supabase = single-leader Postgres
6Ch 6PartitioningWhy your Life OS uses single-DB partitioned by userId vs sharding
7Ch 7TransactionsACID, isolation levels, Postgres SERIALIZABLE in your billing flows
8Ch 8 + 9Distributed problems + ConsistencyCAP, consensus (Raft), why this is hard

Block B — System Design Primer (Weeks 9-16, Jul–Aug)

Work through SDP's "Design a system" exercises in order:

WeekDesign
9Pastebin / Bit.ly (URL shortener)
10Web crawler
11Mint.com (personal finance — relevant to your Life OS expense tracker!)
12Twitter / Instagram feed
13YouTube / Netflix (video streaming)
14Uber / Lyft (real-time matching)
15WhatsApp / Slack (chat at scale)
16Search autocomplete

Block C — Practice + Mock interviews (Weeks 17-24, Sep–Oct)

WeekActivity
17HelloInterview: Design Dropbox
18HelloInterview: Design Yelp
19HelloInterview: Design TopK Ranking
20First Pramp mock — system design (free, peer)
21Second Pramp mock
22First interviewing.io mock with paid Google interviewer ($150-$200)
23Re-do weakest design from earlier weeks
24Final mock — record yourself solo on whiteboard, review

The 6-step framework (memorize this)

For any design question:

  1. Clarify requirements (5min) — functional + non-functional. Numbers: users, QPS, data size, latency targets.
  2. High-level design (5min) — boxes + arrows. Client → API gateway → services → DB.
  3. API design (5min) — REST or gRPC, endpoint shapes, request/response.
  4. Data model (5min) — tables, relationships, indexes, partition keys.
  5. Deep dive (15min) — pick 2-3 components, dive deep. Caching, queue, replication, sharding.
  6. Bottlenecks + scaling (10min) — what breaks at 10x? At 100x? How would you fix?

Practice this framework on every design question. Interviewers grade structure as much as substance.

Topics that MUST be fluent

  • Load balancing (L4 vs L7, sticky sessions, consistent hashing)
  • Caching (Redis vs Memcached, cache-aside vs write-through, TTL strategy)
  • Database scaling (read replicas, sharding, denormalization)
  • Message queues (Kafka vs RabbitMQ vs Redis Streams; at-most-once vs at-least-once vs exactly-once)
  • CDN (when, why, what to cache)
  • Rate limiting (token bucket, sliding window log/counter)
  • Idempotency (idempotency keys, deduplication)
  • Observability (logs, metrics, traces)
  • Event sourcing + CQRS basics
  • WebSockets / SSE / long polling

Topics you can skip

  • Bitcoin/blockchain (irrelevant for L3/L4)
  • ML system design (only if applying to ML roles)
  • Hardware specifics (you're SWE not SRE)
  • Specific cloud quirks (focus on patterns, not "AWS X service does Y")

Building strengthens design (and vice versa)

Every project in your sprint touches a design topic:

  • supplement-store: caching strategy for product list, idempotency on Razorpay webhook
  • InvoiceAI: queue for reminder cron, multi-tenant data partitioning
  • NoteFlow: async processing pipeline, job queue + DLQ for Whisper jobs
  • Life OS: modular monolith, observability, BullMQ workers
  • Content Engine: distributed cron, fan-out across niches, error handling on third-party APIs

When you read a DDIA chapter, immediately ask "where does this show up in what I'm building?" The answers become interview talking points.

// 2 views

main
UTF-8·typescript