Resources
Youtube
- https://www.youtube.com/user/dimakorolev/videos
- https://www.youtube.com/c/ByteByByte/videos
- https://www.youtube.com/channel/UC_n-A84J0UcU5uq4sEh2CnQ
- https://www.youtube.com/c/DefogTech/videos
- https://www.youtube.com/c/HusseinNasser-software-engineering/videos
- https://www.youtube.com/c/SystemDesignInterview/videos
- https://www.youtube.com/c/sudoCODE/videos
- https://www.youtube.com/c/codeKarle/videos
- https://www.youtube.com/c/CMUDatabaseGroup/videos
- https://www.youtube.com/c/interviewingio/videos
- https://www.youtube.com/c/GauravSensei/videos
- https://www.youtube.com/c/EngineeringwithUtsav/videos
- https://www.youtube.com/channel/UClB4KPy5LkJj1t3SgYVtMOQ/videos
- https://www.youtube.com/c/ExponentTV/videos
- https://www.youtube.com/watch?v=cQP8WApzIQQ&list=PLrw6a1wE39_tb2fErI4-WkMbsvGQk9_UB
- https://www.youtube.com/c/TheInterviewSage/videos
- https://www.youtube.com/c/ThinkSoftware/videos
- https://www.youtube.com/c/SuccessinTech/videos
- https://www.youtube.com/c/TechDummiesNarendraL/videos
- https://www.youtube.com/c/OktaDev/videos
Important Books
- System Design Interview -- An Insider's Guide eBook: Xu, Alex: Kindle Store
- Operating Systems: Three Easy Pieces eBook: Arpaci-Dusseau, Remzi, Arpaci-Dusseau, Andrea: Kindle Store
- Web Scalability for Startup Engineers: Ejsmont, Artur
- Understanding Distributed Systems: What every developer should know about large distributed applications: Vitillo, Roberto
- Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems: Kleppmann, Martin
- Kafka: The Definitive Guide: Real-Time Data and Stream Processing at Scale
- Distributed Algorithms -- An Intuitive Approach 2e (The MIT Press)
- Elasticsearch: The Definitive Guide: A Distributed Real-Time Search and Analytics Engine eBook: Gormley, Clinton, Tong, Zachary
- Cassandra -- The Definitive Guide, 3e: Distributed Data at Web Scale
Keywords
- Write ahead logging
- SSL passthrough / termination on load balancers
- Clock vectors
- Hinted handoff
- Bloom filters
- Gossip protocols
- Merkle trees
- Two phase commit
- Two phase locking
- Consistent hashing
- Data replication
- Total order broadcast
- Isolation levels (read uncomitted, read comitted, repeatable read, serializable)
- Quad trees (GeoHashin)
- Inverse indexing - Google search/any search indexing
- Gaming ranking - rank players based on score and faster.
- Word search in trie - auto suggestions system design
- Sort 5gb data in 1gb memory - merge sort
- Paxos algo
- Merkle Tree
- Backpressure
- Circuit breaker
- Raft
- Service discovery
- Saga
- Hyperloglog
Important algorithms
- https://github.com/resumejob/system-design-algorithms
- Frugal Streaming
- Geohash / S2 Geometry
- Leaky bucket / Token bucket
- Loosy Counting
- Operational transformation
- Quadtree / Rtree
- Ray casting
- Reverse index
- Rsync algorithm
- Trie algorithm
- Consistent Hashing
- Count-Min Sketch
- Bloom Filters
- HyperLogLog
- Skip Lists
- LRU
- B tree
- Hierarchical Timing Wheels https://blog.acolyer.org/2015/11/23/hashed-and-hierarchical-timing-wheels/
- Merkle trees
- Fenwick Tree - http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=2FDD6F53D3DC3BB91FA42E7277B6765B?doi=10.1.1.14.8917&rep=rep1&type=pdf
- AMS (Alon Matias Szegedy) algorithm
Cloud design patterns
LEETCODE all system design problems
- Web Crawler
- Detect web crawler
- Yelp
- Distributed file system
- URL shortening and Pastebin
- Dropbox
- Redis
- Youtube or Netflix
- https://leetcode.com/discuss/interview-question/system-design/733520/Design-YouTube-Very-detailed-design-with-diagrams
- https://leetcode.com/discuss/interview-question/system-design/144287/Design-Recommendation-System-for-Amazon-Videos
- https://leetcode.com/discuss/interview-question/system-design/600861/System-Design-Youtube-add-click-counts
- https://leetcode.com/discuss/interview-question/system-design/557250/Design-a-video-streaming-service-to-support-playback-video-from-different-devices
- https://leetcode.com/discuss/interview-question/system-design/496042/Design-video-sharing-platform-like-Youtube
- https://leetcode.com/discuss/interview-question/system-design/158698/Distributed-database%3A-Netflix
- https://leetcode.com/discuss/interview-question/system-design/124565/Design-Netflix-recommendation-engine
- https://leetcode.com/discuss/interview-question/system-design/150607/Design-youtube
- Ticketmaster
- Facebook Messenger or WhatsApp
- https://leetcode.com/discuss/interview-question/system-design/585930/Amazon-or-System-Design-or-Design-a-Chat-Service
- https://leetcode.com/discuss/interview-question/system-design/220073/How-would-you-design-WhatsApp
- https://leetcode.com/discuss/interview-question/system-design/124613/Amazon-or-System-Design-or-A-scalable-chat-application-on-phone-browsing
- Typeahead suggesions.
- Twitter search.
- Newsfeed ranking
- Web search.
- LinkedIn "you may know ...".,
- Uber / Luxe (anti-uber)?
- Freight / delivery orchestration? (edited)
- Botnet/decentralized web crawler/torrent
- Coupon redeeming system
- Message queue kafka, service bus
- https://leetcode.com/discuss/interview-question/system-design/124761/Deciding-which-queue-to-send-a-post-to
- https://leetcode.com/discuss/interview-question/system-design/206134/Amazon-or-System-Design-or-Design-a-Distributed-Message-queue
- https://leetcode.com/discuss/interview-question/system-design/734303/Microsoftor-Design-an-Enterprise-Service-Bus
- Rate limiter
- Design leetcode - asked in amazon and fb.
- https://leetcode.com/discuss/interview-question/system-design/649021/Design-Leetcode
- https://leetcode.com/discuss/interview-question/system-design/409736/Facebook-or-System-Design-or-Hacker-Rank-LeetCode-Contest-Leadership-Board-System
- https://leetcode.com/discuss/interview-question/system-design/308452/System-Design-or-Programming-contest-platform-like-LeetCode
- Large log data collection and processing system
- <https://leetcode.com/discuss/interview-question/system-design/124603/Amazon-or-Phone-screen-or-How-to-handle-large-log-data>
- https://leetcode.com/discuss/interview-question/system-design/128037/How-would-you-parse-a-huge-log-file
- https://leetcode.com/discuss/interview-question/system-design/189030/Design-a-system-which-can-report-frequently-occurring-exceptions-on-a-dashboard
- https://leetcode.com/discuss/interview-question/system-design/196142/Copy-coredump-files-from-millions-of-system-to-single-Storage-server-like-S3
- https://leetcode.com/discuss/interview-question/system-design/431023/Google-or-Onsite-or-Get-all-logs-between-times
- https://leetcode.com/discuss/interview-question/system-design/440546/Facebook-or-System-Design-Onsite-or-Compute-Percentile-Metrics-Over-Time-Series
- https://leetcode.com/discuss/interview-question/system-design/124603/Amazon-or-Phone-screen-or-How-to-handle-large-log-data
- https://leetcode.com/discuss/interview-question/system-design/1133962/Service-which-will-download-data-from-multiple-sources-and-ingests-it-in-the-system
- https://leetcode.com/discuss/interview-question/system-design/942087/System-Design%3A-Design-a-system-to-process-data-in-different-formats-from-different-sources
- https://leetcode.com/discuss/interview-question/system-design/852238/Need-help-with-System-Design-problem-asked-in-a-real-interview
- https://leetcode.com/discuss/interview-question/system-design/820877/Bloomberg-System-Design
- https://leetcode.com/discuss/interview-question/system-design/778868/Facebook-oror-Onsite-oror-System-Design-Aggregation-click-events
- https://leetcode.com/discuss/interview-question/system-design/725364/System-Design-or-IOT-sensor-data-aggregator
- https://leetcode.com/discuss/interview-question/system-design/202946/Design-a-system-to-aggregate-metrics-from-large-cluster(800%2B)-of-web-servers
- Realtime stock price monitoring system/ live score update cricbuzz, realtime gaming score
- Stock trading system
- https://medium.com/@narengowda/stock-exchange-system-design-answered-ad4be1345851
- https://leetcode.com/discuss/interview-question/system-design/820877/Bloomberg-System-Design
- https://leetcode.com/discuss/interview-question/system-design/124794/Design-a-Multicurrency-trading-system
- https://leetcode.com/discuss/interview-question/system-design/490034/FAANG-or-Onsite-or-Intern-or-System-Design-Stock
- Kill switch for stopping stock trading
- Design network fail over
- Design AB testing framework
- Design parking lot system
- https://leetcode.com/discuss/interview-question/system-design/124576/Design-a-parking-lot-system.
- https://leetcode.com/discuss/interview-question/system-design/575186/Design-a-Parking-Spot-System
- https://leetcode.com/discuss/interview-question/system-design/598634/Microsoft-or-Onsite-or-System-Design-or-SDE-2
- https://leetcode.com/discuss/interview-question/system-design/850712/System-Design-Amazon-2020-(SDE-2)
- https://leetcode.com/discuss/interview-question/system-design/765686/System-Design-Interview-Question%3A-Parking-Lot-or-Low-Level-Design
- https://leetcode.com/discuss/interview-question/system-design/125260/Parking-Lots-Design
- Reccomendation Engine
- Smart voice assistant like siri, alexa
- Nearest store location, another variation of topk
- https://leetcode.com/discuss/interview-question/system-design/124567/Nearest-Store-Locators
- https://leetcode.com/discuss/interview-question/system-design/533061/How-to-implement-nearest-location-kind-of-functionality-in-a-google-map-type-application
- https://leetcode.com/discuss/interview-question/system-design/154172/Design-google-map-database
- Job scheduling sytem
- https://leetcode.com/discuss/interview-question/system-design/124697/Walmartlabs-onsite
- https://leetcode.com/discuss/interview-question/system-design/124786/Google-Scheduling-Job-Involving-both-RAM-and-CPU
- https://leetcode.com/discuss/interview-question/system-design/692996/Microsoft-System-Design-Please-help
- https://leetcode.com/discuss/interview-question/system-design/553563/Googleor-Distributed-SystemorPerformance
- https://leetcode.com/discuss/interview-question/system-design/344524/Amazon-or-Design-a-JobTask-Scheduler
- https://leetcode.com/discuss/interview-question/system-design/124672/Implement-a-task-scheduler
- Elevator system
- Malware detection system
- Garbage collector
- Google docs
- https://leetcode.com/discuss/interview-question/system-design/148187/System-Design-or-Google-Docs
- https://leetcode.com/discuss/interview-question/system-design/148187/System-Design-or-Google-Docs
- https://leetcode.com/discuss/interview-question/system-design/208207/Design-a-Google-Sheet-System
- https://leetcode.com/discuss/interview-question/system-design/349669/Google-SWE-L5-or-Onsite-or-Design-Google-Docs-Versioning-System
- https://leetcode.com/discuss/interview-question/system-design/322448/Content-Management-System-Design
- https://leetcode.com/discuss/interview-question/system-design/194402/Design-a-file-sharing-system
- Ecommerce Price checker system
- Notification system
- Online ludo game
- metric monitoring service
- Ecommerce site ,Shopping cart, product catalog, payment gateway
- https://leetcode.com/discuss/interview-question/system-design/211415/Interview-Question-Ecommerce-System-design-(-Eg-%3A-Amazon-)%3A-Concurrency-issues-handling
- https://leetcode.com/discuss/interview-question/system-design/589546/Amazon-or-System-Design-or-Amazon-Order-System
- https://leetcode.com/discuss/interview-question/system-design/675539/System-Design-question-asked-in-interview
- https://leetcode.com/discuss/interview-question/system-design/666792/Microsoft-or-System-design-or-Please-help
- https://leetcode.com/discuss/interview-question/system-design/1124722/System-Design-or-Shopping-Cart-or-Payment-Gateway-or-Product-Catalog
- https://leetcode.com/discuss/interview-question/system-design/886390/Design-Recommendation-API-or-Akamai-Interview
- https://leetcode.com/discuss/interview-question/system-design/776927/Design-an-accountpayment-system
- https://leetcode.com/discuss/interview-question/system-design/706038/System-Design-Payment-System-Wallet-system-Payment-gateway
- Seller summary page
- Customer who bought this also bought
- Distributed key value store,
- Facebook live commenting
- Facebook status search
- Image editing ( asked in fb 2021)
- File download application system
- Proximity server
- Top N songs, another top k problem
- Privacy setting at facebook
- Distributed configuration management system
- Design gmail
- News reading feature in alexa
- Ads click visualisation system
- IoT devices management system
- Timer service
- Service monitoring and alerting system like pagerduty, azure monitor etc
- Load balancer
- Design undergeound system
- Leader board table design
- Slot booking system for playarena etc
- Food delivery app
- Online gaming lobby service
- URL fishing varifier
- Design whatsapp/instagram story
- File sharing with collaborative editing
- Stack overflow tags
- Tinyurls
- Github like cloud repo
- Job posting site
- S3/cloud object store
- Celebrity timeline generation
- Kindle service
- Bidding system
- Billing system - asked in fb interview
- RPC system for client server comm
- Autonomous driving system
- Github code search
- Car showroom
- Airport boarding gate security
- Social graph
- Place of interest
- Tinder
- Grocery store
- Display ads
- Add badge to peoples spotify account
- Xml to json conversation
- Ocr web app
- High scale otp generation system
- Distributed counter
- Scan for viruses in uploaded file
- Log processing at scale
- London travel card system
- Payment system for newyork MTA
- Ad click counter
- Design slack
- Wikipedia
- ML related system design
- Windows update
- People also searched for
- https://leetcode.com/discuss/interview-question/system-design/559481/Amazon-or-System-design-or-SDE-2-India smiliar to linkedin's you may also know
- Cashback processing system
- Pub sub arch
- Google or amazob book preview
- Design copy right detection
- Facebook nearby friends
- Google photos home page
- Image upload system
- Facebook translator service
- System for health care data
- Health score app
- Railway reservation system
- Treadmill system
- Addressed of entire planet
- Gofundme
- Shipping fullfilment
- Flight search API
- Splitwise
- Google calendar
- Fb popular/trending pages
- Courier service
- Hr portal
- Outlook recurring meeting
- Communication system for ecom sites
- Imdb
- Realtime event aggregator
- Gpay
- Top shared post
- Market place analytics
- Top 10 most liked articles
- Auth for multi tenant
- Design Changefeed
- Track runners in marathon
- Hotel booking page this many people visiting
- Text line editor
- Location sharing service
- Build system
- Hourly backup from mobile phone
- Google help system
Other interesting post about specific component design
- https://leetcode.com/discuss/interview-question/system-design/136140/Write-a-class-which-is-hard-to-test
- Interesting variation of ecart problem where first one who click buys will buy
- Back of envelope calculation
- Drawing tool
- Very good list
- https://leetcode.com/discuss/interview-question/1002218/Facebook-or-Google-or-Top-System-Design-Interview-Questions-(Part-1)
- https://github.com/donnemartin/system-design-primer
- https://github.com/binhnguyennus/awesome-scalability
- Json parser
- https://leetcode.com/discuss/interview-question/system-design/1052608/Design-a-JSON-Parser-or-SDE2
- https://leetcode.com/discuss/interview-question/system-design/1043657/MakeMyTrip-Backend-Developer-or-System-DesignMultithreading
- https://leetcode.com/discuss/interview-question/system-design/1042229/Facebook-or-Google-or-Top-System-Design-Interview-Questions-(Part-2)
- https://leetcode.com/discuss/interview-question/system-design/1038585/How-do-you-scale-up-an-Application-to-serve-thousands-of-request-per-second
- User data access policy design
- https://leetcode.com/discuss/interview-question/system-design/895268/Google-or-System-Design
- https://leetcode.com/discuss/interview-question/system-design/829466/Amazon-or-Phone-or-Seattle-or-Column-Store-vs-Row-Store
- https://leetcode.com/discuss/interview-question/system-design/808216/Phone-book-and-search - suffix tree
- https://hackernoon.com/scaling-websockets-9a31497af051
- Online whiteboard drawing like draw.io
- https://leetcode.com/discuss/interview-question/system-design/799474/Virtual-onsite-at-DocuSign
- https://leetcode.com/discuss/interview-question/system-design/795890/How-many-transactions-does-Oracle-DB-handle-Read-and-write
- How to store Recently viewed item
- Depth an interviewer can go
- Privacy api
- LLD
- T9 predicitve system
- Storsge of millions of subscriber
- Flipkart warehouse portal
- https://leetcode.com/discuss/interview-question/system-design/663037/Amazon-SystemDesign-Flipkart-Suggestions-Design-Warehouse-Portal
- https://leetcode.com/discuss/interview-question/system-design/632537/Design-an-algorithm-to-efficiently-transfer-required-bytes-of-data-to-a-single-PC-on-the-network.
- https://leetcode.com/discuss/interview-question/system-design/581804/Facebook-System-Design-Preparation - different type of design interviews at facebook
- Count current active user on the page,
- Csv parsing at scale
- API to get best selling book
- Fb mutual friend
- https://leetcode.com/discuss/interview-question/system-design/533810/FB-API-System-design
- https://leetcode.com/discuss/interview-question/system-design/532089/Update-System-design-of-Amazon-to-handle-10x-times-more-traffic-than-what-it-currently-receives
- https://leetcode.com/discuss/interview-question/system-design/513374/FAANG-system-design-interview-question
- Sql scalability
- Backup from dc1 to dc2
- Order within next 1 hour to get early delivery feature
- https://leetcode.com/discuss/interview-question/system-design/499558/Amazon-System-Design-Question
- https://leetcode.com/discuss/interview-question/484956/design-airport-luggage-handling-system
- https://leetcode.com/discuss/interview-question/system-design/483959/Google-onsite-(Theoretical-System-Design)
- https://leetcode.com/discuss/interview-question/system-design/421969/Twitch-or-System-Design-Onsite-or-Design-Twitch-Analytics-Use-Case
- Good discussion on designing SAAS
- Track down bad request
- Flight landing with onerunway
- Good read on data modelling
- Traffic light controller
- Live streaming view count
- Random number generator for a slot mschine
- Company badge system
- API gateway with graphql
- Good read on scaling
- https://leetcode.com/discuss/interview-question/system-design/250803/Large-amount-of-query-request-in-seconds.
- https://leetcode.com/discuss/interview-question/system-design/249988/How-to-Transfer-1-GB-of-data-from-one-microservice-to-another
- https://leetcode.com/discuss/interview-question/system-design/234311/Celebrity-Twitter-hack
- Amazon locker
- Upload large file
- Currency civersation
- Geohash
- Strategy to update sattelite firmware https://leetcode.com/discuss/interview-question/system-design/198761/Updating-Satellite-Frimware
- Design card deck
- Send large files
- Extract json from a text file
- Design video pause functionality
- Push/pull API for producer consumer
- HA for webproxy
- Alarm app
- Snake and ladder
- https://leetcode.com/discuss/interview-question/system-design/124858/First-non-repeating-word-in-a-file-File-size-can-be-100GB.
- Store extremely large parse matrix
- Implement mine swipper