โ† All topics

๐Ÿ— Interview Prep

System Design

Scaling, caching, databases, queues and the classic "design X" questions, each with a diagram you can step through.

100 questions, most asked first

Ranked by how often each question comes up in real interviews. #1 is the most common.

#5Scaling the databaseDatabases at scaleHardFree#6Consistent hashingConsistent hashingHardFreeUnlock 46 more System Design questions ยท all 1,200 questions for $39/year (about 11ยข a day)See full access#11Design a chat app (like WhatsApp)Real-timeHard๐Ÿ”’#12Design a news feed (like Twitter or Instagram)Design interviewHard๐Ÿ”’#14Design search autocomplete (backend)Design interviewHard๐Ÿ”’#15Design a web crawlerDesign interviewHard๐Ÿ”’#16Design a distributed cache (like Redis Cluster)CachingHard๐Ÿ”’#17Design a photo-sharing app (like Instagram)Design interviewHard๐Ÿ”’#18Design a video platform (like YouTube)CDNs & storageHard๐Ÿ”’#19Design a ride-sharing app (like Uber)Real-timeHard๐Ÿ”’#20Design a ticket booking system (like Ticketmaster)CAP & consistencyHard๐Ÿ”’#22Design a distributed key-value storeCAP & consistencyHard๐Ÿ”’#23Design a payment systemDesign interviewHard๐Ÿ”’#25Design file sync (like Google Drive or Dropbox)CDNs & storageHard๐Ÿ”’#26Design a metrics and alerting systemReliabilityHard๐Ÿ”’#28Design an online code judge (like LeetCode)Queues & asyncHard๐Ÿ”’#36Distributed transactions and the saga patternQueues & asyncHard๐Ÿ”’#38Sharding strategiesDatabases at scaleHard๐Ÿ”’#39Bloom filtersCachingHard๐Ÿ”’#40Leader election and consensus (Raft)CAP & consistencyHard๐Ÿ”’#44Going multi-regionCAP & consistencyHard๐Ÿ”’#45Backpressure and load sheddingReliabilityHard๐Ÿ”’#46Scaling WebSockets to millions of connectionsReal-timeHard๐Ÿ”’#47The transactional outbox patternQueues & asyncHard๐Ÿ”’#48CQRS and event sourcingDatabases at scaleHard๐Ÿ”’#49Hot keys and the thundering herdCachingHard๐Ÿ”’#51Design a collaborative editor (like Google Docs)Real-timeHard๐Ÿ”’#53Design a distributed job scheduler (cron at scale)Queues & asyncHard๐Ÿ”’#55Design an ad-click counter at massive scaleQueues & asyncHard๐Ÿ”’#56Design an e-commerce cart and checkoutCAP & consistencyHard๐Ÿ”’#57Design live comments for a stream (like Twitch chat)Real-timeHard๐Ÿ”’#58Design a recommendation systemDesign interviewHard๐Ÿ”’#65Strong, eventual and read-your-writes consistencyCAP & consistencyHard๐Ÿ”’#66B-tree vs LSM-tree storage enginesDatabases at scaleHard๐Ÿ”’#67At-most-once, at-least-once, exactly-onceQueues & asyncHard๐Ÿ”’#72Design price alerts (stocks or flights)Queues & asyncHard๐Ÿ”’#73Design an email service (like Gmail)Databases at scaleHard๐Ÿ”’#75Design a distributed message queue (like Kafka)Queues & asyncHard๐Ÿ”’#78Design video calling (like Zoom)Real-timeHard๐Ÿ”’#79Design maps and turn-by-turn routing (like Google Maps)Design interviewHard๐Ÿ”’#84Distributed locksCAP & consistencyHard๐Ÿ”’#85Time, clocks and ordering eventsCAP & consistencyHard๐Ÿ”’#87Heartbeats, failure detection and gossipReliabilityHard๐Ÿ”’#88Cache invalidation strategiesCachingHard๐Ÿ”’#91Design trending topics (top-K heavy hitters)Queues & asyncHard๐Ÿ”’#92How does object storage (like S3) work?CDNs & storageHard๐Ÿ”’#95Design a banking ledgerCAP & consistencyHard๐Ÿ”’#96Design a food delivery appReal-timeHard๐Ÿ”’