System Design Interviews Toolkit

OM Bharatiya
2 min readFeb 17, 2021

In this blog, I’ve listed down all the probable system design questions that can be asked by system design interviewers during the onsite rounds for product-based companies like Microsoft, Amazon, Flipkart, Swiggy, Google, etc. This blog consists of:

  1. List of design questions
  2. Tips to answer design questions
  3. High-Level Design Expectations
  4. Low-Level Design Expectations

List of design questions:

Design a system like

  1. LRU Cache
  2. URL Shortener (tiny URL)
  3. Parking lot
  4. Leaderboard
  5. Generation of unique URL
  6. Food Delivery App
  7. Cab OR bicycle booking
  8. Centralized Logger System
  9. BookMyShow
  10. Instagram
  11. Cricinfo
  12. Order Management System
  13. Distributed job scheduler
  14. Read Receipts mechanism in Whatsapp
  15. Bus scheduling system
  16. Ticket booking system
  17. System to handle flash sales
  18. Netflix
  19. Access Management System
  20. Multiplayer game
  21. Railways Cloak Room
  22. Management software for gaming parlor
  23. Payment mechanism
  24. Price automation system
  25. Voice assistant used in mobile
  26. Event booking system
  27. MP3 player
  28. File conversion tool
  29. Torrent Client — For downloading files from the Internet
  30. Notifications Service — when the price drops in real-time
  31. Notifications Service — which sends email and SMS to buyer and seller
    for an e-commerce marketplace
  32. Optimize the red and green lights in a traffic signal

If you think I’ve missed any problem, please suggest in the comments.

Tips to answer design questions:

  1. Ask clarifying questions to resolve the ambiguity
  2. Break-down the problems
  3. Dive deep on implementation
  4. Scaling of the design

HLD Expectations:

  1. Requirement gathering and Defining System Constraints
  2. Identify System Components
  3. Associating and Coupling Components
  4. Design Considerations — Fault tolerance, Scalability, Concurrency Control, etc.
  5. Component Diagram — Explain the Responsibility of each component

LLD Expectations:

  1. The candidate should be comfortable in class diagram and DB table schema implementation
  2. Should know - How should the system handle failures, what can be done to prevent them
  3. Identify Entities, Defining Entities and association
  4. Coupling, Extendibility, and System Maintainability
  5. Touch Base on Design Principles and Design Patterns and OOPS concepts

I hope this blog helped you understand the pattern for Design Interviews.

Best of Luck!!

ombharatiya

Thanks for reading this article! Add a 👏🏻 [clap] if you liked this blog. Leave a comment below if you have any questions. Be sure to check my other Medium blogs and connect with me on LinkedIn & Twitter for more interesting discussions.

Happy Coding ❤

--

--

OM Bharatiya

❤ to Build . Software Engineer . I write about Tech