What question should we breakdown next?
We'll take the top voted question every couple weeks and add it to the list of Common Problem Breakdowns.
277
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.
164
Design a real-time document editors
Like Google Docs or Notion, or even Excalidraw.
143
Design a Flash Sale Site
Limited number of items for sale with millions of active buyers fighting for remaining items
111
Create Distributed Cache
108
Design Instagram
Design a photo-sharing service like Instagram, where users can upload photos to share them with other users.
89
Distributed Job scheduler
10 millions jobs to be scheduled every second, 100B jobs per day, job type flexibility (java, python etc).
87
Design GoogleDoc
A realtime document editor
86
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.
71
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).
60
Design "likes" counter
Design a system that tracks the number of “likes” (posts / tweets / photos) at scale.
56
Design distributed rate limiter
- Design a horizontally scalable distributed rate limiting solution to prevent facebook's public api abuse
52
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.
49
Design the auto-complete/type-ahead backend
Design the backend for an auto-complete system, like Meta, Google or Amazon.
46
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
42
Design CamelCamelCamel
price tracking system
38
Create Key/Value Store
32
Deep Dive - Kafka
31
Deep Dive - DynamoDB
28
Design Metrics Monitoring and Alerting System
28
Deep Dive - PostgreSQL
23
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.
22
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.
19
Design Google Calendar
Design a calendar service that people can create events, invite others and suggest meeting rooms
19
Payment System
A payment system similar to Stripe or PayPal.
18
Design a Single Server Memcached
Might also extend that to cluster level memcached as well.
18
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.
18
Deep Dive - Cassandra
16
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.
14
Distributed Logging and analysis
Petabytes of data per second ingestion, petabytes of data per second while querying.
14
Design YouTube
12
Recoomendation system in Netflix
12
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.
11
Design a Parking Lot
11
Design amazon product/inventory management
10
Design a billing system
10
Design CDN
we have to build content delivery network
9
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.
9
Deep Dive Elastic Search
8
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
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
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.
8
Design FIFO Pubsub system
Design a Pubsub system that makes guarantee FIFO delivery. I was asked this question during my interview.
8
Design ChatGPT
8
Design payment system
Lime Venmo, PayPal
8
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
7
Deep Dives - Kafka
7
Design Spotify
6
Design GoogleMeet
Online realtime video conferencing tool
6
Design Amazon Lockers
1. User can select nearby lockers at checkout. 2. System should generate OTP until used by user to unlock locker.
6
Design a bidding system
Where users can bid
6
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
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 notification service
Notification to other services or notification to users
5
Design an E-Commerce System
Design an E-Commerce system with a functionality to handle billion $ sale days.
5
Design a blob store like s3
5
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.
4
Distribute 6M burgers in 10 minutes.
No one should get more than 1 burger. We should distribute exactly 6M burgers.
4
Design Proximity Service like Yelp
4
Distributed high scale telemetry system
Telemetry/Metrics system such as Datadog, Splunk etc
4
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.
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 Feature Flag System
- Millions of users - Target individual users and % of users - Admin UI - Backend only
4
Design Machine Learning Platform
4
Design url shorter system.
Design distributed url shorter systems like tinyurl, linkedin etc.
4
Design subscription system
Got asked at Google
4
Design Google News
Any news aggregator service
4
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
3
Design YouTube
3
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.
3
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.
3
HTTP downloader
3
Design whatsapp/messenger
3
Design Advertising Platform for Ad Reporting
1. Analytical Load Serving 2. Data Skewness handling 3. Realtime Reporting
3
Design google calendar
Focusing on the notification system (users can set reminders with frequency/interval, i.e. once a week, twice a month, etc.)
3
Design weather app
3
Design a money transfer application
3
Design WhatsApp
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
How to design a Ledger System for Payment Gateway
Asked in Stripe
3
Design Coding Contest Platform
3
Design ZooKeeper
3
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.
3
Designing a key value store like Redis
3
Design Booking.com
Hotel booking app like Booking.com, Agoda etc
3
design Chat GPT
3
Design a Rate Limiter
3
Deep Dive - ETCD/Zookeeper
3
Design Live Video Streaming System
Designing a Live Video Streaming System Like ESPN
2
Design Twitter
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
Create Distributed Cache
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
We could use a dark mode on this site
2
Design IFTTT
2
Google photos
2
Design a messaging queue like Kafka
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 Distributed Logging/Tracing
A system like jaeger
2
Design a distributed lock with TTL
2
Design a Notification Delivery System.
Something like One signal.
2
Job scheduler
- scheduling job - dag scheduling
2
stock exchange
2
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
2
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
2
Design Peer to Peer Payment System
Like Venmo/Cash app allowing people to send money to other people.
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
Design a Distributed Job Scheduler for Millions of Tasks in Daily Operation
2
Design a hotel booking system
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.
1
Design a time series db
1
Design an in-memory db
1
Design a food delivery app
A food delivery app like doordash or swiggy or zomato
1
PSP like VISA
Design a payment service provider like VISA.
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 a payroll system
For HR type software
1
Design Whatsapp or Facebook Messenger
1
Design a price alert system
1
design jenkins
Design CI/CD system such as jenkins.
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 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.
1
Design a therapy booking platform
like betterhelp or growtherapy
1
Design a build service for multi region cloud
1
Design Version Control system
Design a system like github
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
Continuous Integration System
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 Zoom
wonder how this differs from designing whats app
1
Design Google Maps
1
Design Talent assessment platform & a resume screening/tracking system
Design Talent assessment platform like hirevue and a resume screening/tracking platform.
1
Design a Fitness app
Tracks biometrics based on geolocation and activity
1
Deep Dive - Raft v/s Paxos
1
Ebay Auction Site
Highly consistent, low latency and scalable system
1
Design digital wallet
Users can check the wallet balance, add/view transactions and support transfer between accounts.
1
Design of Amazon Product Review System
Design of Amazon product review system, write and read part especially during sale periods
1
Design Snapchat
1
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
1
Design Github/Gitlab
1
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
1
Design Robinhood
Robinhood - how it gives real time stock data and handles market crashes
Propose a New Question
Please look through the list to make sure your question isn't already there.