General tips

Don’t jump into solution mode

  • 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.
  • Label your units.

Sources