Skip to main content
Code
Peet
Explore
Problems
Learn
Practice
Certifications
Quiz
Pricing
More
⌘K
Login
Sign Up
System Design Practice
Design distributed systems end to end on a whiteboard — graded, interview-style.
Interview Question
Difficulty
Questions
Lesson
Guided Practice
Design a URL Shortener
Design a link shortener: hand out short codes that never collide, resolve them twelve thousand times a second, and count the clicks without slowing the redirect down. You draw and explain; you get immediate, specific feedback on your design.
EASY
12
Read
Open
Design Google Calendar
Design a calendar: store a meeting that repeats forever without writing a row for it, keep a 9am standing call at 9am when the clocks change, let one occurrence disagree with its series, and fire every reminder in the world on the minute. You draw and explain; you get immediate, specific feedback on your design.
MEDIUM
12
Read
Open
Design LeetCode
Design a coding-judge platform: execute programs written by strangers on your own hardware without letting them touch anything, return a verdict in seconds, and stay fair when ten thousand contestants submit in the same minute. You draw and explain; you get immediate, specific feedback on your design.
MEDIUM
13
Read
Open
Design Twitter
Design a social timeline: deliver posts to hundreds of millions of followers within seconds, and assemble a fresh feed 600,000 times a second — deciding whether that work happens when the post is written or when the feed is read. You draw and explain; you get immediate, specific feedback on your design.
MEDIUM
12
Read
Open
Design a Typeahead / Autocomplete System
Design a typeahead system: return ranked completions for a prefix as someone types, learned and refreshed from real query traffic — then find out that the one thing that makes the whole structure fast, the answer being identical for every user, is exactly what personalization, trending freshness, and privacy each threaten to break. You draw and explain; you get immediate, specific feedback on your design.
MEDIUM
15
Read
Open
Design a Webhook Delivery Service
Design outbound webhooks: deliver millions of events a day to two hundred thousand endpoints you do not control, keep retrying the ones that are down without finishing them off when they recover, and never let one customer's broken server slow anyone else's. You draw and explain; you get immediate, specific feedback on your design.
MEDIUM
13
Read
Open
Design Dropbox
Design a file sync service: move fifty gigabyte files without them ever touching your servers, store the same content once no matter how many people upload it, send only the bytes that changed, and settle it when two offline devices both edited the same file. You draw and explain; you get immediate, specific feedback on your design.
HARD
12
Read
Open
Design Google Docs
Design a collaborative editor: let several people type into the same sentence at the same moment, keep every keystroke instant on the typist's own screen, and have everyone end at identical text with nobody's work quietly thrown away. You draw and explain; you get immediate, specific feedback on your design.
HARD
12
Read
Open
Design Google Maps
Design Google Maps: search, render tiles across every zoom level, and compute a route across a billion-edge road graph — then keep that route's ETA honest as traffic changes every few seconds, which is a fundamentally different problem than computing the route in the first place. You draw and explain; you get immediate, specific feedback on your design.
HARD
19
Read
Open
Design Pastebin
Design a pastebin: store arbitrary text behind an unguessable short URL, serve it fast with your own servers out of the read path entirely, and answer the two questions almost every write-up on this problem gets wrong — is your delete secret actually different from your read URL, and is 'unguessable' actually true, or just a big number. You draw and explain; you get immediate, specific feedback on your design.
HARD
18
Read
Open
Design Ticketmaster
Design a ticket booking site: search events, view seats in real time, and book under extreme on-sale spikes — with zero double-bookings. You draw and explain; you get immediate, specific feedback on your design.
HARD
13
Read
Open
Design Tinder
Design a location-based matching platform: discover nearby candidates, swipe, detect a mutual match, and open a chat — then discover that the write path dwarfs the read path, that ranking one side of a two-sided market quietly breaks the market, and that the one path with real-world consequences has to fail in the opposite direction from everything around it. You draw and explain; you get immediate, specific feedback on your design.
HARD
19
Read
Open
Design Top-K
Design a heavy-hitters system: count ten billion events a day across a hundred million items, answer 'the top 100 in the last hour' from state you maintain rather than data you scan, and decide how wrong that answer is allowed to be. You draw and explain; you get immediate, specific feedback on your design.
HARD
12
Read
Open
Design Uber
Design a ride-hailing service: find the nearest drivers among two million moving cars, run an offer that a driver can ignore, and absorb half a million position reports a second that are worthless the moment after they arrive. You draw and explain; you get immediate, specific feedback on your design.
HARD
12
Read
Open
Design Yelp
Design Yelp: search nearby businesses by location and category, browse and submit reviews, and let business owners manage their own listings — then find out that a fair rating, a fraud-resistant pipeline, and an honest search ranking are each harder than they look once real incentives get involved. You draw and explain; you get immediate, specific feedback on your design.
HARD
17
Read
Open
Design YouTube
Design a video platform: turn one upload into hours of transcoding work that has to finish in minutes, then serve the result to forty thousand people a second from machines you do not own — and let every player pick its own quality as the signal changes. You draw and explain; you get immediate, specific feedback on your design.
HARD
12
Read
Open
Design a Chat App
Design a messaging app: hold tens of millions of live connections, push a message to whichever machine the recipient is attached to, and never lose one — even though most recipients are offline when it is sent. You draw and explain; you get immediate, specific feedback on your design.
HARD
12
Read
Open
Design a Comment System
Design a comment system: threaded replies, per-user voting, and two genuinely different pagination problems hiding under one 'list comments' requirement — recency, which is easy, and popularity, where the sort key itself moves while someone is mid-scroll. You draw and explain; you get immediate, specific feedback on your design.
HARD
17
Read
Open
Design a Payment System
Design a payment platform: charge a customer's card for a merchant, track every state change durably, refund and reconcile and pay out — then discover that the money does not move in your database, it moves at a network that can go silent mid-request, so your records are a claim about someone else's state and the real design is how you hold, resolve, and price the disagreement. You draw and explain; you get immediate, specific feedback on your design.
HARD
17
Read
Open
Design a Rate Limiter
Design a distributed rate limiter: enforce a shared limit across a fleet of stateless servers, layer several rules onto one request, and find out that a Lua script being atomic within one key doesn't make your admission decision atomic at all once it spans more than one. You draw and explain; you get immediate, specific feedback on your design.
HARD
17
Read
Open
Design a Realtime Monitoring & Alerting System
Design the system that watches every other system: ingest metrics from a huge fleet, store them as compressed time series, serve dashboards, evaluate alert rules, and wake the right human — then discover that its capacity is set by whoever adds a label in a pull request, that every protective limit sheds exactly the signal you need, and that it has to work while the thing it monitors is broken. You draw and explain; you get immediate, specific feedback on your design.
HARD
23
Read
Open