all_lessons / system_design / syllabus 3 PDFs -> 44 case drills

Distributed Systems Design — case syllabus

The 44-case applied layer of this track. The 19 foundation lessons derive the patterns; these case drills are where you apply them under realistic prompts. This page maps the 44 drills to their sources — the Alex Xu books and archive — and shows the coverage without duplicating the source material.

How to use the cases
Work the 19 foundation lessons first — they build the vocabulary (partitioning, replication, consistency, queues, fault tolerance) that every case below assumes. Then treat each case as a drill: state the requirements and estimates, reach for the foundation patterns by name, and defend the trade. The cases are the second half of the track, not an optional appendix.

Source Coverage

SourceRole in the siteWhat it contributes
System Design Interview, Vol. 1 Classic interview spine Scaling, estimation, interview method, then core cases: rate limiter, consistent hashing, key-value store, IDs, short links, crawler, notifications, feed, chat, autocomplete, video, and file storage.
System Design Interview, Vol. 2 Advanced case-study layer Location, maps, queues, observability, ad aggregation, reservations, email, object storage, leaderboards, payments, wallets, and stock exchange.
System Design Big Archive Primer and gap filler Short topics around databases, security, web/networking, cloud, caching, messaging, storage, operations, payments, geo, collaboration, and flash sales.

The Existing Foundation Track

These pages are already the right prerequisite path. They should remain the main sequence because they teach the forces behind the cases.

01
Method, estimates, and requirements
The interview script, back-of-envelope math, and the habit of letting numbers choose architecture.
Covers Vol. 1 Ch. 1-3 plus archive estimation/scaling topics.
02
Contract and data layer
API style, data modeling, storage engines, indexes, database choice, and the costs of each access pattern.
Covers archive API, database, isolation, and storage primers.
03
Scale the stateless tier
Load balancing, stateless replicas, caching, API edge concerns, CDNs, and rate limiting as protection.
Covers Vol. 1 scaling/rate limiter material and archive cache/CDN topics.
04
Scale state
Partitioning, replication, consistency, consensus, transactions, idempotency, and fault tolerance.
Covers the distributed-systems concepts used by almost every case.
05
Operate and synthesize
Optimization, observability, service decomposition, archetypes, and the capstone interview walkthrough.
Covers archive operations, deployment, outage, and monitoring topics.

Case-Study Lessons

Each case page is original and uses the same rubric: requirements, estimates, API/data model, linearized design, deep dives, failures, and trade-offs. The source column is a coverage pointer, not a prescription to copy.

Phase 1 - Core distributed building blocks

No.LessonSourceDesign focus
C01Design a rate limiterVol. 1 Ch. 4Token bucket, sliding windows, shared counters, edge placement, abuse protection.
C02Design consistent hashingVol. 1 Ch. 5Rings, virtual nodes, remapping cost, hot shards, cache/database ownership.
C03Design a key-value storeVol. 1 Ch. 6Partitioning, replication, quorum reads/writes, compaction, failure recovery.
C04Design a distributed unique ID generatorVol. 1 Ch. 7, archiveSnowflake-style IDs, monotonicity, clock skew, region bits, collision budgets.
C05Design a URL shortenerVol. 1 Ch. 8Read-heavy routing, ID allocation, redirects, analytics, abuse, cache hit rate.

Phase 2 - Search, feeds, communication, and collaboration

No.LessonSourceDesign focus
C06Design a web crawlerVol. 1 Ch. 9, archiveFrontier scheduling, politeness, duplicate detection, robots rules, content storage.
C07Design a notification systemVol. 1 Ch. 10, archiveFanout, device tokens, templates, preferences, retry, dedupe, channel priority.
C08Design a news feedVol. 1 Ch. 11Fanout-on-write vs fanout-on-read, celebrity users, ranking, freshness, storage.
C09Design a chat systemVol. 1 Ch. 12WebSockets, message ordering, online presence, offline sync, multi-device state.
C10Design search autocompleteVol. 1 Ch. 13Trie/FST style serving, prefix aggregation, personalization, updates, latency.
C11Design Twitter-style timelinesArchiveHybrid fanout, social graph reads, ranking, backfill, cache invalidation.
C12Design Google Docs-style collaborationArchiveOperational transform/CRDT choices, presence, conflict handling, document storage.
C13Design Gmail or a distributed email serviceVol. 2 Ch. 8, archiveSMTP flow, inbox indexing, spam pipeline, delivery retry, search and attachments.

Phase 3 - Media and storage products

No.LessonSourceDesign focus
C14Design YouTubeVol. 1 Ch. 14Upload, transcoding, metadata, CDN, recommendations boundary, hot video traffic.
C15Design Google DriveVol. 1 Ch. 15Large file upload, chunking, sync, metadata, conflict resolution, sharing.
C16Design S3-like object storageVol. 2 Ch. 9, archiveObject metadata, placement, replication, erasure coding, durability math.
C17Design large file upload and servingArchiveMultipart upload, resumability, checksums, CDN, object lifecycle policy.
C18Block, file, and object storage primerArchiveStorage interface trade-offs and how they drive product design choices.

Phase 4 - Geo, maps, and realtime location

No.LessonSourceDesign focus
C19Design a proximity serviceVol. 2 Ch. 1, archiveGeohash, quadtrees, nearby search, cache by cell, privacy and freshness.
C20Design nearby friendsVol. 2 Ch. 2Location streams, pub/sub, friend graph filtering, online state, battery trade-offs.
C21Design Google MapsVol. 2 Ch. 3, archiveMap tiles, routing, traffic updates, storage, rendering, offline/cache behavior.
C22Geospatial indexes and quadtreesArchiveGrid, geohash, quadtree, S2-style cells, precision vs fanout.

Phase 5 - Data infrastructure and observability

No.LessonSourceDesign focus
C23Design a distributed message queueVol. 2 Ch. 4, archiveTopics, partitions, consumer groups, ordering, durability, backpressure.
C24Design metrics monitoring and alertingVol. 2 Ch. 5, archiveIngestion, time-series storage, rollups, alert evaluation, cardinality control.
C25Design ad click event aggregationVol. 2 Ch. 6Event pipelines, dedupe, late data, batch vs stream, exactly-once illusions.
C26Why Kafka is fast and when to use itArchiveAppend logs, batching, zero-copy, page cache, partition parallelism.
C27At-most, at-least, and effectively-once deliveryArchiveIdempotency, transactions, outbox, consumer offsets, replay strategy.
C28Debugging CPU, memory, and IO incidentsArchiveSymptom-first diagnosis, telemetry, saturation, deployment rollback.

Phase 6 - Marketplaces, reservations, and burst traffic

No.LessonSourceDesign focus
C29Design a hotel reservation systemVol. 2 Ch. 7, archiveInventory, booking holds, overbooking, payment handoff, consistency boundaries.
C30Design a flash sale systemArchiveQueue gating, stock counters, fairness, cache pre-warm, overload control.
C31Design a realtime gaming leaderboardVol. 2 Ch. 10Sorted sets, partitioning, top-k, season resets, cheat/fraud hooks.

Phase 7 - Payments, wallets, and financial systems

No.LessonSourceDesign focus
C32Design a payment systemVol. 2 Ch. 11, archivePayment intent, ledger, idempotency, retry, PSP integration, reconciliation.
C33Design a digital walletVol. 2 Ch. 12Ledger model, balance reads, double-entry accounting, holds, auditability.
C34Money movement and reconciliationArchiveSettlement, posting, mismatch detection, retry, compensating correction.
C35Avoid double chargesArchiveIdempotency keys, outbox, state machine, duplicate webhook handling.
C36Payment security, SWIFT, and foreign exchangeArchiveThreat model, rails, FX quote lifecycle, compliance and audit constraints.

Phase 8 - Trading systems

No.LessonSourceDesign focus
C37Design a stock exchangeVol. 2 Ch. 13, archiveOrder book, matching engine, sequencing, market data, persistence, risk checks.
C38Microsecond-latency exchange architectureArchiveLatency budget, colocated components, single-writer design, recovery logs.
C39Match buy and sell ordersArchivePrice-time priority, order types, deterministic replay, correctness before scale.

Phase 9 - Web, security, and cloud primers

No.LessonSourceDesign focus
C40Secure API access, SSO, passwords, and HTTPSArchiveAuthn/authz, OAuth/OIDC shape, password hashing, TLS termination, API signing.
C41DNS, HTTP, browser request lifecycle, and QUICArchiveName resolution, connection setup, protocol evolution, page-load bottlenecks.
C42Microservices, containers, deployment, and LambdaArchiveRuntime boundaries, rollout strategy, serverless execution, operational trade-offs.
C43IaaS, PaaS, SaaS, and cloud choiceArchiveResponsibility boundaries, managed services, lock-in, cost and control.
C44Design an AI coding engineArchiveBridge to ML system design: retrieval, sandboxing, tool calls, evaluation, serving.

Publishing Order

WaveShip firstWhy
1C01-C05These are reusable primitives that appear inside many later cases.
2C06-C18Classic social, search, communication, media, and storage prompts. They make the track immediately useful for interviews.
3C19-C28Advanced distributed dataflow: geo, queues, metrics, aggregation, and operations.
4C29-C39High-correctness domains: reservations, payments, wallets, and trading.
5C40-C44Primer lessons that fill conceptual gaps and cross-link to security, cloud, and ML systems.
Content rule
The lessons should not be book notes. Use the PDFs to choose coverage, then write each lesson as an original design exercise with calculations, trade-offs, failure modes, and links back to the 19 foundation lessons.