← All posts
GuidesAugust 20, 20267 min read

System Design Interview Questions: The Practice List

This is a curated list of the system design questions that actually come up in interviews, grouped by difficulty, with a one-line note on what each one tests — plus links to full walkthroughs where we have them. Use it to plan your practice: pick a question, work it end to end out loud, then move on.

A note on how to use these: don't memorize solutions. The same handful of concepts (caching, partitioning, fan-out, consistency, geo-indexing) recur across problems. Practicing a spread of these questions teaches the concepts, which is what transfers to whatever you're actually asked.

Warm-up / easier

  • URL shortener — ID generation, read-heavy caching, storage sizing. The classic starter. → Full walkthrough
  • Pastebin — blob storage, key generation, expiry/TTL. A close cousin of the URL shortener.
  • Unique ID generator — distributed, collision-free IDs (Snowflake-style), clock/ordering trade-offs.

Classic mid-level

  • Twitter / news feed — fan-out on write vs. read, the celebrity problem, feed storage. → Full walkthrough
  • Chat system (WhatsApp) — WebSocket delivery, offline queue, idempotency, presence. → Full walkthrough
  • Rate limiter — token bucket vs. sliding window, shared state, atomicity, fail-open/closed. → Full walkthrough
  • Web crawler — the URL frontier, politeness, dedup at scale, recrawl scheduling.
  • Notification service — multi-channel fan-out (push/email/SMS), preferences, retries.
  • Typeahead / autocomplete — prefix indexing (trie), ranking by popularity, tight latency budget.

Harder / senior

  • YouTube / video streaming — upload + transcoding pipeline, adaptive bitrate (HLS/DASH), CDN delivery, async view counting. → Full walkthrough
  • Uber / ride-matching — geospatial indexing (geohash/S2/H3), high-throughput location updates, matching + driver reservation. → Full walkthrough
  • Dropbox / file sync — chunking, content-addressed dedup, delta sync, conflict handling.
  • Google Docs / collaborative editor — OT vs. CRDT, real-time transport, presence, offline merge.
  • Distributed cache — consistent hashing, eviction, replication, hot-key mitigation.
  • Payment system — idempotency, a double-entry ledger, exactly-once effects, reconciliation.
  • Ticketmaster — inventory locking, high-contention reservations, fairness under a flash crowd.

Mobile system design

Mobile rounds test the client, not the backend — offline behavior, memory, battery, and process lifecycle. See our guides for iOS and Android. Common prompts:

  • Image loading & caching library (Kingfisher / Coil / Glide-style) — two-tier cache, memory pressure, cancellation.
  • A feed client — pagination, smooth scrolling, offline, image memory.
  • A 1:1 chat client — real-time delivery, offline send queue, media upload.
  • Offline-first notes — local source of truth, sync, conflict resolution.

How to practice this list

For each question, run the same loop: clarify requirements, do a quick estimate, sketch a high-level design, then go deep on one area — out loud, as if someone's probing you. Reading a solution builds recognition; producing one under questioning builds the skill that's actually tested. Start with the prep framework and keep the cheat sheet handy.


The hard part is doing these out loud, under pressure. On Whitepad, many of the problems above are preset — a senior AI interviewer runs them by voice, watches your whiteboard, and scores you like the real thing. Pick one from the list and practice it for real; your first mock is free.

Practice this out loud

Reading is the easy part. Sit across from a senior AI interviewer that talks, watches your whiteboard, and scores you like the real thing — your first mock is free.

Start a free mock →