Google System Design Interview Questions

Review this list of 11 Google system design engineering manager interview questions and answers verified by hiring managers and candidates.
  • +9

    "Designing a system to deny services to requests from banned IPs involves integrating real-time IP checking with your service architecture. Here’s a detailed outline of how you can design such a system: System Design Overview The goal is to ensure that your service can efficiently check incoming requests against a list of banned IPs and deny access when necessary. The system will leverage an external API, security.gov.x, to determine if an IP address is blocked or allowed. **Key Compone"

    Palak A. - "Designing a system to deny services to requests from banned IPs involves integrating real-time IP checking with your service architecture. Here’s a detailed outline of how you can design such a system: System Design Overview The goal is to ensure that your service can efficiently check incoming requests against a list of banned IPs and deny access when necessary. The system will leverage an external API, security.gov.x, to determine if an IP address is blocked or allowed. **Key Compone"See full answer

    Engineering Manager
    System Design
    +2 more
  • Google logoAsked at Google 
    +1

    "I tried solving this problem and here is the recorded video for the answer. https://www.youtube.com/watch?v=d1tOkeQjyI4 And here is the link to Excalidraw board - https://excalidraw.com/#json=uabNFHcZm5qNh8CInMvyh,Wn9Vf1ZhGdl_iBCQYFkYdw"

    Rjj - "I tried solving this problem and here is the recorded video for the answer. https://www.youtube.com/watch?v=d1tOkeQjyI4 And here is the link to Excalidraw board - https://excalidraw.com/#json=uabNFHcZm5qNh8CInMvyh,Wn9Vf1ZhGdl_iBCQYFkYdw"See full answer

    Engineering Manager
    System Design
    +1 more
  • Google logoAsked at Google 
    Video answer for 'How would you build TinyURL?'
    +9

    "@Jacob, your videos are really good and helpful. I want to know about the tool, you use for explaining the design in the videos."

    anush - "@Jacob, your videos are really good and helpful. I want to know about the tool, you use for explaining the design in the videos."See full answer

    Engineering Manager
    System Design
    +2 more
  • Google logoAsked at Google 
    +9

    "Rate Limiter is to limit the number of request from a particular IP Address. Rate limiter will block the IP address to reduce the load on server. It should be highly available and handle concurrent requests. Blocked IP addresses should be kept in a pool which is present in shared cache. We need to keep threshold value after it reaches threshold value it should start blocking IP address. All these ip address to be kept in No SQL DB. Batch will run that will clear the cache and delete all the bloc"

    Ashish G. - "Rate Limiter is to limit the number of request from a particular IP Address. Rate limiter will block the IP address to reduce the load on server. It should be highly available and handle concurrent requests. Blocked IP addresses should be kept in a pool which is present in shared cache. We need to keep threshold value after it reaches threshold value it should start blocking IP address. All these ip address to be kept in No SQL DB. Batch will run that will clear the cache and delete all the bloc"See full answer

    Engineering Manager
    System Design
    +2 more
  • Google logoAsked at Google 

    "The question is bit vague (I guess deliberately) so I believe firstly we shall ask questions and resolve ambiguity. Some initial questions could be : 1) Is this one time activity or something that should be done on continuous basis. If continuous basis then at what frequency. 2) How much staleness is acceptable in SYSTEM Y data 3) Are there any limitation in SYSTEM Y and is it fair to assume that we would need some kind of transformation to bring data into SYSTEM Y schema. 4) What kind of vol"

    Kshitij A. - "The question is bit vague (I guess deliberately) so I believe firstly we shall ask questions and resolve ambiguity. Some initial questions could be : 1) Is this one time activity or something that should be done on continuous basis. If continuous basis then at what frequency. 2) How much staleness is acceptable in SYSTEM Y data 3) Are there any limitation in SYSTEM Y and is it fair to assume that we would need some kind of transformation to bring data into SYSTEM Y schema. 4) What kind of vol"See full answer

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

  • Google logoAsked at Google 
    Video answer for 'Design a web crawler.'
    +6

    "https://youtu.be/pHu6N3DTnCY?si=BkkVXZVUVRoE5cnt -> This is one video that I recorded for this question. Please go through and feel free to discuss further here or in the youtube comments"

    Rjj - "https://youtu.be/pHu6N3DTnCY?si=BkkVXZVUVRoE5cnt -> This is one video that I recorded for this question. Please go through and feel free to discuss further here or in the youtube comments"See full answer

    Engineering Manager
    System Design
    +1 more
  • Google logoAsked at Google 
    Engineering Manager
    System Design
    +1 more
  • Google logoAsked at Google 
    Video answer for 'Design a key-value store.'

    "Simple file system ( Hash Map , LSM trees), and consistent hashing. I failed to discuss about conflicts ( Versioning)"

    V V. - "Simple file system ( Hash Map , LSM trees), and consistent hashing. I failed to discuss about conflicts ( Versioning)"See full answer

    Engineering Manager
    System Design
    +2 more
  • " can we use blomfilters to check existing usernames? and if both are creating at a time, like both are choosing some abcd , here system checks whether user with that name exists or not. so while checking , it will add an entry on redis (example) with this name as key and obtain lock using some distributed lock. , it will lock on that name. (like seat booking in bookmyshow) with some TTL value. so this check will happen once user enters his interest username and also while submit .. 2 times che"

    Gk K. - " can we use blomfilters to check existing usernames? and if both are creating at a time, like both are choosing some abcd , here system checks whether user with that name exists or not. so while checking , it will add an entry on redis (example) with this name as key and obtain lock using some distributed lock. , it will lock on that name. (like seat booking in bookmyshow) with some TTL value. so this check will happen once user enters his interest username and also while submit .. 2 times che"See full answer

    Engineering Manager
    System Design
    +2 more
  • Google logoAsked at Google 

    "Functional Requirement Monitor health, metrics Alert in case of failure/anomaly Visualize the live health Analyse machines on periodic basis Non Functional Should not exert load on machines low latency Highly scalable Logs/Metrics Gathering push - machine gather and send to system and low priority background thread along with batching pull - heart beat check (for offline machines) Processing Real time streaming using Kafka/kinesis + Flink TimeSeries database for stor"

    Sourabh G. - "Functional Requirement Monitor health, metrics Alert in case of failure/anomaly Visualize the live health Analyse machines on periodic basis Non Functional Should not exert load on machines low latency Highly scalable Logs/Metrics Gathering push - machine gather and send to system and low priority background thread along with batching pull - heart beat check (for offline machines) Processing Real time streaming using Kafka/kinesis + Flink TimeSeries database for stor"See full answer

    Engineering Manager
    System Design
    +2 more
  • "(This was not search autocomplete based on prefix matching question.) First of all, please note :- The interviewer is not expecting you to get to the right answer in just 1 hr. These systems have been designed over months and improved over years and its impractical for anyone to expect you to get to the right answer in 1 hr. (There is no one single right answer). At the end, the interviewer (director level person) told me the same. What they are looking for is your thought process, getting from"

    shg - "(This was not search autocomplete based on prefix matching question.) First of all, please note :- The interviewer is not expecting you to get to the right answer in just 1 hr. These systems have been designed over months and improved over years and its impractical for anyone to expect you to get to the right answer in 1 hr. (There is no one single right answer). At the end, the interviewer (director level person) told me the same. What they are looking for is your thought process, getting from"See full answer

    Engineering Manager
    System Design
Showing 1-11 of 11