โ† 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.

#1Design a URL shortener (like bit.ly)Design interviewMediumFree#2How do you scale a web app from 1 to 1 million users?Scaling basicsMediumFree#3Caching strategiesCachingMediumFree#4Load balancersLoad balancingMediumFree#7The CAP theoremCAP & consistencyMediumFree#8Message queues and background jobsQueues & asyncMediumFree#9Design a rate limiterRate limitingMediumFree#10Serving images and video at scaleCDNs & storageMediumFreeUnlock 41 more System Design questions ยท all 1,200 questions for $39/year (about 11ยข a day)See full access#13Design a notification systemQueues & asyncMedium๐Ÿ”’#21Design a unique ID generatorDesign interviewMedium๐Ÿ”’#24Design a real-time leaderboardCachingMedium๐Ÿ”’#27What does an API gateway do?Load balancingMedium๐Ÿ”’#30Add full-text search to a websiteDatabases at scaleMedium๐Ÿ”’#31Monolith vs microservicesScaling basicsMedium๐Ÿ”’#32Back-of-the-envelope estimationDesign interviewMedium๐Ÿ”’#33Latency numbers every engineer should knowScaling basicsMedium๐Ÿ”’#34Availability, SLAs and the "nines"ReliabilityMedium๐Ÿ”’#35Circuit breakers, timeouts and retriesReliabilityMedium๐Ÿ”’#37Event-driven architecture and pub/subQueues & asyncMedium๐Ÿ”’#41Blue-green, canary and rolling deploymentsReliabilityMedium๐Ÿ”’#42Logs, metrics and traces (observability)ReliabilityMedium๐Ÿ”’#43Backups and disaster recovery (RPO and RTO)ReliabilityMedium๐Ÿ”’#50Edge computing and serverlessCDNs & storageMedium๐Ÿ”’#52Design "restaurants near me" (like Yelp)Databases at scaleMedium๐Ÿ”’#54Design reliable webhook deliveryQueues & asyncMedium๐Ÿ”’#59Design centralized loggingReliabilityMedium๐Ÿ”’#60Design an online learning platform (like this one)Design interviewMedium๐Ÿ”’#62Stateless vs stateful servicesScaling basicsMedium๐Ÿ”’#63Sticky sessionsLoad balancingMedium๐Ÿ”’#64Block vs file vs object storageCDNs & storageMedium๐Ÿ”’#68Cache eviction policiesCachingMedium๐Ÿ”’#69Security in system design interviewsReliabilityMedium๐Ÿ”’#70Data pipelines, warehouses and lakesDatabases at scaleMedium๐Ÿ”’#71Design view and like countersCachingMedium๐Ÿ”’#74Design a calendar with schedulingDesign interviewMedium๐Ÿ”’#76Design a feature flag systemReliabilityMedium๐Ÿ”’#77Design a content moderation pipelineQueues & asyncMedium๐Ÿ”’#80Design a live poll or voting systemCAP & consistencyMedium๐Ÿ”’#81How to run a system design interviewDesign interviewMedium๐Ÿ”’#83How to choose a database for a designDatabases at scaleMedium๐Ÿ”’#86Service discoveryLoad balancingMedium๐Ÿ”’#89API versioning and backward compatibilityDesign interviewMedium๐Ÿ”’#90Graceful degradationReliabilityMedium๐Ÿ”’#93AutoscalingScaling basicsMedium๐Ÿ”’#94Containers and Kubernetes in system designScaling basicsMedium๐Ÿ”’#97Design a hotel booking systemCAP & consistencyMedium๐Ÿ”’#98Designing for privacy (GDPR) and data deletionReliabilityMedium๐Ÿ”’#99Designing for costScaling basicsMedium๐Ÿ”’#100Walk me through the design of something you builtDesign interviewMedium๐Ÿ”’