System Design, done properly

Deep architecture.
Real tradeoffs.
Production scale.

The open-source system design library engineers actually read before interviews. 60 canonical problems, 110 concept references, real post-mortems, practice exercises, and self-scored quizzes — all free, all opinionated, all in one place.

Start here

What brings you in?

Three paths through the material. Pick the one that matches your goal right now.

Everything here

Five ways to learn

Your progress

Track what you've read

Toggle "mark as read" on any page. State saved locally — no account needed.

All problems

Browse by category

60 of 60 problems

Social & Feed

10 problems
MEDIUM~14 min

News Feed

A social media feed that shows posts from people you follow, ranked algorithmically, updated in near-real-time. The core challenge: one celebrity post needs to reach 10 million followers instantly — without the system me

⚡ Core: Fan-out Problem500M DAURead-heavy 15:1Eventual Consistency
#016HARD~13 min

Reddit-Style Comments

Design a nested, threaded comment system with voting, ranking algorithms, and tree pagination — where the hardest problem isn't storing data, it's retrieving a sorted, truncated tree in under 200ms.

Tree Data StructureRanking AlgorithmsRead-HeavyCache Strategy
#06HARD~12 min

LinkedIn MutualConnection Search

Design a system that finds shared connections between any two users on a billion-user professional network — in under 50ms, at 100K+ queries per second.

Graph IntersectionBloom FiltersRedisProbabilistic Data Structures
#16HARD~13 min

Recommendation Algorithm

Design the engine behind "Recommended for you" — a system that surfaces personalised content or products for hundreds of millions of users across a catalogue of millions of items, in real time, while continuously learnin

Machine LearningTwo-Stage FunnelEmbeddingsLambda Architecture
#016HARD~14 min

Top-K Leaderboard

Design a real-time ranking system that maintains sorted standings of millions of users, serving both "who's on top?" and "what's my rank?" with sub-50ms latency.

Redis ZSETSkip ListReal-Time RankingScore Packing
~9 min

Instagram

A photo and short-video sharing platform with feeds, stories, reels, and direct messaging serving 2 billion monthly active users. The hard parts: a media upload pipeline handling 95M+ daily uploads with on-the-fly transc

⚡ Core: Media Pipeline + Ranked Feed2B MAU95M uploads/dayRead-heavy 100:1
~8 min

Twitter Trending

Surface the top-10 trending topics — hashtags, phrases, named entities — from the firehose of all tweets, refreshed every few minutes, per geo and per user. The hard parts: approximate top-K over a high-velocity stream w

⚡ Core: Stream Top-K + Novelty + Anti-Spam~6K tweets/sec500M tweets/day400+ geo scopes
~9 min

YouTube Likes Counter

A distributed counter system that handles 10M+ increments per second across 10B+ videos with eventual consistency for display. The hard parts: a sharded counter architecture that absorbs bursty write traffic without hot

Core: Sharded Counters + Dedup10B+ videos~500K likes/sec peak~5s eventual consistency
~15 min

Reddit

1.7 billion monthly visits across millions of subreddit communities. The hard parts: a Hot ranking algorithm that decays old posts and surfaces fresh content without scanning every post on every page load, nested comment

Core: Hot Ranking + Comment Trees + Vote Pipeline1.7B monthly visits100K posts/day2M comments/day
~12 min

Ad Click Aggregator

10 billion clicks per day, counted in real-time for billing and analytics. Every click is money. The hard parts: a streaming aggregation pipeline that groups clicks by campaign, ad, geo, and minute with exactly-once sema

Core: Stream Aggregate + Fraud Filter + OLAP Query~10B clicks/day~115K clicks/sec avg~500K/sec peak

Storage & Data

6 problems
~12 min

Google Drive

A cloud file storage and synchronisation service that lets users upload any file, access it from any device, share it with others, and keep it in sync across all their machines — even after offline edits. The hard part i

⚡ Core: Chunk + Sync500M users7.5 Exabytes~2:1 read/write
#07HARD~10 min

Google Docs / Live Collaborative Editor

Design a real-time collaborative document editor where multiple users type simultaneously and every screen converges to the same result — without locks, without data loss, and within milliseconds.

Real-TimeWebSocketsOperational TransformationCRDTs
HARD~21 min

Distributed Logging Framework

Design a centralized logging system that ingests hundreds of thousands of events per second from thousands of services, stores them durably with compression, and enables full-text search across billions of log lines in s

Write-HeavyAppend-OnlyFull-Text SearchStreaming
~10 min

Dropbox Sync

A two-way file sync engine: every file in a user's "Dropbox" folder should appear identically across all their devices within seconds of any change. The hard parts: a content-addressable block store that deduplicates chu

⚡ Core: Block Dedup + Metadata + Sync Loop~700M usersExabytes of data4 MB blocks
~9 min

Amazon S3

A bucket-and-key object store with read-your-writes consistency, ~11 nines of durability, and exabyte-scale capacity. The hard parts: a key → bytes service that doesn't fall over at millions of requests per second; erasu

⚡ Core: Durability + Hot-Partition Handling11 nines durability100T+ objects~100M req/sec peak
~15 min

Key-Value Store

10 million requests per second, 100 TB of data, single-digit millisecond p99 at any scale. The hard parts: a consistent hash ring that routes every request to the right partition without a central coordinator, an LSM sto

Core: Consistent Hashing + LSM Engine + Quorum Replication~10M req/sec~100 TB dataSingle-digit ms p99

Communication

8 problems
#04~12 min

WhatsApp

A real-time messaging system supporting one-to-one and group chat, delivery receipts, and offline message queuing at 2 billion user scale. The core challenge: maintaining 50 million persistent WebSocket connections while

⚡ Core: WebSockets + Real-time Routing2B Users100B msgs/day50M Concurrent Connections
#09HARD~13 min

Notification System

Design a scalable, multi-channel notification platform that reliably delivers OTPs in 2 seconds and promo blasts to 50 million users — without one starving the other.

Fan-outMulti-ChannelPriority QueuesDelivery Guarantees
#16HARD~14 min

Video Conferencing

Design a real-time video conferencing platform like Zoom or Microsoft Teams — delivering sub-300ms audio/video to millions of concurrent participants across the globe while adapting to wildly varying network conditions.

Real-Time MediaWebRTCSFU ArchitectureEdge Computing
~9 min

Slack / Discord

A real-time messaging platform with channels, DMs, threads, reactions, presence, and file sharing. The hard parts: a persistent WebSocket fleet holding tens of millions of long-lived connections, message fan-out into cha

⚡ Core: WebSockets + Fan-Out + Presence200M MAU (Discord)~4B msgs/dayHuge channels (100k+ members)
~9 min

Gmail

An email service for ~1.8B users handling ~1B incoming emails per day plus outgoing. The hard parts: an SMTP ingress that accepts mail from anyone on the public internet while rejecting terabytes of daily spam; a per-use

⚡ Core: SMTP Ingress + Spam + Search1.8B users~1B emails/day~40% spam rejection
~10 min

Google Calendar

A calendar and scheduling platform handling recurring events, calendar sharing, and free/busy queries for 1.5 billion users across every timezone. The hard parts: an RRULE recurrence engine that expands "every Monday for

Core: RRULE Expansion + Free/Busy1.5B users~500M events/day~10K free/busy QPS
~8 min

Reminder Alert

Schedule a reminder for "Thursday 9am in America/New_York" and have it arrive on the user's phone at exactly that local time — even when DST changes, the user moves timezones, or the delivery channel is flaky. The hard p

⚡ Core: Time Buckets + Timezone + At-Least-Once~100M reminders/dayDST-safeMulti-channel (push/SMS/email)
~13 min

Collaborative Whiteboard

Infinite canvas. Shapes, text, freehand drawing. Multiple users see each other's cursors in real time. Undo/redo, zoom/pan, offline edits that sync when reconnected. Like Miro or FigJam. The hard parts: a CRDT for canvas

Core: CRDT + Spatial Index + Real-Time Cursors + Per-User Undo100K+ canvas objects50+ concurrent usersSub-100ms sync

Media & Streaming

2 problems

Search & Discovery

6 problems
MEDIUM~11 min

Search Autocomplete

A typeahead system that returns ranked suggestions on every keystroke — at sub-100ms latency, for billions of daily searches. The challenge isn't finding matches. It's pre-organizing data so matches are already waiting.

⚡ Core: Trie + Top-K caching5B searches/dayRead-heavy<100ms p99
~11 min

Web Crawler

A system that automatically traverses the web — starting from seed URLs, fetching pages, extracting links, and repeating — to build a searchable index of internet content. Deceptively simple at small scale; one of the ha

⚡ Core: URL Frontier + Deduplication10B pagesWrite-heavyDistributed
MEDIUM~12 min

Yelp / Google Places

A local business discovery platform where users search for nearby restaurants, shops, and services by location, category, and filters. The core challenge is answering "what is near me?" across 100 million listings in und

⚡ Core: Geospatial Indexing50M DAU100M BusinessesRead-heavy
#06HARD~11 min

Google Maps

Design a global mapping platform that renders interactive maps, computes optimal routes in milliseconds, and ingests real-time GPS data from millions of phones to estimate live traffic and ETAs.

GeospatialStreaming PipelineGraph AlgorithmsCDN
~9 min

Search Engine

A web-scale search engine — crawl the public web, build an inverted index, serve queries in under 200 ms with high-quality ranked results. Google handles ~100K queries per second over an index of hundreds of billions of

⚡ Core: Inverted Index + Ranking~100K QPS< 200 ms p99100B+ pages indexed
~13 min

Google News

Crawl 50K+ news sources worldwide, rank by freshness + authority + personalization, and serve a unique feed to each of 1B users. The hard parts: near-duplicate clustering so users see one card per story with "N sources"

Core: Crawl + Cluster + Rank + Personalize1B users100K articles/day200K feed QPS

Infrastructure

12 problems
MEDIUM~14 min

Rate Limiter

A rate limiter controls how frequently a client can make requests to an API — protecting backend services from being overwhelmed by traffic spikes, malicious abuse, or runaway retry loops. The challenge is enforcing limi

⚡ Core: Sliding Window Counter100K RPSLow Latency (<5ms overhead)High Availability
#016HARD~14 min

Distributed Job Scheduler

How do you reliably execute millions of scheduled tasks at precisely the right time across a fleet of unreliable machines, ensuring no job is missed and no job runs twice?

distributed-systemsexactly-onceleader-electionkafka
#017HARD~12 min

Distributed Locking

How do you guarantee that at most one process operates on a shared resource at any time, across machines that can crash, networks that can partition, and clocks that can drift?

consensusfencing-tokensraftmutual-exclusion
#015HARD~11 min

Distributed Priority Queue

Design a horizontally scalable queue that always delivers the highest-priority message first — like a planetary-scale ER triage system where the most critical patients are always treated next, across every hospital in th

distributed-systemspriority-orderingat-least-oncesorted-sets
#016HARD~12 min

Count Unique Active Users

Design a system to count DAU, WAU, and MAU at massive scale — balancing exact accuracy for financial reporting against real-time approximate answers for dashboards, using probabilistic data structures.

HyperLogLogLambda ArchitectureStream ProcessingProbabilistic Counting
~9 min

CDN

A global Content Delivery Network: serve cached copies of customer content from hundreds of edge points-of-presence (PoPs), delivering to users with sub-50ms RTT anywhere on Earth. The hard parts: global routing so reque

⚡ Core: Anycast + Cache Hierarchy + Purge300+ PoPs55M req/sec> 90% cache hit ratio
~8 min

Unique ID Generator

Generate globally unique, k-sortable, compact identifiers at over 1 million IDs per second across N machines with zero coordination. The hard parts: a bit-layout balancing timestamp, machine, and sequence that stays uniq

Core: Snowflake-style Distributed IDs1M+ IDs/sec64-bit / ~11 chars base62Sub-ms latency per ID
~9 min

LeetCode

Users submit code solutions in 15+ languages. The system compiles, runs against hidden test cases with strict time/memory limits, and returns a verdict — all within seconds. The hard parts: sandboxed execution that preve

⚡ Core: Sandbox + Judge Queue + Verdicts10M submissions/day15+ languagesStrict time/mem limits
~13 min

Distributed Cache

An in-memory key-value store serving ~1M ops/sec per node with sub-millisecond latency. The hard parts: hash-slot sharding across a cluster of ~100 nodes so any key routes deterministically, eviction policies (LRU/LFU) t

Core: Hash-Slot Sharding + Eviction + Replication~1M ops/sec per nodeSub-ms p99 reads~100 GB RAM per node
~15 min

Metrics & Monitoring

1M hosts each running an agent that collects CPU, memory, disk, and custom application metrics every 10-15 seconds. That is ~100M data points/sec flowing into your ingest pipeline. The hard parts: a time-series database

Core: Agents + TSDB + Query Engine + Alerting1M hosts10M unique series100M pts/sec ingest
~11 min

Code Deployment Pipeline

Developer pushes code. CI builds and tests inside isolated ephemeral containers. An immutable, SHA-tagged artifact is stored in an S3-backed content-addressed store. CD does a canary deploy to 1% of traffic, runs automat

Core: Hermetic Build + Immutable Artifact + Canary Analysis~10K deploys/day~1000 concurrent buildsArtifact store ~50 TB
~13 min

ChatGPT

User sends a prompt. API gateway routes it through a tokenizer to a GPU cluster of ~10K A100s running autoregressive inference. Tokens stream back via server-sent events — the user sees words appearing one by one. The ha

Core: KV-Cache + Continuous Batching + Tensor Parallelism~100M users~1B tokens/day~10K A100 GPUs

Financial & Trading

7 problems
#016HARD~10 min

Bidding Platform

Design an eBay-scale auction system where sellers list items, buyers place real-time bids, proxy bidding resolves automatically, and auctions close with sub-second precision — all while guaranteeing financial correctness

Linearizable WritesReal-Time Fan-OutRedis LuaCQRS
#06HARD~15 min

Payment Gateway

Design a system like Stripe or Amazon Pay that orchestrates multi-party financial transactions across unreliable networks — guaranteeing money is never lost, duplicated, or stuck in limbo.

IdempotencyExactly-OnceSaga PatternPCI-DSS
~19 min

High-Throughput Stock Exchange

Design a NASDAQ-scale order-matching system that processes millions of orders per second with single-digit microsecond latency, maintains deterministic fairness guarantees, and broadcasts every state change to thousands

Matching EngineMicrosecond LatencyKernel BypassLMAX Disruptor
HARD~19 min

Stock Trading Platform

Design a Robinhood-scale platform that handles money and stock ownership with zero tolerance for inconsistency, while simultaneously streaming real-time price data to millions of users.

Financial SystemsReal-Time StreamingStrong ConsistencyEvent Sourcing
#24~10 min

Crypto Exchange

A cryptocurrency exchange like Coinbase or Binance: order-book trading across hundreds of coin pairs, wallets for hundreds of coins, deposits + withdrawals to the public blockchain, 24/7 operation. The hard parts: a matc

⚡ Core: Matching + Wallets + Blockchain Ingress~100K trades/sec24/7 operation200+ coins
~10 min

Real-time Fraud Detection

A system that scores every incoming payment / account action in under 100 ms and decides: approve, review, or block. The hard parts: a low-latency feature store that can answer "how many card swipes has this user made in

⚡ Core: Online Features + ML Scoring + Feedback< 100 ms decision~10K tx/secLow false-positive
~13 min

Google Ads

Advertiser creates a campaign. Every search query or page-view triggers an ad auction in under 100 ms. The winner's ad is shown, the click is tracked, and the advertiser is billed on a CPC basis. Scale: 10M+ auctions per

Core: Auction + Quality Score + Budget Pacing + Click Tracking10M+ auctions/secSub-100ms latencyCPC billing

Marketplace & Booking

8 problems
MEDIUM~13 min

URL Shortener

A URL shortener maps long, unwieldy URLs to short memorable codes and redirects anyone who clicks them. The concept is trivial — a key-value lookup. The challenge is serving billions of redirects per day with sub-100ms l

⚡ Core: Caching + Key Generation100M DAURead-heavy 1000:1High Availability
#06HARD~10 min

E-Commerce Platform

Design a large-scale platform like Amazon or Flipkart — from product search to checkout — where millions browse concurrently but inventory must never oversell.

Distributed TransactionsInventory ConcurrencyCQRSSaga Pattern
#016HARD~14 min

Ticketmaster / StubHub

Design an online ticket booking platform that handles extreme concurrency spikes — millions of users competing for thousands of seats — without ever selling the same seat twice.

ConcurrencyDistributed LocksInventory ManagementVirtual Queue
#05HARD~21 min

Uber / Ride Sharing

Design a real-time ride-hailing platform that matches riders with nearby drivers, tracks trips live on a map, handles geographic demand spikes, and calculates ETAs — all at city-scale.

GeospatialReal-TimeWebSocketsState Machine
~9 min

DoorDash / Uber Eats

A three-sided marketplace: eaters order, merchants prepare, Dashers deliver. The hard parts: a dispatch engine that assigns the right Dasher to the right order in real-time optimizing for ETA, efficiency, and driver earn

⚡ Core: Dispatch + ETA + Transactions~6M orders/day~300k daily DashersMulti-party SLA
~9 min

Airbnb

A two-sided marketplace with ~7M listings and ~100M nights booked per year. The hard parts: date-range availability search — "find homes in Lisbon for 4 guests, June 3–10, under $200/night" is a surprisingly gnarly query

⚡ Core: Availability + Pricing + Booking7M listings100M nights/yearCalendar consistency
~8 min

Flash Sale

100K users hit "Buy" at the exact same second for 1K limited items. No overselling. The hard parts: a waiting room that absorbs the thundering herd without crashing your backend, atomic inventory decrement that never goe

⚡ Core: Waiting Room + Atomic Inventory + Fair Queue100K concurrent users1K itemsSub-second checkout
~12 min

Shopping Cart

500M carts updated daily across every device. Never lose a cart. The hard parts: a hybrid storage layer that keeps hot carts in Redis for sub-ms reads while persisting to DynamoDB for durability, guest-to-authenticated c

Core: Add/Remove/Merge + Soft Hold + Price Lock~500M carts/day~50K ops/sec~500M active carts

Gaming

1 problems

Other

60 problems
#04~12 min

WhatsApp

A real-time messaging system supporting one-to-one and group chat, delivery receipts, and offline message queuing at 2 billion user scale. The core challenge: maintaining 50 million persistent WebSocket connections while

⚡ Core: WebSockets + Real-time Routing2B Users100B msgs/day50M Concurrent Connections
#09HARD~13 min

Notification System

Design a scalable, multi-channel notification platform that reliably delivers OTPs in 2 seconds and promo blasts to 50 million users — without one starving the other.

Fan-outMulti-ChannelPriority QueuesDelivery Guarantees
#16HARD~14 min

Video Conferencing

Design a real-time video conferencing platform like Zoom or Microsoft Teams — delivering sub-300ms audio/video to millions of concurrent participants across the globe while adapting to wildly varying network conditions.

Real-Time MediaWebRTCSFU ArchitectureEdge Computing
~13 min

Collaborative Whiteboard

Infinite canvas. Shapes, text, freehand drawing. Multiple users see each other's cursors in real time. Undo/redo, zoom/pan, offline edits that sync when reconnected. Like Miro or FigJam. The hard parts: a CRDT for canvas

Core: CRDT + Spatial Index + Real-Time Cursors + Per-User Undo100K+ canvas objects50+ concurrent usersSub-100ms sync
~9 min

Gmail

An email service for ~1.8B users handling ~1B incoming emails per day plus outgoing. The hard parts: an SMTP ingress that accepts mail from anyone on the public internet while rejecting terabytes of daily spam; a per-use

⚡ Core: SMTP Ingress + Spam + Search1.8B users~1B emails/day~40% spam rejection
~10 min

Google Calendar

A calendar and scheduling platform handling recurring events, calendar sharing, and free/busy queries for 1.5 billion users across every timezone. The hard parts: an RRULE recurrence engine that expands "every Monday for

Core: RRULE Expansion + Free/Busy1.5B users~500M events/day~10K free/busy QPS
~8 min

Reminder Alert

Schedule a reminder for "Thursday 9am in America/New_York" and have it arrive on the user's phone at exactly that local time — even when DST changes, the user moves timezones, or the delivery channel is flaky. The hard p

⚡ Core: Time Buckets + Timezone + At-Least-Once~100M reminders/dayDST-safeMulti-channel (push/SMS/email)
~9 min

Slack / Discord

A real-time messaging platform with channels, DMs, threads, reactions, presence, and file sharing. The hard parts: a persistent WebSocket fleet holding tens of millions of long-lived connections, message fan-out into cha

⚡ Core: WebSockets + Fan-Out + Presence200M MAU (Discord)~4B msgs/dayHuge channels (100k+ members)
#016HARD~10 min

Bidding Platform

Design an eBay-scale auction system where sellers list items, buyers place real-time bids, proxy bidding resolves automatically, and auctions close with sub-second precision — all while guaranteeing financial correctness

Linearizable WritesReal-Time Fan-OutRedis LuaCQRS
#06HARD~15 min

Payment Gateway

Design a system like Stripe or Amazon Pay that orchestrates multi-party financial transactions across unreliable networks — guaranteeing money is never lost, duplicated, or stuck in limbo.

IdempotencyExactly-OnceSaga PatternPCI-DSS
#24~10 min

Crypto Exchange

A cryptocurrency exchange like Coinbase or Binance: order-book trading across hundreds of coin pairs, wallets for hundreds of coins, deposits + withdrawals to the public blockchain, 24/7 operation. The hard parts: a matc

⚡ Core: Matching + Wallets + Blockchain Ingress~100K trades/sec24/7 operation200+ coins
~13 min

Google Ads

Advertiser creates a campaign. Every search query or page-view triggers an ad auction in under 100 ms. The winner's ad is shown, the click is tracked, and the advertiser is billed on a CPC basis. Scale: 10M+ auctions per

Core: Auction + Quality Score + Budget Pacing + Click Tracking10M+ auctions/secSub-100ms latencyCPC billing
~19 min

High-Throughput Stock Exchange

Design a NASDAQ-scale order-matching system that processes millions of orders per second with single-digit microsecond latency, maintains deterministic fairness guarantees, and broadcasts every state change to thousands

Matching EngineMicrosecond LatencyKernel BypassLMAX Disruptor
~10 min

Real-time Fraud Detection

A system that scores every incoming payment / account action in under 100 ms and decides: approve, review, or block. The hard parts: a low-latency feature store that can answer "how many card swipes has this user made in

⚡ Core: Online Features + ML Scoring + Feedback< 100 ms decision~10K tx/secLow false-positive
HARD~19 min

Stock Trading Platform

Design a Robinhood-scale platform that handles money and stock ownership with zero tolerance for inconsistency, while simultaneously streaming real-time price data to millions of users.

Financial SystemsReal-Time StreamingStrong ConsistencyEvent Sourcing
HARD~16 min

Design PUBG

Design a multiplayer battle royale system where 100 players drop onto a large map, scavenge for equipment, and fight until one player or squad survives — all synchronized in real-time over unreliable networks.

Real-Time NetworkingUDP ProtocolEphemeral ServersLag Compensation
#015HARD~11 min

Distributed Priority Queue

Design a horizontally scalable queue that always delivers the highest-priority message first — like a planetary-scale ER triage system where the most critical patients are always treated next, across every hospital in th

distributed-systemspriority-orderingat-least-oncesorted-sets
#016HARD~12 min

Count Unique Active Users

Design a system to count DAU, WAU, and MAU at massive scale — balancing exact accuracy for financial reporting against real-time approximate answers for dashboards, using probabilistic data structures.

HyperLogLogLambda ArchitectureStream ProcessingProbabilistic Counting
#016HARD~14 min

Distributed Job Scheduler

How do you reliably execute millions of scheduled tasks at precisely the right time across a fleet of unreliable machines, ensuring no job is missed and no job runs twice?

distributed-systemsexactly-onceleader-electionkafka
#017HARD~12 min

Distributed Locking

How do you guarantee that at most one process operates on a shared resource at any time, across machines that can crash, networks that can partition, and clocks that can drift?

consensusfencing-tokensraftmutual-exclusion
~9 min

CDN

A global Content Delivery Network: serve cached copies of customer content from hundreds of edge points-of-presence (PoPs), delivering to users with sub-50ms RTT anywhere on Earth. The hard parts: global routing so reque

⚡ Core: Anycast + Cache Hierarchy + Purge300+ PoPs55M req/sec> 90% cache hit ratio
~13 min

ChatGPT

User sends a prompt. API gateway routes it through a tokenizer to a GPU cluster of ~10K A100s running autoregressive inference. Tokens stream back via server-sent events — the user sees words appearing one by one. The ha

Core: KV-Cache + Continuous Batching + Tensor Parallelism~100M users~1B tokens/day~10K A100 GPUs
~11 min

Code Deployment Pipeline

Developer pushes code. CI builds and tests inside isolated ephemeral containers. An immutable, SHA-tagged artifact is stored in an S3-backed content-addressed store. CD does a canary deploy to 1% of traffic, runs automat

Core: Hermetic Build + Immutable Artifact + Canary Analysis~10K deploys/day~1000 concurrent buildsArtifact store ~50 TB
~13 min

Distributed Cache

An in-memory key-value store serving ~1M ops/sec per node with sub-millisecond latency. The hard parts: hash-slot sharding across a cluster of ~100 nodes so any key routes deterministically, eviction policies (LRU/LFU) t

Core: Hash-Slot Sharding + Eviction + Replication~1M ops/sec per nodeSub-ms p99 reads~100 GB RAM per node
~9 min

LeetCode

Users submit code solutions in 15+ languages. The system compiles, runs against hidden test cases with strict time/memory limits, and returns a verdict — all within seconds. The hard parts: sandboxed execution that preve

⚡ Core: Sandbox + Judge Queue + Verdicts10M submissions/day15+ languagesStrict time/mem limits
~15 min

Metrics & Monitoring

1M hosts each running an agent that collects CPU, memory, disk, and custom application metrics every 10-15 seconds. That is ~100M data points/sec flowing into your ingest pipeline. The hard parts: a time-series database

Core: Agents + TSDB + Query Engine + Alerting1M hosts10M unique series100M pts/sec ingest
MEDIUM~14 min

Rate Limiter

A rate limiter controls how frequently a client can make requests to an API — protecting backend services from being overwhelmed by traffic spikes, malicious abuse, or runaway retry loops. The challenge is enforcing limi

⚡ Core: Sliding Window Counter100K RPSLow Latency (<5ms overhead)High Availability
~8 min

Unique ID Generator

Generate globally unique, k-sortable, compact identifiers at over 1 million IDs per second across N machines with zero coordination. The hard parts: a bit-layout balancing timestamp, machine, and sequence that stays uniq

Core: Snowflake-style Distributed IDs1M+ IDs/sec64-bit / ~11 chars base62Sub-ms latency per ID
#016HARD~14 min

Ticketmaster / StubHub

Design an online ticket booking platform that handles extreme concurrency spikes — millions of users competing for thousands of seats — without ever selling the same seat twice.

ConcurrencyDistributed LocksInventory ManagementVirtual Queue
#05HARD~21 min

Uber / Ride Sharing

Design a real-time ride-hailing platform that matches riders with nearby drivers, tracks trips live on a map, handles geographic demand spikes, and calculates ETAs — all at city-scale.

GeospatialReal-TimeWebSocketsState Machine
#06HARD~10 min

E-Commerce Platform

Design a large-scale platform like Amazon or Flipkart — from product search to checkout — where millions browse concurrently but inventory must never oversell.

Distributed TransactionsInventory ConcurrencyCQRSSaga Pattern
~9 min

Airbnb

A two-sided marketplace with ~7M listings and ~100M nights booked per year. The hard parts: date-range availability search — "find homes in Lisbon for 4 guests, June 3–10, under $200/night" is a surprisingly gnarly query

⚡ Core: Availability + Pricing + Booking7M listings100M nights/yearCalendar consistency
~9 min

DoorDash / Uber Eats

A three-sided marketplace: eaters order, merchants prepare, Dashers deliver. The hard parts: a dispatch engine that assigns the right Dasher to the right order in real-time optimizing for ETA, efficiency, and driver earn

⚡ Core: Dispatch + ETA + Transactions~6M orders/day~300k daily DashersMulti-party SLA
~8 min

Flash Sale

100K users hit "Buy" at the exact same second for 1K limited items. No overselling. The hard parts: a waiting room that absorbs the thundering herd without crashing your backend, atomic inventory decrement that never goe

⚡ Core: Waiting Room + Atomic Inventory + Fair Queue100K concurrent users1K itemsSub-second checkout
~12 min

Shopping Cart

500M carts updated daily across every device. Never lose a cart. The hard parts: a hybrid storage layer that keeps hot carts in Redis for sub-ms reads while persisting to DynamoDB for durability, guest-to-authenticated c

Core: Add/Remove/Merge + Soft Hold + Price Lock~500M carts/day~50K ops/sec~500M active carts
MEDIUM~13 min

URL Shortener

A URL shortener maps long, unwieldy URLs to short memorable codes and redirects anyone who clicks them. The concept is trivial — a key-value lookup. The challenge is serving billions of redirects per day with sub-100ms l

⚡ Core: Caching + Key Generation100M DAURead-heavy 1000:1High Availability
#05~13 min

YouTube / Netflix

A video streaming platform that ingests raw user-uploaded content (YouTube) or studio-licensed media (Netflix), transcodes it into adaptive renditions, and delivers billions of views globally with sub-2-second start time

⚡ Core: Video Encoding Pipeline500M DAURead-heavy 200:1500h uploaded/min
#06HARD~11 min

Live Streaming Platform

Design a Twitch-scale live streaming platform where creators broadcast live video to millions of concurrent viewers with sub-5-second latency, real-time chat, and adaptive quality.

Video PipelineHLS / CDNWebSocketReal-Time
#06HARD~11 min

Google Maps

Design a global mapping platform that renders interactive maps, computes optimal routes in milliseconds, and ingests real-time GPS data from millions of phones to estimate live traffic and ETAs.

GeospatialStreaming PipelineGraph AlgorithmsCDN
~13 min

Google News

Crawl 50K+ news sources worldwide, rank by freshness + authority + personalization, and serve a unique feed to each of 1B users. The hard parts: near-duplicate clustering so users see one card per story with "N sources"

Core: Crawl + Cluster + Rank + Personalize1B users100K articles/day200K feed QPS
MEDIUM~11 min

Search Autocomplete

A typeahead system that returns ranked suggestions on every keystroke — at sub-100ms latency, for billions of daily searches. The challenge isn't finding matches. It's pre-organizing data so matches are already waiting.

⚡ Core: Trie + Top-K caching5B searches/dayRead-heavy<100ms p99
~9 min

Search Engine

A web-scale search engine — crawl the public web, build an inverted index, serve queries in under 200 ms with high-quality ranked results. Google handles ~100K queries per second over an index of hundreds of billions of

⚡ Core: Inverted Index + Ranking~100K QPS< 200 ms p99100B+ pages indexed
~11 min

Web Crawler

A system that automatically traverses the web — starting from seed URLs, fetching pages, extracting links, and repeating — to build a searchable index of internet content. Deceptively simple at small scale; one of the ha

⚡ Core: URL Frontier + Deduplication10B pagesWrite-heavyDistributed
MEDIUM~12 min

Yelp / Google Places

A local business discovery platform where users search for nearby restaurants, shops, and services by location, category, and filters. The core challenge is answering "what is near me?" across 100 million listings in und

⚡ Core: Geospatial Indexing50M DAU100M BusinessesRead-heavy
#016HARD~14 min

Top-K Leaderboard

Design a real-time ranking system that maintains sorted standings of millions of users, serving both "who's on top?" and "what's my rank?" with sub-50ms latency.

Redis ZSETSkip ListReal-Time RankingScore Packing
#016HARD~13 min

Reddit-Style Comments

Design a nested, threaded comment system with voting, ranking algorithms, and tree pagination — where the hardest problem isn't storing data, it's retrieving a sorted, truncated tree in under 200ms.

Tree Data StructureRanking AlgorithmsRead-HeavyCache Strategy
#06HARD~12 min

LinkedIn MutualConnection Search

Design a system that finds shared connections between any two users on a billion-user professional network — in under 50ms, at 100K+ queries per second.

Graph IntersectionBloom FiltersRedisProbabilistic Data Structures
#16HARD~13 min

Recommendation Algorithm

Design the engine behind "Recommended for you" — a system that surfaces personalised content or products for hundreds of millions of users across a catalogue of millions of items, in real time, while continuously learnin

Machine LearningTwo-Stage FunnelEmbeddingsLambda Architecture
~12 min

Ad Click Aggregator

10 billion clicks per day, counted in real-time for billing and analytics. Every click is money. The hard parts: a streaming aggregation pipeline that groups clicks by campaign, ad, geo, and minute with exactly-once sema

Core: Stream Aggregate + Fraud Filter + OLAP Query~10B clicks/day~115K clicks/sec avg~500K/sec peak
~9 min

Instagram

A photo and short-video sharing platform with feeds, stories, reels, and direct messaging serving 2 billion monthly active users. The hard parts: a media upload pipeline handling 95M+ daily uploads with on-the-fly transc

⚡ Core: Media Pipeline + Ranked Feed2B MAU95M uploads/dayRead-heavy 100:1
MEDIUM~14 min

News Feed

A social media feed that shows posts from people you follow, ranked algorithmically, updated in near-real-time. The core challenge: one celebrity post needs to reach 10 million followers instantly — without the system me

⚡ Core: Fan-out Problem500M DAURead-heavy 15:1Eventual Consistency
~15 min

Reddit

1.7 billion monthly visits across millions of subreddit communities. The hard parts: a Hot ranking algorithm that decays old posts and surfaces fresh content without scanning every post on every page load, nested comment

Core: Hot Ranking + Comment Trees + Vote Pipeline1.7B monthly visits100K posts/day2M comments/day
~8 min

Twitter Trending

Surface the top-10 trending topics — hashtags, phrases, named entities — from the firehose of all tweets, refreshed every few minutes, per geo and per user. The hard parts: approximate top-K over a high-velocity stream w

⚡ Core: Stream Top-K + Novelty + Anti-Spam~6K tweets/sec500M tweets/day400+ geo scopes
~9 min

YouTube Likes Counter

A distributed counter system that handles 10M+ increments per second across 10B+ videos with eventual consistency for display. The hard parts: a sharded counter architecture that absorbs bursty write traffic without hot

Core: Sharded Counters + Dedup10B+ videos~500K likes/sec peak~5s eventual consistency
#07HARD~10 min

Google Docs / Live Collaborative Editor

Design a real-time collaborative document editor where multiple users type simultaneously and every screen converges to the same result — without locks, without data loss, and within milliseconds.

Real-TimeWebSocketsOperational TransformationCRDTs
~9 min

Amazon S3

A bucket-and-key object store with read-your-writes consistency, ~11 nines of durability, and exabyte-scale capacity. The hard parts: a key → bytes service that doesn't fall over at millions of requests per second; erasu

⚡ Core: Durability + Hot-Partition Handling11 nines durability100T+ objects~100M req/sec peak
HARD~21 min

Distributed Logging Framework

Design a centralized logging system that ingests hundreds of thousands of events per second from thousands of services, stores them durably with compression, and enables full-text search across billions of log lines in s

Write-HeavyAppend-OnlyFull-Text SearchStreaming
~10 min

Dropbox Sync

A two-way file sync engine: every file in a user's "Dropbox" folder should appear identically across all their devices within seconds of any change. The hard parts: a content-addressable block store that deduplicates chu

⚡ Core: Block Dedup + Metadata + Sync Loop~700M usersExabytes of data4 MB blocks
~12 min

Google Drive

A cloud file storage and synchronisation service that lets users upload any file, access it from any device, share it with others, and keep it in sync across all their machines — even after offline edits. The hard part i

⚡ Core: Chunk + Sync500M users7.5 Exabytes~2:1 read/write
~15 min

Key-Value Store

10 million requests per second, 100 TB of data, single-digit millisecond p99 at any scale. The hard parts: a consistent hash ring that routes every request to the right partition without a central coordinator, an LSM sto

Core: Consistent Hashing + LSM Engine + Quorum Replication~10M req/sec~100 TB dataSingle-digit ms p99