System Design Case Studies
31 chaptersThis page contains all chapters in this theme. Open chapters in sequence or use this page as a section map.
How the System Design task section is structured
Original ContenteasyIntroductory section map with 30 cases: from infrastructure primitives to product systems with different architectural constraints.
Open chapterURL Shortener (TinyURL)
Case StudymediumClassic task: base62 encoding, ID generation (Snowflake), caching strategy and 301 vs 302 redirect.
Open chapterRate Limiter
Case StudymediumClassic task: Token Bucket, Sliding Window, Redis + Lua scripts, distributed rate limiting.
Open chapterNotification System
Case StudymediumPush notifications (APNs, FCM), email, SMS: device token management, delivery guarantees, retry patterns.
Open chapterAPI Gateway
Case StudymediumClassic task: routing, authentication, rate limiting, load balancing, request/response transformation.
Open chapterContent Delivery Network (CDN)
Case StudymediumClassic problem: Push vs Pull CDN, cache invalidation, Origin Shield, geographic routing.
Open chapterSearch System (Google/Elasticsearch)
Case StudymediumClassic task: inverted index, web crawling, ranking (BM25, PageRank), distributed search.
Open chapterRecommendation System
Case StudymediumClassic task: candidate generation, ranking, cold start, feature store, exploration/exploitation, and recommendation quality metrics.
Open chapterML Ops Pipeline
Case StudymediumClassic task: feature pipelines, model registry, offline/online parity, rollout safety, and drift monitoring.
Open chapterFeature Store & Model Serving
Case StudyhardClassic case on designing the Feature Store + Model Serving pair for an ML platform with online/offline parity, point-in-time correctness, and training-serving skew controls.
Open chapterWeb Crawler
Case StudymediumClassic task: distributed URL frontier, politeness/robots.txt, deduplication, re-crawl and ingestion into the search index.
Open chapterObject Storage (S3)
Case StudymediumClassic task: metadata/data separation, durability (11 nines), erasure coding, multipart upload.
Open chapterDistributed File System (GFS/HDFS)
Case StudymediumClassic task: master/data nodes, block replication, metadata management, recovery and high throughput I/O.
Open chapterChat System
Case StudymediumClassic task: WebSocket, real-time messaging, presence, groups, synchronization and scaling.
Open chapterVideo hosting feed
Case StudymediumPublic interview at C++ Russia 2022: transcoding, fan-out strategies, CDN and asynchronous processing.
Open chapterTwitter/X
Case StudymediumClassic problem: feed generation, fanout on write vs read, trending topics, search.
Open chapterA/B Testing platform
Case StudymediumExperiment system design: hash-based assignment, layer architecture, event streaming and statistical analysis.
Open chapterGoogle Maps / Proximity Service - geosearch
Case StudymediumClassic task: geo-index, nearby search, ranking, caching, regional sharding and latency-budget for a map.
Open chapterReal-time Gaming
Case StudymediumClassic task: authoritative game server, matchmaking, state sync, anti-cheat and low-latency networking.
Open chapterSmart parking system
Case StudymediumPublic interview at C++ Russia 2023: distributed locking and protection against double booking.
Open chapterHotel booking system
Case StudymediumPublic interview at ArchDays 2022: overbooking, inventory model, competition and scaling.
Open chapterAirbnb
Case StudymediumClassic task: geo-search, availability calendar, dynamic pricing, two-sided marketplace.
Open chapterUber/Lyft
Case StudymediumClassic problem: real-time location, driver-rider matching, ETA calculation, surge pricing.
Open chapterPayment System - payment system
Case StudymediumClassic task: idempotency, authorization/capture/refund, payment orchestration, ledger and reconciliation.
Open chapterKey-Value Database
Case StudymediumClassic task: partitioning, replication, quorum read/write, anti-entropy and hot partition mitigation.
Open chapterDistributed Message Queue
Case StudymediumClassic task: partitioned log, consumer groups, retry/DLQ, delivery semantics and backpressure.
Open chapterAd Click Event Aggregator
Case StudymediumClassic task: stream ingestion, dedupe, windowed aggregations, freshness SLA and billing accuracy.
Open chapterSocial Media Infrastructure View
Case StudymediumClassic task: SLO-driven social platform architecture, failure isolation, graceful degradation and observability.
Open chapterAccess Control for Media App
Case StudymediumClassic task: RBAC/ABAC/ReBAC, policy decision point, audit trail and cache invalidation.
Open chapterTop Products Dashboard
Case StudymediumClassic task: analytical serving layer, pre-aggregations, metric consistency and data freshness.
Open chapterInterplanetary Distributed Computing System
Case StudymediumClassic task: delay-tolerant networking, store-and-forward transport, autonomous nodes, and eventual synchronization.
Open chapter