System Design Interview Questions

Review this list of 325 system design interview questions and answers verified by hiring managers and candidates.
  • Meta (Facebook) logoAsked at Meta (Facebook) 

    "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
  • Meta (Facebook) logoAsked at Meta (Facebook) 

    "Designing a video streaming system like Netflix or Facebook Video involves addressing multiple aspects, such as scalability, availability, low latency, and high performance. Here's a high-level design: System Requirements Functional Requirements: User Management: User sign-up, login, and profile management. Subscription plans and payment integration (for Netflix-like systems). Content Management: Upload, edit, and delete videos. Categorize content (genres, recommendations). Video Playback: S"

    Kamal .. - "Designing a video streaming system like Netflix or Facebook Video involves addressing multiple aspects, such as scalability, availability, low latency, and high performance. Here's a high-level design: System Requirements Functional Requirements: User Management: User sign-up, login, and profile management. Subscription plans and payment integration (for Netflix-like systems). Content Management: Upload, edit, and delete videos. Categorize content (genres, recommendations). Video Playback: S"See full answer

    Engineering Manager
    System Design
    +1 more
  • Databricks logoAsked at Databricks 
    Software Engineer
    System Design
    +1 more
  • Google logoAsked at Google 
    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
  • Adobe logoAsked at Adobe 
    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
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • Meta (Facebook) logoAsked at Meta (Facebook) 
    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
  • "Load Balancer, Multiple API Servers, game Service, pub-sub system, HTTP Long Polling for status updates, write-through cache. No SQL DB to store user, game, and move information."

    gdecuri - "Load Balancer, Multiple API Servers, game Service, pub-sub system, HTTP Long Polling for status updates, write-through cache. No SQL DB to store user, game, and move information."See full answer

    Engineering Manager
    System Design
  • Airbnb logoAsked at Airbnb 
    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

    System Design
  • Meta (Facebook) logoAsked at Meta (Facebook) 
    Machine Learning Engineer
    System Design
  • "1 Billion Matches per day is it over sized ?"

    Anup S. - "1 Billion Matches per day is it over sized ?"See full answer

    System Design
  • Uber logoAsked at Uber 
    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 
    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
    +1 more
  • Microsoft logoAsked at Microsoft 

    "I first clarified what he needed for the leaderboard meaning did he need a gaming leaderboard system, a stock market leaderboard system where the trades placed would be ranked in terms of values or a coding platform leaderboard where the users are ranked as per the points earned by solving the problem? He answered that he wanted a multipurpose leaderboard system He was specifically interested in the design of the api part Explained him that assuming we had a flask api there would be a get re"

    GalacticInterviewer - "I first clarified what he needed for the leaderboard meaning did he need a gaming leaderboard system, a stock market leaderboard system where the trades placed would be ranked in terms of values or a coding platform leaderboard where the users are ranked as per the points earned by solving the problem? He answered that he wanted a multipurpose leaderboard system He was specifically interested in the design of the api part Explained him that assuming we had a flask api there would be a get re"See full answer

    Software Engineer
    System Design
  • "While all branches should ideally be tested, some are more critical than others based on the following factors: A. High-Risk or Business-Critical Logic Branches that handle authentication & authorization (e.g., login, role-based access control) Financial transactions or payment processing logic (e.g., tax calculations, refunds, invoice generation) Security-related branches (e.g., encryption/decryption, token verification) B. Error Handling & Exception Paths Branches that deal with error conditi"

    Adesegun K. - "While all branches should ideally be tested, some are more critical than others based on the following factors: A. High-Risk or Business-Critical Logic Branches that handle authentication & authorization (e.g., login, role-based access control) Financial transactions or payment processing logic (e.g., tax calculations, refunds, invoice generation) Security-related branches (e.g., encryption/decryption, token verification) B. Error Handling & Exception Paths Branches that deal with error conditi"See full answer

    Software Engineer
    System Design
  • Meta (Facebook) logoAsked at Meta (Facebook) 
    Video answer for 'Design the system architecture for WhatsApp.'
    +3

    "Excellent job Roshan, really liked the explanation. Which software were you using to explain the system design diagrams?"

    Krishnan S. - "Excellent job Roshan, really liked the explanation. Which software were you using to explain the system design diagrams?"See full answer

    System Design
    Technical
  • Amazon logoAsked at Amazon 
    Machine Learning Engineer
    System Design
    +1 more
  • Salesforce logoAsked at Salesforce 
    Video answer for 'Design Ticketmaster'
    Software Engineer
    System Design
  • Apple logoAsked at Apple 
    +1

    "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
    +3 more
  • Amazon logoAsked at Amazon 
    Software Engineer
    System Design
  • Software Engineer
    System Design
Showing 61-80 of 325