Vote for the Next Question
We'll take the top voted question every couple weeks and add it to the list of Common Problem Breakdowns.
430
Design a bidding system
User's can post any item for auction/bidding at any time Bidders can bid on any existing item any number of times 10M new auction items are added everyday & 100M new bids come in every day User wins an item if there are no higher bids in the next 1hour User has to pay for the item within 10 mins of winning the item User's can only bid for 1 count of an item at a time.
308
Design a real-time document editors
Like Google Docs or Notion, or even Excalidraw.
213
Design a Flash Sale Site
Limited number of items for sale with millions of active buyers fighting for remaining items
198
Distributed Job scheduler
10 millions jobs to be scheduled every second, 100B jobs per day, job type flexibility (java, python etc).
181
Design Instagram
Design a photo-sharing service like Instagram, where users can upload photos to share them with other users.
171
Create Distributed Cache
161
Design Stock Exchange Platform (Robinhood)
I think this is an extremely interesting problem and I believe if you watch the Jane Street talks, they actually talk about how they do almost everything in memory with almost no Storage or database at all (or in memory databases only).
132
Design GoogleDoc
A realtime document editor
105
Design Facebook post privacy functionality
Users have the ability to choose the privacy of their posts (Only me, Friends, Public). If possible, also get into Friends of friends and custom lists.
96
Design "likes" counter
Design a system that tracks the number of “likes” (posts / tweets / photos) at scale.
96
Design distributed rate limiter
- Design a horizontally scalable distributed rate limiting solution to prevent facebook's public api abuse
80
Design the auto-complete/type-ahead backend
Design the backend for an auto-complete system, like Meta, Google or Amazon.
70
Design a recommendation system for netflix/prime/Hulu to recommend movie
Design a recommendation system for netflix/prime/Hulu to recommend movies or TV shows
67
Deep Dive - DynamoDB
66
Design meta chess
- Design meta chess. Store all the games and events and player moves. How do you design "undo" if each player can undo their last (or their two last) move(s)? Compute and maintain the scoreboard of billions of players? Top 100 games and winners.
65
Design CamelCamelCamel
price tracking system
65
Payment System
A payment system similar to Stripe or PayPal.
52
Deep Dive - PostgreSQL
51
Create Key/Value Store
51
Deep Dive - Cassandra
49
Design Metrics Monitoring and Alerting System
48
Deep Dive - Kafka
45
Design a leaderboard
User's have a list of friends and can see their leaderboard ranking among their friends and among global users. System should scale to millions of users per day.
38
Deep Dive Elastic Search
37
Design distributed message queue
Functional Requirements - Client should be able to create a queue - Producer should be able to send message - Consumers should be able to receive messages - Consumer should be able to delete a message - delete queue.
37
Design Google Calendar
Design a calendar service that people can create events, invite others and suggest meeting rooms
29
Redo Top K
The current top K solution is not up to the mark. It doesn't dive into critical details like how is the heap refreshed and at what cadence.
28
Distributed Logging and analysis
Petabytes of data per second ingestion, petabytes of data per second while querying.
27
Design Status Search
Context: Every user can post something as "status", at any given time, one user can only have one status (vs multiple posts). Build a search system which should enable users to search the statuses.
23
Design Spotify
22
Design meta chess
- Design meta chess. Store all the games and events and player moves. How do you design "undo" if each player can undo their last (or their two last) move(s)? Compute and maintain the scoreboard of billions of players? Top 100 games and winners.
20
Design YouTube
20
Recoomendation system in Netflix
19
Design a Parking Lot
19
Design payment system
Lime Venmo, PayPal
18
Design a Single Server Memcached
Might also extend that to cluster level memcached as well.
18
Design a blob store like s3
15
Design a notification service
Notification to other services or notification to users
15
Design ChatGPT
14
Design amazon product/inventory management
14
Design url shorter system.
Design distributed url shorter systems like tinyurl, linkedin etc.
13
Design a billing system
13
Design CDN
we have to build content delivery network
12
Design GoogleMeet
Online realtime video conferencing tool
12
Design web crawler
Meta twists this question a bit and asks peer to peer approach assuming we have 10,000 phones or machines and use those to crawl the web. No system design course has clearly demonstrated this so far, so I am really interested to see your take Evan.
12
Design Booking.com
Hotel booking app like Booking.com, Agoda etc
12
Design a Rate Limiter
11
Design FIFO Pubsub system
Design a Pubsub system that makes guarantee FIFO delivery. I was asked this question during my interview.
11
Design ZooKeeper
10
Design Cab Sharing / Ride Sharing App
Multiple (3-4) user can share a cab, it can be either like Uber cab sharing or something like if I am driving from point a to b as a user I post that & anyone willing to travel on same route can pair with me and pay me for the part of ride, quickride
10
Deep Dives - Kafka
10
Design Google News
Any news aggregator service
10
Design Online Judge
A online coding judge like Leetcode which hosts coding contests, allows users to test and submit code, tallies scores and maintains a leaderboard
10
Tagging System
multiple services would like to store tags Cofluence for page, Jira for tickets and etc with CRUD and things like all pages per tag, dashboards and etc.
9
Mock interview to get requirements
This is not an interview question specifically, but with both Evan and Stefan, I think it could be helpful to watch how an interviewee susses out requirements in a mock scenario without having practiced or knowing the problem.
9
Distribute 6M burgers in 10 minutes.
No one should get more than 1 burger. We should distribute exactly 6M burgers.
9
Job scheduler
- scheduling job - dag scheduling
9
Design Live Video Streaming System
Designing a Live Video Streaming System Like ESPN
8
Design chess game between human and ai
- Determine how points are assigned for every move and how to determine winner/looser/draw state
8
Design an E-Commerce System
Design an E-Commerce system with a functionality to handle billion $ sale days.
8
Transactions deep dive
Can you please explain how transactions work internally. For example how rollback will work in a simple in-memory key value store. Also it will be great if you can touch upon the distributed transactions. Thanks.
8
Design I18N and L10N system
- Build system that helps developers to add new strings in application - Also allow auditing of those string - string should handle pronouns, numbers, format, unit conversion etc.... - manual verification vs ML verification - enable translators
8
Design digital wallet
Users can check the wallet balance, add/view transactions and support transfer between accounts.
7
Design Twitter
7
Design Amazon Lockers
1. User can select nearby lockers at checkout. 2. System should generate OTP until used by user to unlock locker.
7
Design a bidding system
Where users can bid
7
Design weather app
7
Design Machine Learning Platform
7
design Chat GPT
6
Design YouTube
6
Blocking IPs from a specific country
We can't serve data to banned IP addresses. This country exposes a web interface - http://security.gov.x/ - that just tells us for any given IP address if it’s banned or not. you have to solve it within two months so no need hot fix but no redesign.
6
Design a Feature Flag System
- Millions of users - Target individual users and % of users - Admin UI - Backend only
6
Google photos
6
How to design a Ledger System for Payment Gateway
Asked in Stripe
6
Design Shopify
Design Shopify, an e-commerce platform where users can easily create and manage isolated web stores with customizable templates, APIs, plugins, and automated hosting. Ensure scalability, security, and efficient monitoring and maintenance.
6
Design Stock Exchange
A lot of system design for stock exchanges out there focus on distributed systems rather than the requirement of low latency order matching which should be done in memory rather than utilizing queues and what not. Would love your perspective
5
Design Steam
Game creators, can create new games, publish and upload files. Users can search for games, add to cart, buy and download.
5
Design a reminder service
Users can schedule a onetime or recurring reminder which will send an email / push notification to the user. The reminder should be delivered exactly once within 5 minutes of the time. It should scale to millions of users.
5
Design WhatsApp
5
Design subscription system
Got asked at Google
5
Design Zoom
wonder how this differs from designing whats app
5
Design Google Maps
5
Deep dive on Elastic Search
4
Design whatsapp/messenger
4
Design Advertising Platform for Ad Reporting
1. Analytical Load Serving 2. Data Skewness handling 3. Realtime Reporting
4
Design Proximity Service like Yelp
4
PSP like VISA
Design a payment service provider like VISA.
4
Distributed high scale telemetry system
Telemetry/Metrics system such as Datadog, Splunk etc
4
Design google calendar
Focusing on the notification system (users can set reminders with frequency/interval, i.e. once a week, twice a month, etc.)
4
Design google calendar
Focusing on the notification system (users can be in different time zones, each reminder should be sent only once, set reminders with frequency/interval, i.e. once a week, twice a month, etc.)
4
Design a money transfer application
4
Design a Notification Delivery System.
Something like One signal.
4
Design Google Calendar
google calendar - unique link generation, emphasis on how to store a meeting invite with multiple participants - which is recurring, reads (across globe) and writes - create, update, delete are efficient
4
Deep Dive - ETCD/Zookeeper
4
Design Robinhood
- Live stock price updates per second of 7000 tickers - Getting historical data of a stock for a timeframe for displaying the chart. The stock exchange in this case gives all the data points for a stock. For 1 month, all the data points each second
3
Design a time series db
3
HTTP downloader
3
Create Distributed Cache
3
We could use a dark mode on this site
3
Design credit card system
System to process millions of transactions, always validating the customer's limit in every transaction
3
Design a distributed counter
3
Design Coding Contest Platform
3
Designing a key value store like Redis
3
Design Distributed Logging/Tracing
A system like jaeger
3
Design Code Deployment
Global and fast code deployment system.The system take the code. Builds the code into a binary and deploys the code globally in an efficient way. scale and deploy code to application servers all around the world. Addition NF requirements
3
Design Peer to Peer Payment System
Like Venmo/Cash app allowing people to send money to other people.
3
Design a Distributed Job Scheduler for Millions of Tasks in Daily Operation
3
Design a hotel booking system
3
Design a Fitness app
Tracks biometrics based on geolocation and activity
3
Design Github/Gitlab
3
Design Robinhood
Robinhood - how it gives real time stock data and handles market crashes
3
short url system design
system design for generating short urls and routing the short urls
3
Design a proximity Service
3
Deep Dive - ElasticSearch
3
Design Google sheets
3
Design Slack
2
Design an in-memory db
2
Design a food delivery app
A food delivery app like doordash or swiggy or zomato
2
Design a rate limiter
2
Planet Scale Metrics Ingestion Platform
Backend infrastructure for a metrics platform that scales for several zones/regions across the globe for ingestion and support queries for alerts, and on-demand incident response
2
Design video sharing website (twitch) copyright video detection
Design a service similar to twitch that flags and deletes copyrighted audio in videos if another user has uploaded it (copyright infringement)
2
Design Gmail/Outlook
send and receive an email including attachments, filter and search through emails, and add tags to label emails
2
Web Crawler
Design a webcrawler
2
Design a payroll system
For HR type software
2
Design IFTTT
2
design jenkins
Design CI/CD system such as jenkins.
2
Design a messaging queue like Kafka
2
Design ACL like Notion
In Notion ACL can be implemented on individuals, group of individuals as well as on pages where if a user has access to parent page then the user also has access to all the child/nested page.
2
Design Version Control system
Design a system like github
2
Tagging service system design
https://leetcode.com/discuss/interview-question/system-design/838025/Design-a-tagging-system-like-tags-used-in-stack-overflow
2
Design a distributed lock with TTL
2
stock exchange
2
Continuous Integration System
2
Design Youtube
Design Youtube for upload, search and view features
2
Design Live Streaming System
Like Hotstar, Youtube or Netflix where millions of users are watching concurrently. How to minimize the live feed latency and scale for sudden spike and drop in traffic. System should be able to handle 50M-100M concurrent users at a time.
2
Deep Dive - Raft v/s Paxos
2
Recommendation Systems
Video recommendation, Product recommendation etc..
2
Secure System Design for existing problems
Would be great to have some examples on how to approach secure system design interviews. Most of these focus on the SWE perspective but would be helpful to refocus around security engineering interviews.
2
Design Snapchat
2
Design real-time livescore sport
Like SofaScore, where Users can watch what is happening real time in a particular match. Taking care of important matches like World Cup Final or Super Bowl with inputs flowing manually or automatic from stadiums
2
Views and likes of a post in twitter(X)
Design a scalable system to handle the millions of views and likes of post in twitter. We should be able to scale for both read and write
2
Design Zillow
2
Create a digital wallet
2
Sports Live Streaming
Streaming sports matches to millions of users in real time.
2
Gmail
2
Phising detection system
Design a phising detection system
2
Phising detection system
Design a phising detection system
2
Online Stock brokerage
2
Design a multiplayer game matchmaking system
User's should be able to join matches of 12 players. Matching should be as fast as possible while keeping players close together. Players should be matched on their skill level (Win:Loss ratio etc). Should support ~1M players concurrently.
2
Design Venmo/Paypal
Fintech being on the rise, design a system like venmo or paypal that makes it easy for users to send/receive money to/from each other. Staff/Senior: After you've implemented the system, discuss the security implementation you would consider.
2
Designing a Music Recognition System like Shazam
system should be able to identify a song by listening to a short audio clip provided by the user. Once identified, the system should return details about the song, including the title, artist, album, and a link to listen to the full track.
2
Design the Google Doc
2
Explore Distributed Concurrency Control
Go deeper into concurrency control between multiple instances of a microservice. For example, in the Ticket Master exercise, explore how we could control the concurrency when multiple instances of the Booking microservice tries reservice same ticket
2
Design Shopify
2
Design Paypal
2
Design a typeahead feature
2
Design a banking app
2
Deep Drives Apach Flink
Five deep drives of Apach FLink and how to use it, why to use it and compare it with the other tool
1
Klarna System Design
1
Design Stadia like gaming service with top player leaderboards
Imagine that Youtube team would like to start advertising games before video begins. The ad will allow you play for 2 minutes and offer a link to purchase a game after that + leaderboards. Can you succeed where Google failed?
1
Design a location based service like Yelp
1
Create Distributed Cache
1
Design a distributed auto increment id generator(should be ascending order)
1
Design wikipedia
1
Job Scheduling
Design a scalable job schedulable that can schedule jobs in a perodic mannner
1
Design a centralized notification system
A social media app sends multiple notification to users. Different notifications are owned by different teams. Create a system which will be used by various team to send notifications immediately or in future.
1
Design Whatsapp or Facebook Messenger
1
Design a price alert system
1
Get active events
System has handlers set_start(id, ts) and set_finish(id, ts). Incoming data via these endpoints are quite high. The finish event can come before the start event. What's the optimal way to calculate getActiveEvents(ts)?
1
Design Global Counter
1
Design youtube shorts
1
Design a therapy booking platform
like betterhelp or growtherapy
1
Design a build service for multi region cloud
1
sentry.io
Design a sentry.io like system
1
design YouTube
Youtube/ Netflix
1
Design Street View in Google Map
1
Design youtube likes
Users see likes on videos with low latency
1
photo sharing app like Instagram
1
Design what database to choose
This is more kind of an overview. Can you guys make a video on what database needs to be chosen for different type of use cases.
1
design online Pong Game
players can join, and need to be matched with someone else who is online
1
Design a virtual agent
Design a virtual agent (retail/commerce/etc) which interacts with customers from a web or any other interface to understand the customer's questions and respond based on the company's or org's knowledge repository and any off the shelf LLMs (RAG)
1
Design amazon locker
1
Design Talent assessment platform & a resume screening/tracking system
Design Talent assessment platform like hirevue and a resume screening/tracking platform.
1
Ebay Auction Site
Highly consistent, low latency and scalable system
1
Design of Amazon Product Review System
Design of Amazon product review system, write and read part especially during sale periods
1
Design Twitter/ X Trending hashtags
Find top k hastags based on location and category. User can also search for past trending hastags
1
Design a Reminder application
1
Design a Traffic Light Control System for a city
1
Typo
Handling Big Data and Real-Time Web Apps: You have an applications dealing with large volumes of data, especially unstructured data, or applications requiring real-time data processing and analytics. an applications is wrong
1
Below looks not right. Could you confirm
Message Ordering: However, some queues (like Kafka) allow for more complex ordering guarantees, such as ordering based on a specified priority or time.
1
Design a webhook
A webhook can be a POST http endpoint called by an authenticated third party client. The client will call the webhook with a url and a message payload. The webhook should lookup the URL in the internal database registry and send the message to it.
1
Design Splunk - Logging and Metrics Monitoring System
1
Design a hotel aggregator system where user can book a room
1
Design a social media application for introverts.
1
Design a telemetric service
All the services that are deployed in a organization can send their such as cpu/memory/ etc. These information can also be used by alerting/alarming service to alarm
1
Design a ledger system
common question for fin tech, design a ledger system can record money movement and account balance.
1
Design Tiktok
short video platform such as Tiktok, youtube shorts, etc.
1
Design Block Storage System .
I was asked this question within Amazon . The question is "Design a block storage system that can reduce the fragmentation of the disk and provide durable storage devices on demand" . Something like AWS Elastic Block Storage.
1
Design Block Storage System .
I was asked this question within Amazon . The question is "Design a block storage system that can reduce the fragmentation of the disk and provide durable storage devices on demand" . Something like AWS Elastic Block Storage.
1
Design Stripe/Plaid
1
Open AI
1
Internal company tool
placed in charge of a large application - runs in a single data center - all stored there and all processing serving and traffic is done there -multi data store -multi app server - serving diff portions of app design tool to monitor performance
1
Design a chat app
Design a chat app that support instant messaging (1-1, group chat).
1
Design code coverage tool
1
Design a file system
Design a file system that can store 100s of PB of data. It offers POSIX semantics.
1
Design an ad serving system
Design a real time ad serving system for digital ads
1
Design a centralized video update management system
Design a centralized video update management system that integrates with mu
1
Deep DIves: Apache Flink
1