Listen to this story
Let’s face it, system design is painful.
With Leetcode questions, you know the drill — find the algorithm, explain it, code it.
With system design, you never know what’ll be asked. Which makes it hard to practice.
I was in the same boat. So I did a bunch of research and found questions that are being asked but not available easily. Other popular websites give you 12 or so questions to practice, but those are saturated now - everyone knows them.
*** drumroll ***
I am constantly updating and improving this list. Please visit
Company(s) asked: Google, Facebook, Amazon, eBay, Datadog, Atlassian
Solution(s):
Detailed Solution from Google Engineer:
https://www.youtube.com/watch?v=p_q-n09B8KA
Good overview from Google Engineer:
https://www.youtube.com/watch?v=_KoiMoZZ3C8
Related — Ad Click Aggregation:
https://www.hellointerview.com/learn/system-design/problem-breakdowns/ad-click-aggregator
Leetcode Discussion:
https://leetcode.com/discuss/interview-question/system-design/622704/Design-a-system-to-store-and-retrieve-logs-for-all-of-eBay
Company(s) asked: Amazon, Microsoft, Wise, Confluent
Solution(s):
Read the original Kafka paper, but don’t feel pressured to complete it:
https://notes.stephenholiday.com/Kafka.pdf
Great overview:
https://medium.com/better-programming/system-design-series-apache-kafka-from-10-000-feet-9c95af56f18d
Solution from Meta Engineer:
https://www.youtube.com/watch?v=DU8o-OTeoCc
Good visualization:
https://www.youtube.com/watch?v=HZklgPkboro
Company(s) asked: Apple, Google, Canva, Avalara, Rubrik, OpenDoor
Solution(s):
Good high level solution:
https://www.educative.io/courses/grokking-the-system-design-interview/design-of-a-key-value-store
Mock Interview with Microsoft Engineer:
https://www.youtube.com/watch?v=6fOoXT1HYxk
Detailed Video Series on this:
https://www.youtube.com/playlist?list=PL1MM4yIzUdPm2L_Lz8gRa_q6ZElgNoArH
Company(s) asked: LinkedIn, Facebook, Twitter
Solution(s):
Leetcode discussion:
https://leetcode.com/discuss/interview-question/system-design/258398/design-top-shared-post-system-in-5mins1-hour1-day1-week
Official Google Mock Interview:
https://www.youtube.com/watch?v=S1DvEdR0iUo
Great high level overview:
https://mecha-mind.medium.com/system-design-top-k-trending-hashtags-4e12de5bb846
Solution from Meta Engineer:
https://www.youtube.com/watch?v=1lfktgZ9Eeo
Text solution:
https://www.hellointerview.com/learn/system-design/problem-breakdowns/top-k
Company(s) asked: Amazon, Atlassian, Uber, Patreon, Microsoft, Stripe, Headway, Reputation.com, Pinterest
Solution(s):
Great article + mock interview video:
https://www.tryexponent.com/blog/rate-limiter-system-design
Great solution by Google engineer:
https://www.youtube.com/watch?v=VzW41m4USGs
Intro:
https://blog.bytebytego.com/p/rate-limiting-fundamentals
Good article on algorithms:
https://medium.com/geekculture/system-design-design-a-rate-limiter-81d200c9d392
Leetcode discussion:
https://leetcode.com/discuss/interview-question/system-design/1616482/System-Design%3A-Rate-Limiter
Company(s) asked: Google, Datadog, Amazon, eBay, LinkedIn
Solution(s):
Good solution:
https://systemdesignschool.io/problems/realtime-monitoring-system/solution
Nice article with overview:
https://archive.is/Eezec
Company(s) asked: Google, LinkedIn
Solution(s):
Good High Level Solution:
https://medium.com/%40astha2798/system-design-google-calendar-94894ddc9839
Solution from FAANG Engineer:
https://www.youtube.com/watch?v=POfW0UULcyA
Leetcode Discussion:
https://leetcode.com/discuss/post/305654/system-design-google-calendar-by-kthtes-ttur/
Recurring Events:
https://www.linkedin.com/pulse/tiny-system-design-google-calendar-like-app-recurring-rajesh-pillai/
Company(s) asked: Amazon, Apple, Instacart
Solution(s):
Leetcode Discussion:
https://leetcode.com/discuss/interview-question/system-design/206134/Amazon-or-System-Design-or-Design-a-Distributed-Message-queue
Good detailed explanation:
https://docs.google.com/document/d/1pOarvQbjzLd9tz5ZuxktyrYsZ41mbWba5_LUeFj65lI/edit?tab=t.0#heading=h.iq7ofd902vlf
Mock Interview:
https://www.tryexponent.com/blog/distributed-message-queue-system-design-mock-interview
Detailed explanation video:
https://www.youtube.com/watch?v=iJLL-KPqBpM
Company(s) asked: Microsoft, Facebook, Qualtrics, Google
Solution(s):
Facebook EM’s Mock Interview:
https://www.youtube.com/watch?v=kIcq1_pBQSY
Designing a Dashboard with Data with FAANG Engineer:
https://www.youtube.com/watch?v=8_5Gve7aNRk
Company(s) asked: Google, Microsoft
Solution(s):
Excellent solution:https://quanticdev.com/algorithms/distributed-computing/distributed-sorting/
From the same author, a very detailed video:
https://www.youtube.com/watch?v=vgKjatRVtys
Leetcode:
https://leetcode.com/discuss/interview-question/4807845/Microsoft-Interview/
Company(s) asked: Amazon, Bloomberg, Facebook, Pinterest
Solution(s):
Solution from ex-Meta engineer:https://www.youtube.com/watch?v=1lfktgZ9Eeo
Solution from FAANG Engineer:
https://www.youtube.com/watch?v=RvZbdYvrFeg
Very detailed solution from Microsoft engineer:
https://serhatgiydiren.com/system-design-interview-top-k-problem-heavy-hitters/
Solution on Blind:
https://www.teamblind.com/post/Please-critique-my-system-design-for-Top-K-most-searched-terms-Cfrqhnhk
Company(s) asked: Dropbox, Facebook, Google, Amazon, Microsoft, OCI
Solution(s):
Paper: Google File System__https://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf__
Solution from ex-Meta Engineer:
https://www.youtube.com/watch?v=_UZ1ngy-kOI
https://www.hellointerview.com/learn/system-design/problem-breakdowns/dropbox
Mock Interview:
https://www.tryexponent.com/courses/system-design-interviews/design-dropbox
Company(s) asked: Google, Amazon, Microsoft, Doordash, Netflix, Atlassian
Solution(s):
Popular Leetcode Discussion:https://leetcode.com/discuss/general-discussion/1082786/System-Design%3A-Designing-a-distributed-Job-Scheduler-or-Many-interesting-concepts-to-learn
Solution from Google Engineer:
https://www.youtube.com/watch?v=pzDwYHRzEnk
High Level Overview:
https://blog.algomaster.io/p/design-a-distributed-job-scheduler
Mock Interview:
https://interviewing.io/mocks/faang-system-design-job-scheduler
Company(s) asked: Google, Pinterest, OCI, Stubhub, Amazon, Airbnb, Instacart
Solution(s):
High level overview:https://blog.algomaster.io/p/design-a-scalable-notification-service
Good design by Microsoft engineer:
https://serhatgiydiren.com/system-design-interview-notification-service/
Nice detailed solution video:
https://www.youtube.com/watch?v=bBTPZ9NdSk8
Solution by Google Engineer:
https://www.youtube.com/watch?v=J-5JozlYIqI
Company(s) asked: Uber, Lyft
Solution(s):
No solutions available online, but here is the best we could find:
Good overview:
https://docs.google.com/document/d/1uJpPuhO6vZK_VCxBYKbCJoQYrbFE9Ihrsfs919X8f40/edit?usp=sharing
GPTed Solution I used:
https://docs.google.com/document/d/1hfUmr8SpBMCkEMlOeXl6Y-H85PMzq-zd07Isb1ltWZE/edit?usp=sharing
Company(s) asked: Some FAANG
Solution(s):
No solutions available online, but here is the best we could find:
On Mobile and TVs, Because you are running the app, you have access to certain device identifiers. For example, on iOS, you can get the phone model, and advertising identifier for a device. You can use this data to record a device on a backend cache.
On web, you can use the IP address and create a browser session. You can use that as a key to a table maintaining sessions for a user.
With a combination of the above, you can identify how many users are watching from an account at any given time.
Company(s) asked: Uber, Some FAANG
Solution(s):
No solutions available online, but here are some reads:
Note: This is after matching a driver with a rider — Question 30.
Part 1 — ETA:
ETA for Uber Eats, related:
https://mecha-mind.medium.com/ml-system-design-eta-prediction-9dc8000fd86b
High level approach:https://www.finalroundai.com/interview-questions/google-maps-eta-compute
Part 2 - Live location sharing:
Links that are ok, but don’t do justice for interviews:
https://github.com/praveenkumardec89/location-tracking-system-design
Company(s) asked: Amazon, Square, Booking.com
Solution(s):
Solution from FAANG Engineer:https://www.youtube.com/watch?v=Ale7Fn921GQ
Good API and High Level Design:
https://javascript.plainenglish.io/how-to-design-a-hotel-booking-system-56ef18b6adfc
High Level Backend Design Video:
https://www.youtube.com/watch?v=m67Mjbx6DMY
Mock Interview:
https://www.tryexponent.com/blog/design-a-hotel-booking-service-system-design-interview-question-answer
Company(s) asked: Affirm, Some FAANG
Solution(s):
No good solutions for this online. Here are a few reads:
High level overview:
https://xhinliang.medium.com/how-to-design-an-a-b-test-system-1450b06933f
Building a small homemade A/B test engine:
https://medium.com/studocu-techblog/recipe-for-implementing-a-homemade-a-b-testing-engine-2e95c97c8020
Company(s) asked: Facebook, Bloomberg, Coinbase, Swyftx, Trade Republic
Solution(s):
Leetcode Discussion:https://leetcode.com/discuss/interview-question/system-design/5745135/Design-Stock-price-Notification-System
Good solutions:
https://dilipkumar.medium.com/price-drop-tracker-system-design-d2f9ed36a935
Another solution:
https://www.tryexponent.com/questions/3371/design-amazon-price-tracker
Company(s) asked: ADP, Some FAANG
Solution(s):
No good solution available online, here is the best we could find:
Intro to concepts:
https://tarunjain07.medium.com/inversion-of-control-ioc-dependency-injection-di-9155a4151db9
More info:
https://www.finalroundai.com/blog/dependency-injection-interview-questions
Company(s) asked: Stripe, Paytm, Paypal, Databricks, Capital One
Solution(s):
Detailed solution:https://newsletter.pragmaticengineer.com/p/designing-a-payment-system
Simpler solution:
https://hackernoon.com/system-design-interview-designing-payment-systems-follow-up-questions-and-probable-issues
Good video explanation:
https://www.youtube.com/watch?v=olfaBgJrUBI
Company(s) asked: Facebook, Amazon, Twitter
Solution(s):
Discussion on Blind:https://www.teamblind.com/post/System-Design-Question-How-does-FBInsta-storeretrieve-likes-NZEcwqVp
Detailed Solution:
https://systemdesign.one/distributed-counter-system-design/
Video Solution:
https://blog.interviewcamp.io/live-design-facebook-likes-distributed-counter
Company(s) asked: Netflix
Solution(s):
No solution online. Here are a few reads:
Good to know what a control plane is. This video does a great job:
https://www.youtube.com/watch?v=Ep1QW-wOmgc
DynamoDB Paper:
https://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf
Company(s) asked: Google, Visa, Gusto
Solution(s):
Great explanation:https://www.youtube.com/watch?v=uj_4vxm9u90
Good solution:
https://hackernoon.com/designing-functional-authentication-and-authorization-systems
Good summary:
https://www.finalroundai.com/interview-questions/google-design-login-endpoint
Explanation videos:
https://www.youtube.com/watch?v=fyTxwIa-1U0 https://www.youtube.com/watch?v=zt8Cocdy15c
Company(s) asked: Amazon, Chime, Facebook, Hubspot, Uber, Klaviyo
Solution(s):
Leetcode Discussion:https://leetcode.com/discuss/interview-question/system-design/1286344/system-design-design-weather-widget
Video explanation with sensors:
https://www.youtube.com/watch?v=sWNRuClDOo4&t=2s
Another explanation with sensors:
https://www.youtube.com/watch?v=PxL8W3WoK5k
Company(s) asked: Google, Flipkart, Notion, Amazon
Solution(s):
No good solutions available online. However, here are some reads:
Leetcode Discussion:
https://leetcode.com/discuss/interview-question/system-design/322448/Content-Management-System-Design
Solution from Google Engineer. This goes over live editing too, but this specific question is not about live editing:
https://www.youtube.com/watch?v=YCjVIDv0zQY
Detailed Frontend Design:
https://www.youtube.com/watch?v=tsGarhpWOws
Company(s) asked: Facebook, Roblox
Solution(s):
While no solution exists online specifically for FB Marketplace, here are solutions for building marketplaces which will help:
Cheat Sheet:
https://www.reddit.com/r/leetcode/comments/104wf74/system_design_cheatsheet_online_marketplace/
Craigslist Design:
https://medium.com/%40bugfreeai/system-design-interview-practice-design-craigslist-c95ba0238f74
Mock Interview:
https://www.youtube.com/watch?v=2N0TXrgB9AY
For location based listings, refer to geospatial search — Question 30
Company(s) asked: Uber, Lacework, Amazon, Google
Solution(s):
Good starting point: Interview experience:https://medium.com/%40ajingnv/system-design-a-server-health-monitoring-system-9bdd0066bb9c
Solution:
https://systemdesignschool.io/problems/realtime-monitoring-system/solution
Leetcode Discussion:
https://leetcode.com/discuss/interview-question/system-design/958919/System-Design-Interview-or-Service-Health-Monitoring-and-Alerting-Service
Company(s) asked: Facebook, Uber, Google, Microsoft
Solution(s):
Very similar to Proximity Service (Find Nearby Friends, Design Yelp). This problem is about maintaining a large geospatial index.
Excellent article on geospatial algorithms:
https://blog.mapbox.com/a-dive-into-spatial-search-algorithms-ebd0c5e39d2a
Good solution for Yelp, which applies here:
https://systemdesignschool.io/problems/yelp/solution
Popular Video:
https://www.youtube.com/watch?v=M4lR_Va97cQ
Mock Interview:
https://www.youtube.com/watch?v=atywHEArk1w
Company(s) asked: Uber, Amazon
Solution(s):
Leetcode Discussion:https://leetcode.com/discuss/interview-question/system-design/313117/Design-a-system-capable-of-tracking-bad-request-down-quickly
Great intro to Tracing:
https://betterstack.com/community/guides/observability/distributed-tracing/
Dapper research paper:
https://research.google/pubs/pub36356/
Solution from FAANG engineer:
https://www.youtube.com/watch?v=Jkhw_FSikX0
Company(s) asked: Google, Deliveroo
Solution(s):
No solution online, but here are some resources:
Mock Interview:
https://interviewing.io/mocks/google-system-design-design-a-free-food-app Another Mock Interview:
https://interviewing.io/questions/design-a-free-food-app
Reddit discussion:
https://www.reddit.com/r/softwarearchitecture/comments/xlztzr/interview_systems_design_question_that_i_want/
Company(s) asked: Facebook
Solution(s):
No good solutions online, but here are a few resources:
Leetcode Discussion:
https://leetcode.com/discuss/interview-question/system-design/1587255/Facebook-System-Design
Video Solution:
https://www.youtube.com/watch?v=u520bdagKkU
Company(s) asked: Google, Bloomberg, Amazon
Solution(s):
Leetcode Discussion:https://leetcode.com/discuss/interview-question/system-design/431712/Bloomberg-or-Design-a-system-to-give-prices-of-a-stock
Detailed solution:
https://harshsavasil.medium.com/design-real-time-stock-price-feed-9e1fba0a1c4e
Real case study:
https://www.paytmmoney.com/blog/how-we-built-an-in-house-price-alerts-system/
Company(s) asked: Google, Doordash, Amazon, Uber, Facebook
Solution(s):
Must read: Facebook’s Photo Storage Paper:https://www.usenix.org/legacy/event/osdi10/tech/full_papers/Beaver.pdf
High level approach:
https://medium.com/%40bugfreeai/key-points-of-a-common-system-design-interview-question-photo-sharing-platform-91f52fa4bf05
Solution:
https://www.geeksforgeeks.org/design-a-picture-sharing-system-system-design/
Frontend Solution Video:
https://www.youtube.com/watch?v=FUKGooQXih8
Mock Interview:
https://interviewing.io/mocks/faang-system-design-photo-sharing-service
Company(s) asked: Uber
Solution(s):
No solution available online. However, here are things to consider:https://docs.google.com/document/d/1yngBZD2xNYfPRMIy1haQQcpSrZLUrIjErIM92d8mFiA/edit?usp=sharing
Company(s) asked: Google, Capital One, Revolut
Solution(s):
Leetcode Discussion:https://leetcode.com/discuss/interview-question/1895724/google-first-phone-write-a-wiretransfer-api
https://leetcode.com/discuss/post/651695/revolut-backend-engineer-london-sep-2019-ybf3/
Video Solution:
https://www.youtube.com/watch?v=olfaBgJrUBI&t=365s
Company(s) asked: Facebook
Solution(s):
Great Solution:https://www.hellointerview.com/learn/system-design/problem-breakdowns/fb-live-comments
Video Solution from Meta Engineer:
https://www.youtube.com/watch?v=LjLx0fCd1k8
FB Engineering Blog:
https://engineering.fb.com/2011/02/07/core-infra/live-commenting-behind-the-scenes/
Leetcode Discussion:
https://leetcode.com/discuss/post/583184/fbinstagram-live-comments-system-design-fqtzt/
Company(s) asked: Booking.com
Solution(s):
No solution available online, but here are a few reads:
One solution:
https://medium.com/%40narasimha4789/from-zero-to-millions-designing-a-real-time-active-user-counter-system-a5d9545bd35e
Company(s) asked: Facebook, Coinbase
Solution(s):
Video Solution:https://www.youtube.com/watch?v=T4bmFz-BSDk
Company(s) asked: Google, OCI
Solution(s):
No solution online, but here are some reads:
3 strategies:
https://newrelic.com/blog/best-practices/migrating-data-to-cloud-avoid-downtime-strategies
Related interview experience:
https://leetcode.com/discuss/post/1733573/rubrik-file-transfer-interview-question-43hjl/
Company(s) asked: Facebook, Lyft
Solution(s):
MapReduce Paper — which coordinates a cluster of machines to do a task:https://static.googleusercontent.com/media/research.google.com/en//archive/mapreduce-osdi04.pdf
Leetcode Discussion:
https://leetcode.com/discuss/post/1375361/botnet-system-designfacebook-design-roun-jv0g/
https://leetcode.com/discuss/post/850071/lyft-virtual-onsite-design-bots-to-downl-4v5q/
Blind:
https://www.teamblind.com/post/System-design-for-Botnet-5x0Mq34z
Company(s) asked: Google, Atlassian, Twitch
Solution(s):
Great paper on this topic:https://web.cs.ucla.edu/classes/cs217/05BitTorrent.pdf
Article on this:
https://medium.com/@abhinavcv007/bittorrent-part-1-the-engineering-behind-the-bittorrent-protocol-04e70ee01d58
High Level Video Explanation:
https://www.youtube.com/watch?v=6PWUCFmOQwQ
Company(s) asked: Some FAANG
Solution(s):
No solution available online. Auto Parts compatibility is another way to describe this.
Presumably, you might have a compatibility list for each part provided. Narrow down the problem to a particular type of part.
This problem is more about frontend and DB design than about distributed systems.
Company(s) asked: Facebook, Google, Amazon, Pinterest
Solution(s):
No good solution online. This video gives an overview:https://www.youtube.com/watch?v=Zcv_899yqhI&t=2s