System Design interview prep
- A/B Testing Platform Design — How to build the system that runs controlled experiments: stable assignment, many experiments at once, exposur
- ACID vs BASE — What a transaction promises, how databases keep that promise (isolation levels, MVCC, locks, the write-ahead l
- Active-Active vs Active-Passive — The two ways to run redundant copies: one copy serves while a standby waits to take over, or every copy serves
- Ad Click Event Aggregation — Design a pipeline that counts ad clicks per ad and per minute, fast enough for live advertiser dashboards and
- AI Agriculture Advisory System — Design a service that watches farmers' fields from satellite images, diagnoses crop diseases from phone photos
- AI Airline Booking Chatbot — Design a chat assistant that turns free text into flight searches, books exactly once through airline distribu
- AI Analytics Dashboard — Design an analytics product where business users ask questions in plain English, get checked SQL, a chart and
- AI Anomaly Detection System — Design a system that watches millions of service metrics, learns what normal looks like for each one, and page
- AI Art Generation System — Design a service that turns a text prompt into a set of images in seconds: an asynchronous job pipeline in fro
- AI Banking Chatbot — Design a retail bank's chat assistant that answers account questions, moves money between the customer's own a
- AI Bot and Scalper Detection System — Design the system that scores every step of a ticket on-sale for automation and resale abuse, and decides in m
- AI Click Fraud Detection System — Design the system an ad network uses to find invalid clicks (bots, click farms, spoofed sites, accidental clic
- AI Cold Start Recommendation System — Design the part of a streaming service's recommender that serves people who just signed up and have no history
- AI Content Moderation at Scale — Design a system that checks every post, image and video against content policy, removes known bad content at o
- AI Copilot System — Design an AI coding assistant: ghost-text completions that appear while the developer types, and a chat that a
- AI Data Quality and Monitoring System — Design a platform that checks every pipeline output for freshness, volume, schema and distribution problems, s
- AI Delivery ETA Prediction System — Design the system that predicts when a food order will reach the customer, as a range, by modeling kitchen tim
- AI Driver-Rider Matching System — Design the dispatch system of a ride-hailing app: track drivers in real time, predict pickup times, match ride
- AI Dynamic Pricing Engine — Design the engine that sets prices for millions of products from estimated demand, stock, deadlines and compet
- AI E-commerce Search Ranking System — Design the search behind an online store's search box: understand the query, find matching products among hund
- AI Flashcard System — Design a flashcard app that turns a student's notes and PDFs into cards with a language model, then schedules
- AI Healthcare Chatbot — Design a patient chat assistant for a health system that books visits, routes symptoms to the right level of c
- AI Image Generation Service — Design a service that turns a text prompt into images with a diffusion model: jobs wait in a queue, GPU worker
- AI Job Matching System — Design the system that recommends job postings to job seekers and ranks candidates for recruiters, so that bot
- AI Product Recommendation System — Design the system that picks which products an online store shows on its home page, product pages, cart and em
- AI Resume Screening System — Design a system that turns uploaded resumes into structured profiles, ranks applicants against a job with reas
- AI Smart Pricing for Short-Term Rentals — Design the system that suggests a price for every open night on every rental listing, learns from which nights
- AI Social Media Bot Detection System — Design the system a social network uses to find automated, fake and coordinated accounts, from checks at sign-
- AI Surge Pricing System — Design the system that measures and forecasts riders and drivers in small map cells, turns the gap into a surg
- AI Tutoring System — Design a practice platform that tracks what each student knows skill by skill, picks the next problem to fit,
- AI Video Surveillance System — Design a platform that analyzes video from thousands of cameras at the sites where they are installed, raises
- AI-Powered Query Optimizer — Design a service that learns from how past queries actually ran and steers the database's optimizer toward fas
- Airbnb — Design a marketplace where hosts list homes and guests search by place and dates, book without ever double-boo
- Amazon E-commerce — Design an online store where people search a huge catalog, keep a cart on every device, and check out without
- Apache Flink Deep Dive — Apache Flink, the stateful stream processor: the runtime, keyed state and state backends, event time and water
- API Design — How to design an HTTP API that clients can rely on for years: resources and methods, status codes and errors,
- API Gateway — Design the gateway that every external API request passes through: it routes each request to a backend, checks
- API Gateway Design — The single front door for many backend services: routing, checking identity once at the edge, rate limits, com
- Automated Content Tagging System — Design a system that tags every uploaded image from a managed list of tens of thousands of tags, sends uncerta
- Autonomous Agent Platform — Design a platform that runs LLM agents: each task loops through model calls and tool calls for minutes or hour
- B2B E-commerce Platform — Design a platform where businesses buy from a supplier: each company sees its own negotiated prices, orders pa
- Backpressure and Load Shedding — What a system should do when work arrives faster than it can finish it: bound every queue, let slow consumers
- Batch vs Stream Processing — Processing data in scheduled chunks or continuously as it arrives: latency, cost and correctness, event time a
- Blob Store — Design the storage layer under an object store: how nodes lay blobs out on disk, how fresh data is replicated
- Bloom Filters — A small, fast filter that answers 'definitely not here' or 'maybe here', used to skip disk reads, database loo
- Buy Now Pay Later (BNPL) System — Design a pay-in-4 lender that decides on credit during checkout, pays the merchant up front, collects the inst
- Cache Read/Write Strategies — How data moves between an application, its cache and its database: cache-aside, read-through, write-through an
- Cache Stampede — What happens when a popular cache entry expires and every request tries to rebuild it at once, and the tools t
- Caching — How caches make reads fast and take load off databases: where they sit, how to read and write through them, wh
- Calendar System — Design a shared calendar: events that repeat by rule, times that stay right across time zones and daylight sav
- CAP & PACELC Deep Dive — What the CAP theorem really proves, what PACELC adds for the time when the network is healthy, and how to choo
- Cassandra Deep Dive — Apache Cassandra from the inside: the token ring, tunable consistency, the log-structured write and read paths
- CDC Pipeline into a Data Warehouse — Design the pipeline that copies every insert, update and delete from hundreds of sharded PostgreSQL and MySQL
- CDN Deep Dive — How a CDN serves content from caches near users: the path through edge and shield, Cache-Control and cache key
- CDN vs Direct Serving — When to put a content delivery network in front of a response and when to serve it straight from your own serv
- Change Data Capture (CDC) — How to copy every database change to other systems by reading the database's own log: snapshot then stream, ev
- Chat System — Design a team chat service with channels and direct messages that shows everyone the same message order, keeps
- ChatGPT / LLM System — Design a chat service that runs a large language model on GPUs: stream each answer token by token, batch many
- Checksums and Data Integrity — How systems notice that data changed when it should not have: CRCs and cryptographic hashes, end-to-end checks
- CI/CD Pipeline — Design a hosted service that runs a repository's build, test and deploy jobs on every push, in isolated machin
- Clickstream Analytics Lakehouse — Design the pipeline that collects web and mobile product events, makes them queryable in a lakehouse table wit
- Code Generation System — Design an AI coding assistant for the editor: gray inline suggestions that appear as a developer pauses, plus
- Columnar File Formats (Parquet and ORC) — How Parquet and ORC store a table column by column inside large row groups or stripes, and how their encodings
- Consistent Hashing — How to spread keys over a changing set of servers so that adding or removing one moves only a small share of t
- Content Delivery Network — Design a content delivery network: caches in about 100 locations that serve customers' files near users, send
- Core Banking System — Design the system of record of a bank: customers and their accounts, an append-only double-entry ledger, trans
- CRDTs: Conflict-Free Replicated Data Types — Data types that let every replica accept writes on its own and still end up identical: counters, registers, se
- Customer Onboarding and KYC — Design a bank's digital sign-up: resumable steps, document and selfie checks through vendors, sanctions screen
- Customer Support Chatbot System — Design a support chatbot platform that answers customers from a company's own help articles, looks up and chan
- Data Labeling and Annotation System — Design a labeling platform that gets several independent human labels per item, scores annotators with hidden
- Data Lakes and Lakehouse Table Formats — How Apache Iceberg, Delta Lake and Apache Hudi turn a folder of Parquet files in object storage into a table w
- Data Partitioning — How to split one dataset across many machines: choosing the partition key, hash and range placement, hot keys,
- Data Pipeline Orchestration and Backfills — How batch data pipelines are scheduled and kept correct: tasks in a DAG, runs that each own a fixed time windo
- Data Quality, Contracts and Lineage — How to keep bad data from readers: what to check and where, which failures stop a load, how contracts and comp
- Data Warehousing and Dimensional Modeling — How analytics data is stored and shaped: OLTP and OLAP workloads, ETL and ELT, facts, dimensions and grain, st
- Database Indexes — How an index lets a database find rows without reading the whole table: B-trees, composite and covering indexe
- Databases — The main families of databases, which questions each one makes cheap, and how to choose one for each part of a
- Dealing with Contention — What to do when many requests want to change the same thing at the same moment: seats, stock, balances, counte
- Delivery Semantics — At-most-once, at-least-once and exactly-once: what each promise means, why a sender cannot tell a lost message
- Deployment System — Design the system that takes a built version of a service to production with no downtime, rolling it out in st
- Digital Wallet — Design a wallet that holds users' money as balances, moves it between wallets instantly, places and releases h
- Distributed Cache — Design an in-memory cache tier spread over hundreds of servers that absorbs most of an application's reads, st
- Distributed File Systems — How GFS, HDFS, Ceph and object stores such as S3 keep huge amounts of data on many ordinary machines: large bl
- Distributed Key-Value Store — Design a key-value store spread over many machines that keeps accepting reads and writes when machines fail, i
- Distributed Locking Service — Design a lock service that many teams use to make sure only one process at a time works on a job, a file or a
- Distributed Message Queue — Design a Kafka-style broker: partitioned, replicated logs on disk, producers and consumer groups, and the guar
- Distributed Messaging — How a distributed log such as Kafka spreads messages across machines, keeps them safe through failures and del
- Distributed ML Training Platform — Design a shared platform that schedules training jobs onto a GPU cluster, splits large models across thousands
- Distributed Search — Design the cluster behind a search engine like Elasticsearch: master election, replication and failover, recov
- Distributed Task Scheduler — Design a scheduler that runs workflows of dependent tasks (DAGs) across many workers: tasks start only when th
- DNS Deep Dive — How a name becomes an address: the resolvers and servers a lookup passes through, records and TTLs, steering t
- Document AI Processing System — Design a service that takes scanned and digital documents (invoices, receipts, forms), reads the text, finds t
- Donations Website — Design a fundraising site where campaigns show a live total, donors pay by card through a processor, and a tel
- DoorDash / UberEats — Design a food delivery marketplace where customers order from restaurants, the platform picks a driver for eac
- Dropbox — Design a file sync service that keeps a folder identical on every device a user owns, sends only the parts of
- DynamoDB Deep Dive — How Amazon DynamoDB stores and serves data, and how to design for it: keys and partitions, capacity units, hot
- E-Commerce Platform — Design an online store with a large catalog, faceted search, a cart, stock held in several warehouses, and a c
- Email Auto-Response System — Design an assistant that connects to a user's mailbox, decides which new emails need a reply, offers three one
- Embedding Generation Pipeline — Design a pipeline that turns a billion text chunks into vectors, keeps the vector index fresh as documents cha
- Enterprise AI Assistant — Design an assistant every employee can ask about internal wikis, tickets, documents and chat, and ask to act i
- Enterprise File Processing System — Design a service that takes large partner files (payroll, claims, settlement), checks and splits them, and app
- Facebook Live Comments — Design the comment stream beside a live video: anyone watching can post, and every viewer sees a steady, relev
- Facebook News Feed — Design a ranked feed of posts from friends, groups and pages, where every post has its own audience, the feed
- Facebook Post Search — Design keyword search over a social network's posts: new posts searchable in seconds, results that favor the s
- Feature Flags System Design — How to turn features on and off without a deploy: targeting rules, stable percentage rollouts, fast local eval
- Fencing — How to stop a leader or lock holder that has been replaced, but does not know it yet, from writing: fencing to
- Flash Sale System — Design a sale where a few thousand discounted units go on sale at one moment to millions of buyers: sell exact
- Fundamentals — The ideas every system design answer is built on: how systems grow, how fast they answer, how often they stay
- Gaming Leaderboard — Design a leaderboard that ranks up to 100 million players of a game, shows the top of the board and each playe
- Gmail — Design a web email service that receives mail from the whole internet over SMTP, filters spam, stores years of
- Google Docs — Design a document editor where many people type in the same document at once, see each other's changes within
- Google Maps — Design a maps service that draws the map at any zoom, finds driving routes on a continental road network in mi
- Gossip Protocols — How clusters spread state without a coordinator: every node regularly swaps what it knows with a random peer,
- Grocery Delivery System — Design a service where customers order groceries from local stores, shoppers pick the items off real shelves,
- GSLB, GeoDNS and Anycast — How global traffic is sent to the right region: DNS that answers differently by location, latency or health, a
- Handling Large Blobs — How to upload, store, process and serve files from megabytes to terabytes: bytes in object storage and metadat
- Healthcare AI Triage System — Design a patient-facing symptom checker that asks follow-up questions, recommends a level of care and hands th
- Healthcare Platform (EHR) — Design the system of record for a regional health network: one identity per patient, a trusted clinical record
- Heartbeats and Failure Detection — How distributed systems decide that a node has failed: periodic heartbeats, timeouts and their trade-off, phi
- High-Water Mark — The position in a replicated log up to which entries are safely replicated: how Kafka's high watermark and Raf
- Hinted Handoff — How leaderless databases keep accepting writes while a replica is briefly down: another node keeps the write w
- Hotel Booking — Design a hotel reservation system: guests search for rooms by place and dates, hold a room while they pay, and
- Idempotency — Making an operation safe to repeat, so that retries after timeouts and duplicate messages never charge twice o
- Instagram — Design a photo-sharing service where people upload photos, follow each other, see a feed of posts and 24-hour
- Insurance Platform: Policies and Claims — Design a home and auto insurer's core platform: quote, underwrite, bind and bill policies, then take claims th
- IoT Data Ingestion Pipeline — Design the pipeline that connects millions of sensors and machines over MQTT, takes in their readings without
- Job Scheduler — Design a service that runs jobs at a set time or on a cron schedule across a fleet of workers, never loses a r
- Knowledge Graph Database — Design a knowledge graph that stores billions of facts about entities with their time and source, answers mult
- Language Detection System — Design a shared service that tells other systems which language a piece of text is in, fast enough to sit on e
- Large-Scale AI Inference Serving — Design a platform that serves large language models and many smaller models to many teams on shared GPUs, stre
- Last-Mile Delivery — Design the system that plans each driver's stops for the day, changes routes while drivers are out, records pr
- Latency vs Throughput — How long one request takes and how many a system finishes each second: percentiles and tail latency, why waits
- Leader-Follower Replication — How one leader orders every write and followers copy its log: what the log carries, how followers join and lag
- LinkedIn — Design a professional network: profiles, two-way connections with 1st, 2nd and 3rd-degree badges, a feed, peop
- Live Auction Platform — Design a live sale that is streamed to the internet: an auctioneer calls lots on video while bids arrive from
- Live Sports Scoreboard — Design a service that takes live match data from sports data feeds and gets every score change onto millions o
- Live Video Transcoding Pipeline — Design the pipeline behind live streaming: take one stream from a broadcaster, turn it into several qualities
- Load Balancing — How a load balancer spreads traffic, hides failures and stays up itself: layer 4 and layer 7, the algorithms,
- Loan Origination System — Design the system that takes a consumer loan from application to funding, where steps wait for days, every ven
- Local Delivery Service (Gopuff) — Design a service that sells everyday items from the company's own small warehouses, shows each customer only w
- Long Polling, WebSockets & SSE — How a server pushes updates to browsers and apps: long polling, Server-Sent Events and WebSockets on the wire,
- Loyalty and Rewards System — Design a loyalty platform where members earn points on purchases, redeem them for rewards and move between tie
- Managing Long-Running Tasks — How to run work that takes seconds to hours without holding a request open: accept and return a job id, queue
- Marketplace Seller Platform — Design a marketplace where independent sellers list products, sell to buyers through one checkout, and get pai
- Merkle Trees — A tree of hashes whose root fingerprints a whole data set, so two copies can find their differences by compari
- Message Queues — How a queue lets one service hand work to another: acknowledgments and timeouts, dead-letter queues, ordering,
- Metrics Monitoring and Alerting — Design a system that collects numeric measurements from thousands of machines, stores them as time series, dra
- Microservices — How to split one application into small services that separate teams can build, deploy and run on their own: w
- ML Experiment Tracking System — Design a service that records every model training run (its settings, metrics, files and environment) so resea
- ML Feature Store — Design a feature store: one place where ML features are defined once, computed in batch and streaming, served
- ML Training Data Lake — Design a petabyte-scale store for machine learning training data where every dataset version is immutable, eve
- Model Registry and Artifact Store — Design a model registry: the catalog that records every trained model version with its lineage, stores its fil
- Monitoring and Observability — How to see what a running system is doing: metrics, logs and traces, the signals worth measuring, SLOs and err
- Monolith vs Microservices — One deployable application or many small services: what each buys and costs, the modular monolith in between,
- Multi-Modal AI Search Engine — Design a search engine over a billion images and product listings that accepts a text query, a photo, a voice
- Multi-Modal Data Store — Design one store for images, text, audio and video that keeps the files cheaply, describes them with shared me
- Multi-Region Active-Active Architecture — Serving live traffic from several regions at once: how users are routed, where writes go, how conflicting writ
- Multi-Step Processes — How to run a business process that spans several services, such as placing an order, so that it either finishe
- Multi-Tenancy Architecture — How one SaaS product serves many customers from shared infrastructure without leaking data or letting one cust
- Multi-Tenant SaaS Platform — Design the platform under a B2B SaaS product: onboarding, isolation per plan, entitlements, usage billing, ent
- Multi-Version Concurrency Control — How keeping several versions of each row lets readers and writers work at once: snapshots, visibility, Postgre
- Music Generation System — Design a service that turns a text prompt into a finished music track: an asynchronous GPU job queue, a credit
- Nearby Friends — Design a feature that shows each user which of their friends are within a few miles right now, with locations
- Negative Caching — Caching the answer that something does not exist, so repeated lookups for missing keys stop reaching the datab
- Netflix — Design an on-demand video service: prepare each title in many qualities, deliver the bytes from servers close
- Network Essentials — How data moves between machines: the layers, TCP and UDP, TLS 1.3, QUIC and HTTP/3, where latency comes from,
- News Aggregator — Design a service that collects articles from tens of thousands of publisher feeds, groups the ones about the s
- Normalization vs Denormalization — When to store each fact once for correctness and when to copy it for fast reads: normal forms, the anomalies t
- Notification System — The interview walk-through for a service that lets every team in a company notify users by push, email, SMS an
- Notification System Design — Designing a system that notifies millions of users by push, email, SMS and an in-app inbox: the pipeline, fan-
- NPC Dialogue System — Design a service that lets game characters hold open conversations with players: in character, aware of the ga
- Object Storage (S3) — Design an object store like Amazon S3: a flat namespace of buckets and keys, strongly consistent metadata, byt
- OCR System (Text Recognition) — Design a service that turns photos, scans and PDFs into text with positions, tables and form fields: a fast pa
- Online Auction — Design an auction site where sellers list items for a fixed time, bidders raise the price live, and exactly on
- Online Chess — Design an online chess site: pair players of similar strength, relay moves in real time, run fair clocks on th
- Online Coding Judge — Design a coding practice and contest site that compiles and runs code from strangers against hidden tests, saf
- Order Management System — Design the order management system behind a retailer: take an order exactly once, carry it through payment, st
- Outbox Pattern — How a service changes its database and publishes an event without losing either: write both in one transaction
- Pagination Strategies — How to return a large, changing list one page at a time: why offsets slow down and shift, how keyset queries w
- Pastebin — Design a service where anyone can paste text or code, get a link back, and have the paste disappear on schedul
- Payment Gateway — Design the gateway that sits between merchants and card acquirers: a merchant API, card collection that keeps
- Payment System — Design a service that lets merchants charge cards, refund and pay out, where no retry ever charges a customer
- Phi Accrual Failure Detection — A failure detector that reports a suspicion level instead of alive or dead, computed from each node's own hear
- Polling vs WebSockets vs Webhooks — Five ways for one side to learn that something changed on the other: short polling, long polling, server-sent
- Price Comparison Engine — Design a service that collects prices from many retailers, recognizes when two listings are the same product,
- Price Tracking Service — Design a service that checks product prices on shopping sites on a schedule, keeps their history, and tells us
- Primary-Replica vs Peer-to-Peer — Who is allowed to accept a write: one leader, one leader per region, or any node. How each choice handles fail
- Proxies — The servers in the middle of almost every request: forward and reverse proxies, layer 4 and layer 7, TLS termi
- Proximity Service — Design a service that, given a location and a radius, returns the nearby businesses in a category, sorted by d
- Quorum Consensus — How N, W and R decide what a replicated database can promise: why W + R > N makes every read meet the latest w
- Raft Consensus — How a small group of servers agrees on one ordered log even when some of them crash or the network splits: ter
- RAG System (Retrieval-Augmented Generation) — Design a system that answers questions from a company's own documents: it finds the right passages with keywor
- Rate Limiter — Design a rate limiting service that every API gateway node calls on each request, so that each client stays wi
- Rate Limiting — How to cap the requests each client can make, so that one caller cannot overload a service, crowd out other us
- Read Repair — How leaderless databases such as Cassandra and Dynamo fix out-of-date replicas while serving a read: digest co
- Read-Heavy vs Write-Heavy Systems — How the ratio of reads to writes shapes a design: every choice moves work between the write path and the read
- Real-Time AI Translation System — Design a system that listens to live speech and shows (or speaks) a translation within a second or two, keepin
- Real-Time Bidding Platform — Design an ad exchange that auctions each ad slot to many outside bidders while the page loads: send bid reques
- Real-Time Collaboration System — How several people edit one document at once and all end up with the same result: operational transformation,
- Real-Time Event Stream Processing — Design a pipeline that counts a high-rate stream of card transactions over time windows and raises alerts with
- Real-Time Feature Database — Design the online side of a feature store: a database that keeps seconds-fresh feature values computed from ev
- Real-Time Fraud Detection — Design a service that scores every card payment for fraud before it is authorized, using rules, fresh velocity
- Real-Time Geospatial Tracking — Design a system that takes in a steady stream of GPS positions from a million moving devices, shows each one l
- Real-Time Matchmaking System — Design the service that puts players who are queuing for an online game into fair matches quickly: rate their
- Real-Time Presence System — Design the service behind the green dot: who is online, when they were last seen and who is typing, pushed wit
- Real-time Updates — How a change on the server reaches every client that cares within a second or so: the connection to the client
- Recommendation Engine — Design a recommendation system for a large video catalog: pick a few hundred candidates from millions with emb
- Reddit — Design a community discussion site where people post into topic communities, vote on posts and comments, and r
- Redundancy and Replication — How spare capacity and extra copies of data keep a system up and its data safe: failure domains, active-passiv
- REST vs RPC vs GraphQL — Three ways for programs to talk over a network: REST (resources over HTTP), RPC such as gRPC (calling remote f
- Returns and Refund Management System — Design a returns system that checks eligibility, issues labels, tracks the parcel back, grades the item, decid
- RPO & RTO — Recovery Point Objective and Recovery Time Objective — the two key metrics for disaster recovery planning and
- Saga Pattern for Distributed Transactions — Keeping data consistent across services without a distributed lock: a chain of local transactions, each with a
- Scaling Reads — How to serve many more reads than one database can answer: make each query cheap, add read replicas, cache in
- Scaling Writes — How to accept more writes than one database can take: make each write cheaper, batch and buffer, split data ac
- Search Ranking System — Design the ranking layer of a search engine: retrieve candidates cheaply, order them with a learned model such
- Search System Design — How full-text search works and how to build it at scale: the inverted index, text analysis, BM25 ranking, shar
- Security — How a system proves who is calling, decides what they may do, and protects data on the wire and on disk: passw
- Segmented Log — Splitting an append-only log into a series of files, so old data can be deleted or compacted a file at a time
- Semantic Cache for LLM Responses — Design a cache that sits in front of a large language model and returns a stored answer when a new question me
- Sentiment Analysis System — Design a brand-monitoring service that reads a stream of social posts and reviews, finds which brand and which
- Serverless vs Traditional — When to run code as functions the cloud starts on demand, and when to keep servers or containers running: cold
- Shopify — Design a platform where millions of merchants each run their own online store on shared infrastructure, and on
- SLI, SLO & SLA — Defining and measuring service reliability through Service Level Indicators, Objectives, and Agreements with e
- Social Commerce Platform — Design a social app where creators tag products in videos and live streams, viewers buy without leaving the ap
- Soft vs Hard TTL — Two expiry times for one cache entry: a soft TTL after which the value is refreshed in the background while st
- Speech-to-Text System — Design a speech-to-text service that turns live audio into text while the person is still talking, and transcr
- Split Brain — What happens when a cluster splits and two nodes both believe they are in charge, and the defenses that stop i
- Spotify — Design a music streaming service at the system level: a catalog of 100 million tracks, playback that starts in
- SQL Isolation Levels Deep Dive — How PostgreSQL, MySQL InnoDB and SQL Server actually build each isolation level, with snapshots, row locks, ga
- SQL vs NoSQL Trade-offs — How to choose between a relational database and the NoSQL families (key-value, document, wide-column, graph) b
- Stateful vs Stateless Services — Where a service keeps what it remembers between requests, and what that choice costs: stateless servers that s
- Sticky Sessions — Session affinity: a load balancer sends each client back to the same server, by cookie, source address or a ha
- Stock Exchange — Design the core of an exchange: a sequencer that puts all orders in one order, a matching engine with price-ti
- Stock Trading App (Robinhood) — Design a retail brokerage app: millions of people watch live prices and place market and limit orders, which t
- Strava Fitness Tracking — Design a fitness app that records GPS activities, computes their stats, matches them against community-drawn s
- Strong vs Eventual Consistency — What a read may return after a write when data is copied to several machines: the models from linearizable to
- Subscription Commerce Platform — Design a platform that charges saved payment methods on a schedule, recovers failed payments with retries and
- Supply Chain Visibility and Tracking — Design a platform that collects tracking events for international shipments from many carriers in many formats
- Synchronous vs Asynchronous Communication — When a service should wait for an answer and when it should hand the work off and move on: what each choice co
- Synthetic Data Generation System — Design a platform that learns the shape of a sensitive real dataset and produces synthetic rows that are usefu
- Text Summarization System — Design a service that turns documents, email threads, chat channels and meeting transcripts into short summari
- Ticketmaster — Design a ticketing service where millions of people try to buy a few thousand reserved seats the moment a sale
- TikTok — Design a short-video app where people upload clips and scroll an endless, personalized feed chosen by a recomm
- Time Series Database — Design the storage engine of a metrics database: take a million samples a second without losing acknowledged w
- Time Series Forecasting System — Design a system that forecasts daily demand for a million product-and-store series every night, with a range o
- Time-Series Database Design — How databases for metrics, sensor readings and other timestamped data take huge write rates, compress them to
- Tinder — Design a dating app that shows each person a stack of nearby profiles, records a like or pass on each, and cre
- Token Bucket vs Leaky Bucket — Two ways to limit a rate: a token bucket that allows bursts and a leaky bucket that smooths them, compared wit
- Twitch — Design a live video platform where creators broadcast from their computers and millions of people watch a few
- Twitter / X — Design a service where people post short messages, follow other people, and read a home timeline of posts from
- Twitter Trending Topics — Design trending topics for a social network: find the terms people are suddenly talking about more than usual,
- Two-Phase Commit and Distributed Transactions — How a coordinator gets several databases to commit or abort one transaction together, why the protocol can blo
- Typeahead / Autocomplete — Design the suggestion list under a search box: as someone types, show the ten most likely completions of what
- Uber — Design Uber, a ride-hailing service that tracks millions of moving drivers, finds the best nearby driver for e
- Unique ID Generator — Design a way for many servers to hand out unique 64-bit IDs that sort by creation time, without asking each ot
- URL Shortener — Design a service that turns a long URL into a short code and sends anyone who opens the short link to the orig
- UUID, ULID and Snowflake IDs — How to give every record a unique ID without one central counter: random UUIDs, time-ordered UUIDv7 and ULID,
- Vector Clocks — How distributed systems tell whether one event caused another or happened independently, without trusting wall
- Vector Databases Deep Dive — How vector search works and how to run it: embeddings and distance, why exact search does not scale, HNSW, IVF
- Vector Search / Semantic Index — Design a service that stores a billion embeddings with metadata and returns the most similar ones to a query i
- Vehicle Registration System — Design a government-style records system for vehicle titles and registrations: ownership changes exactly once,
- Video Understanding System — Design the pipeline that turns every uploaded video into structured data (shots, keyframes, a timed transcript
- Voice Assistant Backend — Design the cloud side of a voice assistant: stream audio after the wake word, turn speech into an intent, keep
- WAL and Durability — How a write-ahead log makes a commit survive a crash: the flush that defines a commit, the caches that can lie
- Warehouse and Inventory Management System — Design a warehouse management system that tracks every unit from receiving to shipping, reserves stock so no o
- Web Crawler — Design a crawler that downloads about a billion web pages a day for a search index, without overloading any we
- Web Search Engine — Design a web search engine: turn crawled pages into a sharded index, rank with text and link signals such as P
- Webhook Delivery Service — Design the service that sends a signed HTTPS POST to every customer endpoint subscribed to an event, retries t
- Webhook System Design — How to send HTTP callbacks to other companies' servers reliably and safely: durable events, retries with backo
- WhatsApp — Design a mobile messaging service for one-to-one and group chats that delivers every message exactly once to e
- Write-Ahead Log (WAL) — The pattern behind durable state in databases, brokers and consensus systems: record each change in an append-
- Yelp — Design a local business directory where people find places near them, read and write reviews, and see a rating
- YouTube — Design a video platform where creators upload large files that are processed into many formats, and viewers ev
- YouTube Top K / Trending — Design a system that counts billions of video views a day and keeps a fresh list of the top videos per region
- ZooKeeper Deep Dive — Apache ZooKeeper, the coordination service: znodes, the ensemble and its ZAB protocol, what its consistency gu
- Zoom — Design a video meeting service where up to 1,000 people see and hear each other with low delay, across bad net
Start free on Cariara · Coding problems · System design studio