This interview will require you to design a large-scale
product or infrastructure component. For example: “Design a URL shortening service like bit.ly”.
What we’re looking for
As you’re designing the system, among the things we’re looking for is to see how you:- Ask clarifying questions to determine what the goals and requirements of the system are.
- Determine which parts of the problem are most important and will affect the overall design.
- Describe the system at a high level, explaining the overall architecture.
- Draw diagrams that clearly describe the relationship among different system components.
- Identify trade-offs in your design (such as consistency, availability, partitioning, performance), and describe how you make decisions around them.
- Calculate back-of-the-envelope resources necessary (storage, CPU, RAM, etc.).
- Adjust the design of your system when requirements or constraints change.
- Determine how your system will perform at scale, and identify any bottlenecks and limitations in your design.
- Explain how your system handles both success and failure cases.
How successful candidates prepare
Most successful candidates prepare by coming up with designs for large
scale products and then justifying them to a friend (who plays the role
of interviewer). They focus on technology they really understand and/or
have personally used, and tell us about how
they would solve a problem rather than how they think Facebook actually
solves the problem.
This Quora post has some helpful suggestions that you can look through:
https://www.quora.com/How-do- I-prepare-to-answer-design- questions-in-a-technical- interview
This resource walks you through solutions for the following examples:
https://www.hiredintech.com/ classrooms/system-design/
This Quora post has some helpful suggestions that you can look through:
https://www.quora.com/How-do-
This resource walks you through solutions for the following examples:
https://www.hiredintech.com/
- Design a URL shortening service like bit.ly.
- How would you implement the Google search?
- Design a client-server application which allows people to play chess with one another.
- How would you store the relations in a social network like Facebook and implement a feature where one user receives notifications when their friends like the same things as they do?
Comments
Post a Comment
https://gengwg.blogspot.com/