System design interview questions
83 system design interview questions asked at Google, Meta, Amazon, Uber, Stripe and others, each with a full answer: requirements, back-of-envelope estimates, a high-level design, and 475 deep dives with the follow-up questions interviewers ask. Read the answer, watch a strong candidate give it turn by turn, then sit the same question with an AI interviewer.
Start with these five
If there is time for only five, practise these. Each teaches a pattern the others reuse.
- Design a URL Shortener: the warm-up every loop assumes you can do: a read-heavy service, ID generation, caching and a redirect at the edge.
- Design a News Feed: fan-out on write against fan-out on read, and the celebrity problem that breaks the simple answer.
- Design WhatsApp: persistent connections, delivery receipts and offline delivery: the real-time pattern behind every chat and presence question.
- Design Uber: geospatial indexing and matching supply to demand while both are moving.
- Design Ticketmaster: contention for scarce inventory: holds, locking, queues and a thundering herd at on-sale time.
Social feeds, chat and notifications
What these test: Fan-out on write against fan-out on read, real-time delivery over persistent connections, one process per community server fanning out to 100,000 members online at once, ranking, counters, two-hop queries over a sharded social graph, grouping articles from thousands of publishers into ranked stories, recommending from random walks over billions of saves, checking billions of posts a day for policy violations before they spread, and what happens when one account has 100 million followers.
The home timeline of Twitter, Instagram or Facebook: posts from people you follow, ranked, fresh, and fast for hundreds of millions of users.
Collect 2 M articles a day from 50,000 publishers, group them into stories, rank them per edition, and serve 300 M daily readers.
LinkedIn’s connections for 1 B members: invitations, follows, a 1st/2nd/3rd badge on 200 k profile views a second, and daily People You May Know.
The “recommended for you” video home feed: 50 personalised videos picked from billions for 500 M daily users in under 200 ms.
- Design Instagramhard
Upload photos, publish posts and stories, and load a feed of them for 500 M daily users, with every image served from a CDN in milliseconds.
- Design Pinteresthard
Save images to boards, browse a personalised grid and search by picture: 100 M daily users, 5 B distinct images behind 100 B saves.
- Design Redditmedium
Serve communities of posts with deeply nested comment threads, take tens of thousands of votes a second, rank by hot and best, and keep a 50,000-comment thread fast while it is still growing.
Keyword search over a billion users’ posts, searchable seconds after posting, sorted by recency or likes, hiding every post the searcher may not see.
Catch spam, nudity, hate and illegal media in 4 billion daily posts and comments before they spread, with 15,000 reviewers for the hard cases.
- Design Tindermedium
Show each person a deck of nearby profiles that fit both people’s preferences, never repeat one, take 2 billion swipes a day, and announce a match the instant two people like each other.
- Design Slackhard
Real-time team messaging: channels, DMs, presence, history and search for millions of concurrent users.
- Design Discordhard
Community chat and voice: servers with a million members, years of history, roles and presence, for 20 M concurrent users.
- Design WhatsApphard
Deliver 50 billion end-to-end encrypted messages a day to phones that are often offline, with sent, delivered and read ticks, and a server that cannot read any of it.
Comments and reactions on live video that reach viewers within two seconds, at 50 M concurrent viewers and 5 M on one stream.
Deliver push, email, SMS and in-app notifications to hundreds of millions of users: the right channel, once, on time, and never at 3 a.m.
- Design Gmailhard
Receive, filter, store and search email for 1.5 billion users: 200 billion inbound messages a day, mostly spam, kept for 20 years.
Maps, location and marketplaces
What these test: Geospatial indexes (geohash, quadtree, H3), matching supply to demand in real time, location updates at scale, live location shared with friends through per-user pub/sub channels, routing, and holding inventory that two people want at once.
- Design Uberhard
Match riders with nearby drivers in seconds, track trips live, and price them, for millions of concurrent users worldwide.
- Design DoorDashhard
Take a food order, get a restaurant to cook it and a courier to arrive just as it is ready, and keep three parties in sync across millions of orders a day.
Show each user which friends are within 5 miles, refreshed every 30 s, for 10 M concurrent users, without leaking anyone’s location.
Map tiles, place search, turn-by-turn routing with live traffic, and ETAs for a billion users.
- Design Stravahard
Record runs and rides offline, process each upload into a map, stats and segment efforts, and rank them for 100 M athletes.
- Design Yelpmedium
Find the best places near you, filtered by what is open now, from 200 M businesses, in under 200 ms, and keep ratings honest as reviews arrive.
- Design Airbnbhard
Search 7 M listings by place, dates and price, book a stay without ever selling the same night twice, and keep calendars in sync with hosts’ other platforms.
Reported at Airbnb, Amazon, Booking.com, Expedia
Match posted projects with qualified, available contractors across a 500 k-person talent pool, and learn from who actually gets hired.
Video, music, files and collaboration
What these test: Upload and transcoding pipelines, a swipe feed that prefetches the next clips and re-ranks every page, live low-latency delivery, CDNs and adaptive bitrate, real-time media through forwarding servers, prefetching and licensing at play time, chunking and deduplication, text pastes that expire on time and burn after one read, peer-to-peer distribution under bandwidth caps, sync across devices, code hosting with a replica vote on every push and cached packs for CI fetch storms, and resolving concurrent edits with OT, CRDTs or a server-ordered document.
- Design YouTubehard
Upload, transcode, and stream video to a billion viewers: a processing pipeline on one side, a CDN problem on the other.
- Design TikTokhard
A full-screen feed of short videos for 1 B daily users, where the next clip starts instantly and every swipe reshapes what comes next.
- Design Twitchhard
Ingest 100 k live broadcasts, transcode them in real time, and deliver each about three seconds behind live, to three viewers or 500 k.
- Design Netflixhard
Stream a fixed catalog to 40 M people at once, 200 Tbps at peak, starting in under two seconds, from cache servers placed inside the viewers’ own internet providers.
- Design Spotifyhard
Stream 100 M tracks to 600 M listeners with sound in 200 ms, offline downloads, regional licensing, and every play counted for royalties.
- Design Zoomhard
Real-time audio, video and screen share for 2 to 1,000 people per meeting, 300 M participants a day, under 150 ms mouth to ear.
- Design Dropboxhard
Keep a folder identical on every device: upload huge files in resumable chunks, push only what changed, and reconcile two machines that both edited the same file offline.
- Design Pastebinmedium
Store and serve 10 M text pastes a day behind unguessable links: expiry that is never late, burn after reading, and abuse takedown.
Get a 200 GB checkpoint from one origin onto 10,000 machines in five data centres within minutes, under capped links, verifying every byte.
- Design GitHubhard
Host 400 M git repositories on replicated file servers, serve 100 k fetches a second, and run pull requests, forks and webhooks on top.
Real-time collaborative editing: many cursors in one document, every keystroke converging to the same text, offline edits merged on reconnect.
- Design Figmahard
500 k design files open at once, some with 200 people: objects converge live, cursors stream, and 300 MB files open in seconds.
Payments, bookings and trading
What these test: Correctness under retries: idempotency keys, double-entry ledgers, wallet balances moved between shards and funded over rails that settle in days, exactly-once effects, seat and inventory locking under a thundering herd, booking seats that live in airlines’ systems behind slow, metered APIs, bids ordered per auction against a moving deadline, ad auctions that spend budgets across thousands of servers without overspending, scoring every card payment for fraud inside a 100 ms budget and learning from chargebacks months later, deterministic low-latency matching, and a retail brokerage that streams conflated prices to millions of phones and routes orders over FIX without ever sending one twice.
Accept card payments for an e-commerce platform, move money correctly exactly once, and be able to prove it.
- Design Venmohard
80 M users paying friends instantly: 15 M transfers a day on a sharded double-entry ledger, funded and cashed out over slow bank rails.
Allow, block or challenge 10,000 card payments a second in under 100 ms, then learn from chargebacks that arrive months later.
Sell 60 000 seats in ten minutes to a million people at once: hold a seat while someone pays, never sell it twice, and keep the site up when demand is a hundred times supply.
Run 50 million live eBay-style auctions: order every bid strictly per auction, push the price to watchers live, and close each auction exactly once.
Pick the best of 10 M active ads for 5 M requests a second in under 100 ms, within every campaign’s targeting, budget and frequency caps.
Match buy and sell orders in microseconds, in a strict and provable order, never lose a fill, and stay correct when the matching engine dies mid-trade.
- Design Robinhoodhard
A retail brokerage: live prices to 3 M phones, 20 k orders a second at the open, every share and cent exact.
- Design Amazonhard
A 500 M-product marketplace: product pages at 100 k views/s, carts that never lose an item, and Prime Day checkout without overselling.
Answer 50 M searches a day from 20 slow, metered suppliers through a fare cache, then book seats you do not own, exactly once.
Reported at Expedia, Booking.com, Google, Amazon
Infrastructure building blocks
What these test: Load balancing at L4 and L7, authentication and quotas at the API edge, partitioning, replication and quorums, consensus and leases, erasure coding and object storage, nearest-neighbour indexes with quantisation and filters over immutable segments, caching and eviction, anycast routing and global purge, ID generation, append-only logs, stream processing with windows, experiment assignment by hashing with the statistics that make A/B results trustworthy, and time-series and log storage: the parts every other design is made of.
- Design a URL Shortenermedium
bit.ly at scale: turn long URLs into short codes, redirect in milliseconds from anywhere, count the clicks.
- Design a Rate Limitermedium
A distributed service that decides, in under a millisecond, whether a request from a client is allowed under its quota.
Spread 5 M requests a second over 50 k backends, terminate TLS, route by host and path, survive losing any balancer or data centre.
One front door for public and partner APIs: authenticate, limit and route 1 M requests a second to 300 services, adding under 10 ms.
A Redis-like cache as a service: hundreds of nodes, terabytes of memory, sub-millisecond gets, and a cluster that survives losing a machine mid-request.
- Design a CDNhard
A multi-tenant CDN for 30 M customer domains: 300 PoPs, 50 M requests a second served mostly from cache, and global purges in seconds.
Reported at Cloudflare, Akamai, Amazon, Google
A Dynamo-style store that keeps 10 billion keys on dozens of machines, survives node and rack failures, and lets each caller trade consistency for latency with N, R and W.
An S3-like store for objects from bytes to terabytes, with eleven nines of durability and strong read-after-write consistency at exabyte scale.
A managed vector database: 10,000 tenants, 20 B vectors, filtered top-k in under 50 ms at 0.95 recall, and writes searchable in seconds.
Reported at OpenAI, Anthropic, Databricks, Snowflake
A Chubby-style lock service for 50 k processes: leases, leader election, fencing tokens and watched config, never letting two holders act at once.
A Kafka-style log that ingests a million messages a second, keeps them in order per key, replicates them so no acknowledged message is lost, and lets many consumer groups read at their own pace.
Hand out a million 64-bit ids a second across many hosts and regions, never twice, roughly in time order, with no central bottleneck and no trust in the wall clock.
Suggest the top ten completions after every keystroke, in under fifty milliseconds, from what the world searched for in the last hour, without suggesting anything that gets you in the newspaper.
Fetch billions of pages a month politely, discover new links, skip duplicates, and keep the copy fresh without getting the crawler banned.
Track 500 M products' price history and alert 50 M users when a price drops below their target, in time to buy.
Search 50 billion pages at 100 k queries a second: the ten best results with snippets in under 200 ms, and news within minutes.
Ingest 10 million samples a second from 100,000 hosts, keep them queryable for a year at shrinking resolution, draw dashboards in under a second, and page the right person within a minute.
Collect 10 million log lines a second from 100,000 hosts, make them searchable within seconds, stream them live, and keep a year affordably.
Count a million ad clicks a second, show advertisers a dashboard that is seconds behind, stop a campaign the moment its budget runs out, and be exactly right when the invoice is cut.
Rank the top 1,000 videos by views over the last minute, hour, day and all time, from a million views a second.
Run 500 experiments at once on 300 M users: sticky variants in microseconds, exposure logging, and confidence intervals teams can trust.
Workflows and scheduling
What these test: Durable state machines, timers and leases, retries without duplicate side effects, DAG scheduling and backfills, recurring events across time zones, running other people’s workloads fairly in a multi-tenant system, delivering webhooks to a million customer endpoints for days without one slow endpoint delaying the rest, rolling a release out to a fleet in stages with automatic rollback, and placing 300,000 containers on 10,000 machines from desired state that controllers keep true through machine failures.
Run millions of cron jobs and one-off tasks on time across a fleet, exactly once each, and keep going when a worker dies halfway through one.
A managed workflow engine that runs 200 M state-machine executions a day, some lasting a year, applying every transition exactly once.
Schedule and run twenty thousand data pipelines as dependency graphs, each run tied to a slice of time, so a failed night can be retried or a year backfilled safely.
Reported at Airbnb, Databricks, Snowflake, Lyft
- Design Zapierhard
Connect thousands of third-party apps: watch ten million triggers by polling or webhook, and run each new event through multi-step workflows on someone else’s APIs.
Reported at Zapier, Salesforce, HubSpot, Atlassian
Deliver 3 billion signed webhooks a day to a million customer endpoints, retrying for three days, without one slow endpoint delaying anyone else.
Build each merge once into a signed artifact, roll it out in stages to 50,000 hosts in 10 regions, and roll back automatically on regression.
Place 300,000 containers on 10,000 machines from declared desired state, keep them running through failures, and give every service a stable address.
Reported at Google, Microsoft, Amazon, Databricks
Recurring events, invitations, free/busy and reminders for 500 million users, correct in every time zone and synced to every device within seconds.
AI serving, games and contests
What these test: GPU batching and KV caches for LLM serving, resumable streams and tool loops for a chat assistant, permission-aware hybrid retrieval for answering over company documents, a keystroke-sized latency budget with cancellation and prefix reuse for code completion, latency-bound matchmaking, authoritative game servers with lag compensation and warm fleets, real-time ranking with sorted sets, and running untrusted code safely at contest scale.
Serve a large language model behind an API: queue the requests, batch them onto scarce GPUs, stream tokens back, and keep every accelerator busy without blowing the latency budget.
- Design ChatGPThard
An AI chat assistant for 100 M weekly users whose streamed answers survive dropped connections, call tools mid-answer, and share scarce GPUs across tiers.
An assistant that answers employees’ questions from their company’s documents, with citations, only from what each user may open, minutes after edits.
Inline AI code suggestions for 10 M developers, shown within 300 ms of a pause in typing, when most requests are never used.
Group online game players into fair, low-latency matches within seconds, at millions of concurrent players.
Reported at Riot Games, Epic Games, Electronic Arts, Activision
Battle royale for 3 M concurrent players: 100-player matches on authoritative 30 Hz servers, fair hits, warm fleets and launch-day surges.
Reported at Epic Games, Riot Games, Activision, Electronic Arts
Rank 300 M players of a mobile game in real time: the global top 100, your exact rank among millions, your friends, and daily, weekly and season boards that reset on time.
Reported at Amazon, Meta, Roblox, Electronic Arts
- Design LeetCodehard
Run untrusted code from strangers against hidden tests in a dozen languages, return a fair verdict in seconds, and survive 50,000 people submitting in the last minutes of a contest.
Questions by company
The companies with the most questions reported in public interview guides and candidate reports:
- Amazon (62): URL Shortener, Slack, Payment System, YouTube, Uber
- Google (60): URL Shortener, Slack, YouTube, Google Maps, Google Docs
- Meta (51): Slack, News Feed, YouTube, Notification System, LLM Inference Service
- Microsoft (45): URL Shortener, Slack, YouTube, Notification System, Google Docs
- Uber (28): Payment System, Google Maps, Uber, Notification System, Distributed Cache
- LinkedIn (14): News Feed, Notification System, Rate Limiter, Search Autocomplete, Ad Click Aggregator
How to answer any of them
Every question here follows the same shape, and so should your answer: requirements, numbers, a design, then depth. The interview framework guide covers the structure minute by minute, back-of-envelope estimation covers the numbers, and the four-week study plan puts the questions in an order that builds on itself.
Questions people ask
What are the most common system design interview questions?
The questions asked most often are a URL shortener, a news feed (Twitter), a chat system (WhatsApp or Slack), ride sharing (Uber), video streaming (YouTube or Netflix), a rate limiter, a distributed cache, a web crawler, search autocomplete, a notification system, a payment system and Ticketmaster. They recur because each forces one core trade-off: caching a read-heavy path, fan-out, real-time delivery, geospatial matching, moving money exactly once, or contention for scarce inventory.
How many system design questions should I practice?
Eight to twelve questions that cover different patterns is enough for most interview loops. One feed, one chat system, one geospatial matcher, one payment flow, one rate limiter and one storage system teach more than thirty variations of the same feed. Practise each out loud under a 45-minute clock until you reach the deep dives with about 15 minutes left.
How long is a system design interview?
Usually 45 to 60 minutes. A 45-minute round spends about 8 minutes on functional and non-functional requirements, 5 on back-of-envelope estimates, 16 on the high-level design and 16 on deep dives into the hardest parts. Senior and staff rounds weigh the deep dives most, because that is where the trade-offs and failure modes come out.
How do you answer a system design interview question?
Use the same five steps every time: clarify the functional requirements, pin down the non-functional ones with numbers, estimate the load and storage, draw a high-level design and walk the main user flows through it, then go deep on the two or three hardest parts. State the trade-off behind every choice; interviewers grade the reasoning more than the boxes.
Which system design questions do Google, Meta and Amazon ask?
Questions reported at Google include URL Shortener, Slack, YouTube, Google Maps. At Meta: Slack, News Feed, YouTube, Notification System. At Amazon: URL Shortener, Slack, Payment System, YouTube. Each company also asks variations on these, so practising the underlying patterns matters more than memorising one company's list.
What system design questions do OpenAI and Anthropic ask?
Questions reported at OpenAI include Slack, LLM Inference Service, ChatGPT, Web Crawler, Large File Distribution System. At Anthropic: Slack, News Feed, LLM Inference Service, ChatGPT, Distributed Cache. Both lean toward the infrastructure behind AI products rather than consumer apps: queueing and batching work onto scarce, expensive GPUs, streaming results back, rate limits and quotas, and what degrades first under overload. Most of it reduces to ordinary distributed systems, so the classic patterns still carry the round.
Are these system design interview questions free?
Yes. Every question’s full written answer is free to read: requirements, estimates, components, user flows and deep dives with the follow-up questions interviewers ask. Watching a strong candidate answer it turn by turn is free too, with a Google sign-in for the deep dives.