Design Facebook Marketplace - System Design
Facebook Marketplace looks like “Craigslist with photos,” and if you design it that way you will fail the interview. The naive read is a …
Read MoreDesign Live Stock Prices Worldwide (Bloomberg) - System Design
“Show live prices for every stock on every exchange to millions of people at once” reads like a websocket that pushes a number. Then you …
Read MoreDesign Cluster Health Monitoring - System Design
“Monitor the health of the cluster” sounds like a cron job that pings every box and pages someone when one goes quiet. Then you put 50,000 …
Read MoreDesign On-Call Escalation (PagerDuty) - System Design
Everyone thinks PagerDuty is a glorified SMS sender. “A monitoring tool posts an alert, you look up who is on call, and you text them. If …
Read MoreDesign P2P File Transfer (BitTorrent) - System Design
The whole point of a file-transfer service sounds like a solved problem: put the file on a server, hand out a URL, let people download. That …
Read MoreDesign Facebook Likes with Live Updates (Including Celebrities) - System Design
Tapping “Like” is the smallest interaction Facebook has. It is one bit: you either like a post or you do not. It looks like a toggle on a …
Read MoreDesign Live Comments on Facebook - System Design
Live comments look like a solved problem until you put a number on it. A celebrity goes live, a million people are watching, and comments …
Read MoreDesign Live Page Viewer Count (Booking.com) - System Design
“23 people are looking at this hotel right now.” It is one line of text, a soft nudge that the room might not be here tomorrow. It looks …
Read MoreDesign a Wire Transfer API - System Design
A wire transfer looks like the wallet transfer’s twin, and interviewers love it because it is not. In a wallet, “move 500 from Alice to Bob” …
Read MoreDesign Distributed Tracing (Jaeger / Dapper) - System Design
One request hits your API gateway, which calls auth, which calls the user service, which calls three downstream services, two of which hit a …
Read MoreDesign Price Alert System (Stock / Amazon) - System Design
“Notify me when AAPL hits $250” or “tell me when this Amazon item drops below Rs 1,999” sounds like a WHERE price >= target query. Then you …
Read MoreDesign A/B Testing System (Optimizely) - System Design
An A/B testing platform is deceptively easy to describe and brutal to get right. “Show half the users the blue button and half the green …
Read MoreDesign ETA Service & Live Location Sharing (Uber) - System Design
Once a rider is matched to a driver, the interesting problem is not “who is my driver” - it is the little car crawling across the map toward …
Read MoreDesign Netflix Screen Limit - System Design
Everyone thinks the screen limit is a counter. “Each plan allows N streams, keep an integer per account, increment when a play starts, …
Read MoreDesign Sort 1TB Dataset on Commodity Hardware - System Design
The whole problem is one sentence: the data does not fit in memory. You have 1TB to sort and 16GB of RAM per machine, so the data is roughly …
Read MoreDesign Surge Pricing System (Uber) - System Design
Surge pricing looks like a multiplication. Base fare times some number, show it to the rider, done. The interviewer lets that sit for about …
Read MoreDesign Top K Elements at Scale (App Store Rankings) - System Design
Everyone thinks App Store rankings are a SELECT app_id, COUNT(*) FROM downloads GROUP BY app_id ORDER BY count DESC LIMIT 100. Count the …
Read MoreDesign Distributed Queue (RabbitMQ-like) - System Design
There are two completely different things people call “a message queue,” and confusing them is the fastest way to fail this interview. One …
Read MoreDesign Google Analytics Pipeline - System Design
Everyone thinks Google Analytics is a counter with a chart on top. “Drop a snippet on every page, count the pageviews, draw a line graph, …
Read MoreDesign Google Calendar - System Design
“Design Google Calendar” sounds like a CRUD app: a user creates an event, it shows up in a grid, the phone syncs it. The interviewer lets …
Read More