Skip to main content

System Design Interview Questions

Review this list of 427 System Design interview questions and answers verified by hiring managers and candidates.
  • Forward Deployed Engineer
    System Design
  • Adobe logoAsked at Adobe 
    13 answers
    Video answer for 'Design a typeahead box for a search engine.'
    +5

    "It would have been more interesting to focus on the system design rather than the Trie DS, Interviewee could have just mentioned the Trie and passed to things more important. Interviewee should have focused on the factors on which he wants to scale the API servers, popularity of the query parts ? region may be ? A hash of many factors ? Caches should have definitely be discussed, Cache eviction policies, Cache invalidation managements... Interviewee should have mentioned which kind of API pro"

    Aymen D. - "It would have been more interesting to focus on the system design rather than the Trie DS, Interviewee could have just mentioned the Trie and passed to things more important. Interviewee should have focused on the factors on which he wants to scale the API servers, popularity of the query parts ? region may be ? A hash of many factors ? Caches should have definitely be discussed, Cache eviction policies, Cache invalidation managements... Interviewee should have mentioned which kind of API pro"See full answer

    Software Engineer
    System Design
    +1 more
  • Databricks logoAsked at Databricks 
    1 answer

    "I would first like to clarify the requirements and assumptions for the system. I am assuming that the system should support basic file operations such as uploading, downloading, deleting, renaming files, and viewing directory structures along with file permissions. The file size can range from around 1MB to 1GB, and the system is expected to be read heavy, meaning downloads will be more frequent than uploads. The system should support a large scale, for example around 10 million total users with"

    Yashasvi C. - "I would first like to clarify the requirements and assumptions for the system. I am assuming that the system should support basic file operations such as uploading, downloading, deleting, renaming files, and viewing directory structures along with file permissions. The file size can range from around 1MB to 1GB, and the system is expected to be read heavy, meaning downloads will be more frequent than uploads. The system should support a large scale, for example around 10 million total users with"See full answer

    Software Engineer
    System Design
    +1 more
  • Apple logoAsked at Apple 
    5 answers
    +2

    "To answer this, I will focus my efforts on explaining the most common type of API used in most modern software development applications - the REST API. For the purpose of simplicity, I will also keep the topics of Authorization and Authentication out of the mix. In essence, an API is a group of logic that takes in a specific set of inputs and responds with a specific set of outputs. This is analogous to going to a drive-thru and placing an order for a meal. When you give an API a bunch of"

    Pathworks P. - "To answer this, I will focus my efforts on explaining the most common type of API used in most modern software development applications - the REST API. For the purpose of simplicity, I will also keep the topics of Authorization and Authentication out of the mix. In essence, an API is a group of logic that takes in a specific set of inputs and responds with a specific set of outputs. This is analogous to going to a drive-thru and placing an order for a meal. When you give an API a bunch of"See full answer

    Software Engineer
    System Design
    +4 more
  • Google logoAsked at Google 
    6 answers
    Video answer for 'Estimate the storage needs for Google Photos on Pixel phones.'
    +3

    "Estimate how much it costs Google to store a year free of storage of photos for new Pixel Phones Clarify with Questions Know the Basic Numbers Decide on and Lay Down Your Structure Write Down the Equations Crunch Numbers Sanity Check Clarify with Questions Are we talking about cost per person? Whole user base? What do you mean when you are talking costs? Cost to build the facility? Cost to just store the data as a result o"

    Viet H. - "Estimate how much it costs Google to store a year free of storage of photos for new Pixel Phones Clarify with Questions Know the Basic Numbers Decide on and Lay Down Your Structure Write Down the Equations Crunch Numbers Sanity Check Clarify with Questions Are we talking about cost per person? Whole user base? What do you mean when you are talking costs? Cost to build the facility? Cost to just store the data as a result o"See full answer

    System Design
    Estimation
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • 3 answers
    Video answer for 'Design a Spotify Recommendation System.'

    " Thanks a lot for showing us how a recommender system can be build. I see it was proposed to use Collaborative filtering which is user - item matrix having dimension N * M (where N - number os users and M - number of songs). Though, it was explained how it gonna be built, it is still unclear how all users and songs features are going to be used. In that matrix we have values in cell (lets say i, j) like 1 - a specific user (i) clicked on song (j) when it was recommended or it is 0 when the user"

    Dinar M. - " Thanks a lot for showing us how a recommender system can be build. I see it was proposed to use Collaborative filtering which is user - item matrix having dimension N * M (where N - number os users and M - number of songs). Though, it was explained how it gonna be built, it is still unclear how all users and songs features are going to be used. In that matrix we have values in cell (lets say i, j) like 1 - a specific user (i) clicked on song (j) when it was recommended or it is 0 when the user"See full answer

    System Design
    Machine Learning
    +1 more
  • "To design a scalable ticketing system for peak events like Black Friday, you must employ a microservices architecture, implement robust load balancing, leverage caching, and use a combination of NoSQL and relational databases for different data types. Key features also include real-time seat booking, secure payment integration, mobile compatibility with QR code validation, robust admin dashboards for analytics, and integrated marketing tools like promo codes. The system needs to prioritize avail"

    Teja G. - "To design a scalable ticketing system for peak events like Black Friday, you must employ a microservices architecture, implement robust load balancing, leverage caching, and use a combination of NoSQL and relational databases for different data types. Key features also include real-time seat booking, secure payment integration, mobile compatibility with QR code validation, robust admin dashboards for analytics, and integrated marketing tools like promo codes. The system needs to prioritize avail"See full answer

    Solutions Architect
    System Design
  • OpenAI logoAsked at OpenAI 
    Add answer
    Software Engineer
    System Design
    +2 more
  • Meta logoAsked at Meta 
    3 answers
    Video answer for 'Design Facebook Newsfeed.'

    "How might the system design change if it is limited specifically to a web/mobile use case?"

    San S. - "How might the system design change if it is limited specifically to a web/mobile use case?"See full answer

    System Design
    Product Design
  • Amazon logoAsked at Amazon 
    3 answers

    "I started asking some questions regarding the constrains of the system: An antena is emitting a signal that says if the tagged device was out of the room where the interview was happening. I was able to decide which would be the schema for the Antena's message. The antena is sending the info of multiple users. The system doesn't need to push notification to the users when the user left the device behind. Upon reflection, this is what I recollected doing. I propuse the json schema a"

    Eduardo C. - "I started asking some questions regarding the constrains of the system: An antena is emitting a signal that says if the tagged device was out of the room where the interview was happening. I was able to decide which would be the schema for the Antena's message. The antena is sending the info of multiple users. The system doesn't need to push notification to the users when the user left the device behind. Upon reflection, this is what I recollected doing. I propuse the json schema a"See full answer

    Software Engineer
    System Design
  • Airbnb logoAsked at Airbnb 
    5 answers
    Video answer for 'Design Airbnb's search functionality.'
    +2

    "The back-of-the-envelope calculation is very well done!"

    Ushita S. - "The back-of-the-envelope calculation is very well done!"See full answer

    Software Engineer
    System Design
  • Google logoAsked at Google 
    Add answer
    Site Reliability Engineer
    System Design
    +1 more
  • Amazon logoAsked at Amazon 
    1 answer
    Video answer for 'Design a Distributed Message Queue'

    "Good Discussion on the distributed messaging queues (Complex topic with lot of nuances) Liked the mind-map style drawing of requirements and metrics capture Touched on different types of queue styles (point to point, pub-sub, fan-out/fan-in) Storage and WAL usage was interesting Some distributed queue challenges that could be helpful to highlight / expand are: Message guarantee / semantics - Ordering of messages across different servers Replication Master slave architecture or Pe"

    Karthik R. - "Good Discussion on the distributed messaging queues (Complex topic with lot of nuances) Liked the mind-map style drawing of requirements and metrics capture Touched on different types of queue styles (point to point, pub-sub, fan-out/fan-in) Storage and WAL usage was interesting Some distributed queue challenges that could be helpful to highlight / expand are: Message guarantee / semantics - Ordering of messages across different servers Replication Master slave architecture or Pe"See full answer

    Software Engineer
    System Design
  • DoorDash logoAsked at DoorDash 
    2 answers

    "Prompt: We work for an online shopping website. Our team wants to consider offering discounts (e.g. 10% off your next purchase) to customers to incentivize them to make purchases. How would you design a system that decides how to offer these incentives? Answer Goals: Increase customer engagement while controlling costs. Specifically, we want the increase in revenue per customer per week of customers that receive the discount to be greater than the cost of the discount. Metrics: Revenue per cu"

    Michael F. - "Prompt: We work for an online shopping website. Our team wants to consider offering discounts (e.g. 10% off your next purchase) to customers to incentivize them to make purchases. How would you design a system that decides how to offer these incentives? Answer Goals: Increase customer engagement while controlling costs. Specifically, we want the increase in revenue per customer per week of customers that receive the discount to be greater than the cost of the discount. Metrics: Revenue per cu"See full answer

    Machine Learning Engineer
    System Design
  • Uber logoAsked at Uber 
    5 answers
    Video answer for 'Design Uber.'
    +2

    "Very helpful! But I have a question: the location of drivers can be changing every minute, so won't reading from location cache returning stale data?"

    Linying W. - "Very helpful! But I have a question: the location of drivers can be changing every minute, so won't reading from location cache returning stale data?"See full answer

    System Design
  • Accenture logoAsked at Accenture 
    5 answers
    Video answer for 'Design an AI data product.'
    +2

    "Understand the business problem: Identify the business problem that the AI data product is intended to solve. Identify the target audience: Understand who will be using the data and what problem they will be solving for using the data. This will inform the features and functionality that should be included in the product. Gather and preprocess the data: Collect and preprocess the data that is relevant to the problem that it is being solved for. This will inform the AI algorithm"

    M D. - "Understand the business problem: Identify the business problem that the AI data product is intended to solve. Identify the target audience: Understand who will be using the data and what problem they will be solving for using the data. This will inform the features and functionality that should be included in the product. Gather and preprocess the data: Collect and preprocess the data that is relevant to the problem that it is being solved for. This will inform the AI algorithm"See full answer

    Data Analyst
    System Design
    +2 more
  • Product Manager
    System Design
    +1 more
  • Nvidia logoAsked at Nvidia 
    3 answers

    "I started off with developing microservices for the game and then incorporating kafka to make it scalable"

    Kiran M. - "I started off with developing microservices for the game and then incorporating kafka to make it scalable"See full answer

    Software Engineer
    System Design
  • Meta logoAsked at Meta 
    3 answers

    "Scoped out problem constraints - how much data to download, how many computers, and how much time, how you can be detected (decentralized load). Designed a web crawler."

    Faraz A. - "Scoped out problem constraints - how much data to download, how many computers, and how much time, how you can be detected (decentralized load). Designed a web crawler."See full answer

    Engineering Manager
    System Design
    +1 more
  • Capital One logoAsked at Capital One 
    1 answer

    "Functional Rquirements: User should be able to read account balance user should be able to withdraw money from account user should be able to add money to account user should be able to create a new account user should be able to cancel an opened account All of the above for Checkings and Savings account User should be able to pay credit card bill (similar to adding balance to checking and savings account) Non functional Requirements: ACID transactions. consistency > availabi"

    Alok S. - "Functional Rquirements: User should be able to read account balance user should be able to withdraw money from account user should be able to add money to account user should be able to create a new account user should be able to cancel an opened account All of the above for Checkings and Savings account User should be able to pay credit card bill (similar to adding balance to checking and savings account) Non functional Requirements: ACID transactions. consistency > availabi"See full answer

    Software Engineer
    System Design
Showing 81-100 of 427
Exponent

Get updates in your inbox with the latest tips, job listings, and more.

Follow Us

Products
Courses
Interview Questions
Interview Experiences
Popular articles
Guides
Coaching
For Partners
Company
Exponent © 2026
Terms of Service | Privacy