๐ Interview Prep
System Design
Scaling, caching, databases, queues and the classic "design X" questions, each with a diagram you can step through.
๐ Learn it from scratch
Visual, hands-on lessons for every pattern in this topic. Do the lesson, then come back and the questions click.
100 questions, most asked first
Ranked by how often each question comes up in real interviews. #1 is the most common.
All patternsDesign interviewScaling basicsCachingLoad balancingDatabases at scaleConsistent hashingCAP & consistencyQueues & asyncRate limitingCDNs & storageReal-timeReliability
#1๐Design a URL shortener (like bit.ly)Design interviewMediumFree#2๐How do you scale a web app from 1 to 1 million users?Scaling basicsMediumFree#3๐Caching strategiesCachingMediumFree#4๐Load balancersLoad balancingMediumFree#5๐Scaling the databaseDatabases at scaleHardFree#6๐Consistent hashingConsistent hashingHardFree#7๐The CAP theoremCAP & consistencyMediumFree#8๐Message queues and background jobsQueues & asyncMediumFree#9๐Design a rate limiterRate limitingMediumFree#10๐Serving images and video at scaleCDNs & storageMediumFree๐Unlock 90 more System Design questions ยท all 1,200 questions for $39/year (about 11ยข a day)See full access#11๐Design a chat app (like WhatsApp)Real-timeHard๐#12๐Design a news feed (like Twitter or Instagram)Design interviewHard๐#13๐Design a notification systemQueues & asyncMedium๐#14๐Design search autocomplete (backend)Design interviewHard๐#15๐Design a web crawlerDesign interviewHard๐#16๐Design a distributed cache (like Redis Cluster)CachingHard๐#17๐Design a photo-sharing app (like Instagram)Design interviewHard๐#18๐Design a video platform (like YouTube)CDNs & storageHard๐#19๐Design a ride-sharing app (like Uber)Real-timeHard๐#20๐Design a ticket booking system (like Ticketmaster)CAP & consistencyHard๐#21๐Design a unique ID generatorDesign interviewMedium๐#22๐Design a distributed key-value storeCAP & consistencyHard๐#23๐Design a payment systemDesign interviewHard๐#24๐Design a real-time leaderboardCachingMedium๐#25๐Design file sync (like Google Drive or Dropbox)CDNs & storageHard๐#26๐Design a metrics and alerting systemReliabilityHard๐#27๐What does an API gateway do?Load balancingMedium๐#28๐Design an online code judge (like LeetCode)Queues & asyncHard๐#29๐Design a pastebinDesign interviewEasy๐#30๐Add full-text search to a websiteDatabases at scaleMedium๐#31๐Monolith vs microservicesScaling basicsMedium๐#32๐Back-of-the-envelope estimationDesign interviewMedium๐#33๐Latency numbers every engineer should knowScaling basicsMedium๐#34๐Availability, SLAs and the "nines"ReliabilityMedium๐#35๐Circuit breakers, timeouts and retriesReliabilityMedium๐#36๐Distributed transactions and the saga patternQueues & asyncHard๐#37๐Event-driven architecture and pub/subQueues & asyncMedium๐#38๐Sharding strategiesDatabases at scaleHard๐#39๐Bloom filtersCachingHard๐#40๐Leader election and consensus (Raft)CAP & consistencyHard๐#41๐Blue-green, canary and rolling deploymentsReliabilityMedium๐#42๐Logs, metrics and traces (observability)ReliabilityMedium๐#43๐Backups and disaster recovery (RPO and RTO)ReliabilityMedium๐#44๐Going multi-regionCAP & consistencyHard๐#45๐Backpressure and load sheddingReliabilityHard๐#46๐Scaling WebSockets to millions of connectionsReal-timeHard๐#47๐The transactional outbox patternQueues & asyncHard๐#48๐CQRS and event sourcingDatabases at scaleHard๐#49๐Hot keys and the thundering herdCachingHard๐#50๐Edge computing and serverlessCDNs & storageMedium๐#51๐Design a collaborative editor (like Google Docs)Real-timeHard๐#52๐Design "restaurants near me" (like Yelp)Databases at scaleMedium๐#53๐Design a distributed job scheduler (cron at scale)Queues & asyncHard๐#54๐Design reliable webhook deliveryQueues & asyncMedium๐#55๐Design an ad-click counter at massive scaleQueues & asyncHard๐#56๐Design an e-commerce cart and checkoutCAP & consistencyHard๐#57๐Design live comments for a stream (like Twitch chat)Real-timeHard๐#58๐Design a recommendation systemDesign interviewHard๐#59๐Design centralized loggingReliabilityMedium๐#60๐Design an online learning platform (like this one)Design interviewMedium๐#61๐Forward proxy vs reverse proxyLoad balancingEasy๐#62๐Stateless vs stateful servicesScaling basicsMedium๐#63๐Sticky sessionsLoad balancingMedium๐#64๐Block vs file vs object storageCDNs & storageMedium๐#65๐Strong, eventual and read-your-writes consistencyCAP & consistencyHard๐#66๐B-tree vs LSM-tree storage enginesDatabases at scaleHard๐#67๐At-most-once, at-least-once, exactly-onceQueues & asyncHard๐#68๐Cache eviction policiesCachingMedium๐#69๐Security in system design interviewsReliabilityMedium๐#70๐Data pipelines, warehouses and lakesDatabases at scaleMedium๐#71๐Design view and like countersCachingMedium๐#72๐Design price alerts (stocks or flights)Queues & asyncHard๐#73๐Design an email service (like Gmail)Databases at scaleHard๐#74๐Design a calendar with schedulingDesign interviewMedium๐#75๐Design a distributed message queue (like Kafka)Queues & asyncHard๐#76๐Design a feature flag systemReliabilityMedium๐#77๐Design a content moderation pipelineQueues & asyncMedium๐#78๐Design video calling (like Zoom)Real-timeHard๐#79๐Design maps and turn-by-turn routing (like Google Maps)Design interviewHard๐#80๐Design a live poll or voting systemCAP & consistencyMedium๐#81๐How to run a system design interviewDesign interviewMedium๐#82๐Non-functional requirementsDesign interviewEasy๐#83๐How to choose a database for a designDatabases at scaleMedium๐#84๐Distributed locksCAP & consistencyHard๐#85๐Time, clocks and ordering eventsCAP & consistencyHard๐#86๐Service discoveryLoad balancingMedium๐#87๐Heartbeats, failure detection and gossipReliabilityHard๐#88๐Cache invalidation strategiesCachingHard๐#89๐API versioning and backward compatibilityDesign interviewMedium๐#90๐Graceful degradationReliabilityMedium๐#91๐Design trending topics (top-K heavy hitters)Queues & asyncHard๐#92๐How does object storage (like S3) work?CDNs & storageHard๐#93๐AutoscalingScaling basicsMedium๐#94๐Containers and Kubernetes in system designScaling basicsMedium๐#95๐Design a banking ledgerCAP & consistencyHard๐#96๐Design a food delivery appReal-timeHard๐#97๐Design a hotel booking systemCAP & consistencyMedium๐#98๐Designing for privacy (GDPR) and data deletionReliabilityMedium๐#99๐Designing for costScaling basicsMedium๐#100๐Walk me through the design of something you builtDesign interviewMedium๐