After getting the question in the interview, don’t jump into the final design
This approach is likely to lead you to design the wrong system
Ask questions
One of the most important skills as an engineer is to ask the right questions, make the proper assumptions, and gather all the information needed to build a system. So, ask questions!!
Example questions
What specific features are we going to build?
How many users does the product have?
How fast does the company anticipate to scale up? What are the anticipated scales in 3 months, 6 months, and a year?
What is the company’s technology stack? What existing services you might leverage to simplify the design?
Tips for back of the envelop estimations
Back of the envelop estimations are all about the process. Solving the problem is more important than obtaining results
Precision is not expected. Approximate calculations instead of wasting time in performing exact calculations
Write down your assumptions, in order to reference later.