System Design
12h of practice16 problems
Nobody designs Twitter in forty-five minutes, and the interviewer knows that. What is being measured is whether you narrow an expensive, ambiguous problem before you build, whether you can say what you traded away, and whether you notice the part that will break.
Every problem here gives you the requirements to agree, the numbers to run, and a worked design with the follow-ups an interviewer would actually ask.
The round · You are given a product in one sentence and asked to design it. Expect five minutes on requirements, ten on a first design, and then the half that actually counts: the interviewer picks the weakest part and pushes.
Difficulty
Topic
16 problems
Easy
2- Design a URL shortenerThe classic warm-up, with a uniqueness problem that is harder than it looks.Key generation · Read scaling · Caching · Redirects35 min
- Design a rate limiterFour algorithms, one of which is right, and a counter that lives in the wrong place.Algorithms · Distributed counters · Redis · Failure modes35 min
Medium
6- Design a news feedFan-out on write versus on read, and the celebrity who breaks both.Fan-out · Hot keys · Caching · Pagination45 min
- Design a chat systemStateful servers, a message that must not be lost, and ordering without a global clock.WebSockets · Delivery guarantees · Ordering · Presence45 min
- Design a web crawlerA queue that must not grow forever, and a politeness constraint that shapes the whole design.Queues · Deduplication · Politeness · Bloom filters45 min
- Design a notification systemThree channels, four providers that fail differently, and a user who must not be spammed twice.Fan-out · Third-party providers · Idempotency · Preferences40 min
- Design a global leaderboardTop-100 is easy. "What is my rank" out of fifty million is the question.Sorted sets · Ranking · Sharding · Approximation40 min
- Design a search typeaheadA 50ms budget, a request per keystroke, and a data structure you precompute.Tries · Caching · Latency · Precomputation40 min
Hard
8- Design a ticket saleSixty thousand seats, two million people, ninety seconds. The queue is the product.Contention · Consistency · Queues · Idempotency45 min
- Design a file sync serviceChunking, deduplication, and sync as a conflict problem rather than a transfer problem.Chunking · Deduplication · Conflict resolution · Large files45 min
- Design a ride-hailing serviceGeospatial indexing, a matching problem, and state that changes every four seconds.Geospatial indexing · Matching · High-frequency writes · Contention50 min
- Design a video platformPetabytes of storage, a transcoding pipeline, and a bandwidth bill that is the architecture.Transcoding · CDN · Object storage · Pipelines45 min
- Design an ad click aggregatorA million events a second, money attached to the count, and events that arrive an hour late.Stream processing · Windowing · Exactly-once · Late data45 min
- Design a payment systemMoney, a third party that times out ambiguously, and a ledger that must balance forever.Idempotency · Sagas · Ledgers · Reconciliation50 min
- Design a distributed job schedulerAt-least-once delivery, a worker that dies mid-job, and a cron that must not fire twice.Queues · Leases · Exactly-once · Fairness45 min
- Design an object storage serviceEleven nines of durability, and the arithmetic showing replication alone cannot pay for it.Durability · Erasure coding · Metadata · Consistency50 min