On this page
How to Use This List of System Design Interview Questions
Part 1: Classic System Design Interview Questions (The Original Course)
Part 2: Advanced System Design Interview Questions (Volume II)
Part 3: Real-World System Design Case Studies (Advanced Course)
Part 4: Modern System Design Interview Questions (Crash Course)
Final Thoughts: Conquering System Design Interview Questions
64+ System Design Interview Questions to Crack Your Next FAANG Interview


On This Page
How to Use This List of System Design Interview Questions
Part 1: Classic System Design Interview Questions (The Original Course)
Part 2: Advanced System Design Interview Questions (Volume II)
Part 3: Real-World System Design Case Studies (Advanced Course)
Part 4: Modern System Design Interview Questions (Crash Course)
Final Thoughts: Conquering System Design Interview Questions
System design interview questions are the single biggest hurdle standing between most engineers and a senior-level offer at companies like Google, Meta, Amazon, Netflix, Uber, and Stripe. Unlike coding questions, system design interview questions are open-ended, ambiguous, and demand that you reason about scale, trade-offs, reliability, and real-world constraints — all within 45 minutes. There is no single "right" answer, which is exactly what makes them so intimidating.
The good news? The list of system design interview questions that actually get asked is surprisingly finite. Interviewers at top tech companies recycle the same core set of problems — designing a URL shortener, designing Twitter, designing Uber, designing a distributed cache — because these problems exercise the fundamental building blocks of large-scale systems. Master this list, understand the trade-offs, and you will walk into any system design interview with a genuine sense of calm.
This guide compiles 64+ of the most frequently asked system design interview questions, organized by difficulty and source, with direct links to detailed walkthroughs from Design Gurus. Whether you are preparing for your first system design interview or brushing up before a senior staff loop, this list is the most complete, curated roadmap you will find anywhere on the internet.
How to Use This List of System Design Interview Questions
Before diving in, a quick word on strategy. Do not try to memorize answers to every system design interview question on this list. Instead:
- Start with the fundamentals. Learn the building blocks — load balancers, caching, sharding, replication, consistent hashing, CAP theorem, message queues — before tackling full problems.
- Follow a framework. Every system design interview question should be attacked the same way: clarify requirements, estimate scale, define APIs, sketch the high-level design, drill into data models and storage, then discuss bottlenecks and trade-offs.
- Practice 10–15 problems deeply. You do not need to solve all 64. You need to solve enough that you recognize patterns and can improvise on anything new.
- Focus on trade-offs, not solutions. Interviewers want to see how you think. "I chose NoSQL because we need horizontal scalability and eventual consistency is acceptable here" beats any amount of architecture jargon.
With that out of the way, let's get into the questions.
Part 1: Classic System Design Interview Questions (The Original Course)
These are the foundational system design interview questions that every candidate should be able to answer cold. They appear in some form at nearly every FAANG and FAANG-adjacent company, and they cover the core patterns — sharding, caching, fan-out, geo-indexing, rate limiting — that underlie almost every larger system.
Designing a URL Shortening Service like TinyURL
The quintessential starter problem. You will learn how to generate short, unique, collision-free keys at massive scale, how to handle billions of redirects per day, and how to choose between hashing, base62 encoding, and counter-based approaches. It is a deceptively simple problem that exercises sharding, caching, and read-heavy workload optimization.
Designing Pastebin
A close cousin of the URL shortener, but with the added twist of storing arbitrarily large text blobs, expiration logic, and analytics. This problem teaches you when to reach for object storage (like S3) versus a database, and how to design expiration at scale.
Designing Instagram
The canonical photo-sharing social network problem. Expect to discuss the newsfeed generation (push vs. pull vs. hybrid), photo storage, CDN delivery, follower graphs, and how to handle celebrities with millions of followers without melting your database.
Designing Dropbox
A file synchronization service that pushes you into chunking, deduplication, conflict resolution, and client-server sync protocols. This is one of the richest system design interview questions because it forces you to think about clients, not just servers.
Designing Facebook Messenger
Real-time messaging at billion-user scale. You will cover WebSockets vs. long-polling, message ordering, delivery guarantees, presence, group chats, and end-to-end encryption considerations.
Designing Twitter
Perhaps the most famous system design interview question of all time. The core challenge is timeline generation: do you fan out on write, fan out on read, or use a hybrid approach? You will also tackle trending topics, search, and the celebrity problem.
Designing Youtube or Netflix
Video streaming at global scale. Topics include video transcoding pipelines, adaptive bitrate streaming, CDN strategy, metadata storage, recommendations, and the economics of storage versus compute.
Designing Typeahead Suggestion
The autocomplete problem. You will design a trie-backed service that returns suggestions in under 100ms, handles personalization, and updates its corpus in near-real-time based on trending queries.
Designing an API Rate Limiter
Every serious API needs one. Learn the differences between token bucket, leaky bucket, fixed window, and sliding window algorithms, and how to implement rate limiting in a distributed environment without coordination overhead.
Designing Twitter Search
Indexing billions of tweets and serving sub-second search queries. Covers inverted indexes, sharding strategies, and how to keep the index fresh as new content arrives continuously.
Designing a Web Crawler
Building the front end of a search engine. You will tackle politeness policies, URL frontier management, duplicate detection, distributed crawling, and handling the dark corners of the web.
Designing Facebook's Newsfeed
One of the most frequently asked system design interview questions at Meta. Focuses on ranking, personalization, fan-out strategies, and how to balance freshness against relevance.
Designing Yelp or Nearby Friends
Geospatial indexing is the star of the show here. Learn about geohashing, quadtrees, and R-trees, and understand how to efficiently answer "what's near me?" at millions of queries per second.
Designing Uber Backend
Real-time matching of riders and drivers across a constantly moving map. This question combines geospatial indexing, dispatch algorithms, surge pricing, and handling the chaos of a mobile network.
Designing Ticketmaster
A deceptively tricky problem that exercises strong consistency, distributed locking, and inventory management. How do you prevent two people from buying the same seat when thousands are hitting "buy" at the same second?
Part 2: Advanced System Design Interview Questions (Volume II)
These system design interview questions tend to show up in senior and staff-level interviews. They build on the fundamentals but introduce harder constraints, more complex data flows, and domain-specific challenges.
YouTube Likes Counter
How do you build a counter that can handle millions of increments per second across a global audience without losing data or becoming a single point of contention? A masterclass in sharded counters and eventual consistency.
Design Reddit
A forum-style social platform with voting, sorting (hot, new, top), nested comments, and subreddit-level moderation. Teaches you how to rank content with constantly-changing scores.
Designing a Notification System
How do you reliably deliver billions of push notifications, emails, and SMS messages per day? Covers queue design, retry logic, user preference management, and rate limiting per recipient.
Design Google Calendar
Events, recurrences, time zones, invitations, and reminders. This system design interview question looks simple on the surface but quickly becomes a masterclass in data modeling and edge cases.
Design a Recommendation System for Netflix
Collaborative filtering, content-based filtering, and hybrid models at scale. Learn how a recommendation pipeline is structured in production, from batch training to online serving.
Design Gmail
An email service with search, labels, spam filtering, and storage in the billions of messages. Great practice for thinking about storage tiering and search over user-scoped data.
Design Google News (Global News Aggregator)
Crawling, deduplication, clustering of similar stories, and personalized ranking. A good test of your ability to combine batch and real-time pipelines.
Design Unique ID Generator
Building something like Twitter's Snowflake. You will weigh UUIDs, auto-increment, Snowflake-style IDs, and Flickr's ticket servers, and understand when each approach is appropriate.
Design Code Judging System like LeetCode
Sandboxed execution, job queues, result caching, and the challenge of running untrusted code safely at scale.
Design Payment System
Idempotency, double-entry bookkeeping, reconciliation, and exactly-once semantics. One of the hardest system design interview questions because money is involved and mistakes are unforgivable.
Design a Flash Sale for an E-commerce Site
A thundering herd problem in its purest form. Learn how to protect inventory, prevent overselling, manage queues fairly, and keep the site up when traffic spikes 1000x.
Design a Reminder Alert System
Scheduling billions of future tasks efficiently. A great deep-dive on timing wheels, priority queues, and distributed schedulers.
Part 3: Real-World System Design Case Studies (Advanced Course)
This section is different. Instead of open-ended "design X" questions, these are deep dives into real-world distributed systems that every senior engineer should understand. Interviewers at principal and staff levels often ask questions like "How does Cassandra handle replication?" or "Why does Kafka use a log-based design?" — and these case studies prepare you for exactly those discussions.
Dynamo
Amazon's seminal paper launched the NoSQL era. Learn about consistent hashing, vector clocks, quorum reads/writes, hinted handoff, and Merkle tree anti-entropy — all concepts that underpin DynamoDB, Cassandra, and Riak.
Cassandra
A masterclass in LSM-tree storage, tunable consistency, and gossip-based cluster management. If you are interviewing for a data infrastructure role, this case study is essential.
Kafka
The log-structured backbone of modern event-driven architectures. Understand partitions, consumer groups, delivery semantics (at-most-once, at-least-once, exactly-once), and the role of ZooKeeper.
Chubby
Google's distributed lock service. Chubby influenced ZooKeeper, etcd, and nearly every coordination system in use today. Learn about Paxos, leader election, and the sessions-and-events model.
Google File System (GFS)
The paper that launched a thousand distributed storage systems. Understand why GFS chose a single master, why it used 64MB chunks, and how it achieves consistency with minimal coordination.
Hadoop Distributed File System (HDFS)
The open-source successor to GFS. This case study compares and contrasts the two, and dives into HDFS high availability, federation, and the block report protocol.
BigTable
Google's wide-column store and the ancestor of HBase and Cassandra's data model. Learn about SSTables, tablet servers, and how BigTable leverages Chubby and GFS as building blocks.
Part 4: Modern System Design Interview Questions (Crash Course)
This final section is the most up-to-date collection of system design interview questions, reflecting what interviewers at top companies are asking in 2026. If you are short on time, this list is where to focus.
Design YouTube
A modern take on the classic video streaming problem, with more emphasis on transcoding pipelines, live streaming, and personalized recommendations.
Design Netflix
Focuses on the open connect CDN, microservices architecture, and chaos engineering principles that keep Netflix running.
Design a Distributed Cache (like Redis)
Building an in-memory key-value store with sharding, replication, eviction policies, and persistence. A favorite system design interview question for infrastructure-focused roles.
Design a Key-Value Store (like DynamoDB)
Goes deeper than the distributed cache, covering durability, partition tolerance, and the CAP trade-offs at the heart of every modern NoSQL database.
Design WhatsApp
End-to-end encrypted messaging at planet scale. Covers the Signal protocol, offline message delivery, and multi-device synchronization.
Design Discord
Real-time chat and voice for massive communities. Unique challenges include channel fan-out, voice server placement, and handling millions of members in a single guild.
Design a Distributed Rate Limiter
How do you enforce rate limits across hundreds of API servers without a central bottleneck? Covers sliding window counters, Redis-based approaches, and probabilistic algorithms.
Design a Metrics & Monitoring System (like Datadog/Prometheus)
Time-series data at massive ingestion rates. Covers compression, downsampling, and the push vs. pull collection debate.
Design Amazon S3
Object storage with eleven nines of durability. Learn about erasure coding, bucket sharding, and the consistency guarantees that make S3 the backbone of the modern internet.
Design Google Ads
The ad auction, bidding, serving, and click-through tracking pipeline. A great system design interview question for engineers who want to understand how ad tech actually works.
Design Amazon Shopping Cart
The original Dynamo use case. Learn why eventual consistency is acceptable here and how to handle cart merging across devices and sessions.
Design Stripe Payment Gateway
Idempotency keys, webhook delivery, PCI compliance, and the three-way dance between merchants, card networks, and banks.
Design Stock Exchange
A matching engine that processes millions of orders per second with microsecond latency. One of the most technically demanding system design interview questions you can be asked.
Design Facebook "People You May Know"
Graph traversal at social network scale. Learn about friend-of-friend computation, offline graph processing, and how to keep suggestions fresh.
Design LinkedIn Connections
First, second, and third-degree connection computation over a graph of a billion users. Covers graph databases, caching, and offline processing.
Design Twitter Timeline
A focused deep-dive on the hardest part of designing Twitter: generating a personalized, ranked timeline in under 200ms.
Design a Collaborative Whiteboard (Miro)
Real-time collaboration with CRDTs or operational transforms. A rising star among system design interview questions as remote work tooling becomes more important.
Design Google Docs
Another collaborative editing problem, with a focus on operational transforms, presence, and conflict resolution at scale.
Design an Ad Click Aggregator
Stream processing, deduplication, and exactly-once semantics for billions of ad clicks per day. A fantastic test of your data pipeline knowledge.
Design a Live Comment Streaming Service (Twitch Chat)
Millions of viewers pushing thousands of messages per second into a single chat room. Covers pub/sub architectures, message throttling, and chat moderation at scale.
Design a Code Deployment System
Blue-green deployments, canaries, rollbacks, and the orchestration layer that gets your code from commit to production safely.
Design an API Gateway
Authentication, rate limiting, routing, and request transformation at the edge of your microservices architecture.
Design Amazon Lambda
Serverless compute: cold starts, container reuse, multi-tenancy, and the clever engineering that makes pay-per-millisecond billing possible.
Design ChatGPT
The newest and one of the most fashionable system design interview questions. Covers LLM serving infrastructure, GPU scheduling, streaming token responses, and conversation state management.
Design Typeahead/Autocomplete
A modern, more detailed treatment of the classic autocomplete problem, with emphasis on personalization and trending queries.
Design Google Search
The full stack: crawling, indexing, ranking, and serving. Ambitious but essential reading.
Design AirBnB
A two-sided marketplace with search, booking, reviews, and payment. Great practice for thinking about multi-entity data models.
Design Uber/Lyft
A modernized version of the classic ridesharing problem, with more emphasis on surge pricing, ETA prediction, and driver dispatch algorithms.
Design a Distributed Lock Manager (like Chubby)
Building coordination primitives for distributed systems. Covers Paxos, Raft, fencing tokens, and the subtle bugs that lurk in distributed locks.
Design a Distributed Job Scheduler (like Cron)
Reliable scheduling of recurring and one-off tasks across a cluster. Covers leader election, job queues, and failure handling.
Final Thoughts: Conquering System Design Interview Questions
Sixty-four system design interview questions is a lot, but you do not need to master every single one. Here is the pragmatic approach:
For junior to mid-level engineers, focus on Part 1 (Classic) and the first ten problems in Part 4 (Modern). These 25 questions cover 90% of what you will see in a typical interview loop.
For senior engineers, add Part 2 (Volume II) and another 10–15 questions from Part 4. At this level, interviewers expect you to reason confidently about data pipelines, consistency models, and operational concerns.
For staff and principal engineers, Part 3 (Real-World Case Studies) becomes essential. You should be able to discuss the internals of Cassandra, Kafka, and S3 the same way you discuss how a hash map works. At this level, interviewers are evaluating whether you could architect systems like these, not just use them.
System design interview questions reward deep understanding over memorization. Every time you work through one, ask yourself: What are the two or three key trade-offs here? What would I change if the read-to-write ratio flipped? What if the data had to be strongly consistent? What breaks at 10x the scale? These are the questions that separate candidates who have memorized answers from candidates who actually understand distributed systems.
Bookmark this list, work through it steadily, and by the time your interview loop arrives, you will find yourself thinking less about "what's the right answer?" and more about "which interesting trade-off should I dive into first?" That shift in mindset is exactly what gets you the offer.
Good luck — and go design something great.
What our users say
AHMET HANIF
Whoever put this together, you folks are life savers. Thank you :)
Steven Zhang
Just wanted to say thanks for your Grokking the system design interview resource (https://lnkd.in/g4Wii9r7) - it helped me immensely when I was interviewing from Tableau (very little system design exp) and helped me land 18 FAANG+ jobs!
Arijeet
Just completed the “Grokking the system design interview”. It's amazing and super informative. Have come across very few courses that are as good as this!
Designgurus on Substack
Deep dives, systems design teardowns, and interview tactics delivered daily.
Access to 50+ courses
New content added monthly
Certificate of completion
$29.08
/month
Billed Annually
Recommended Course

Grokking the System Design Interview
169,039+ students
4.7
Grokking the System Design Interview is a comprehensive course for system design interview. It provides a step-by-step guide to answering system design questions.
View Course