How to prepare

How to Prepare

Build a Foundation

  1. Understand what a system design interview is: Maybe you've never done a system design interview before, you're not alone! Start by reading our intro to system design or watching a video of a mock system design interview.
  2. Choose a delivery framework: System design interviews move fast. It's important that you have a clear roadmap to help you think linearly and avoid scope creep. We strongly recommend our Delivery Framework. This is the framework you'll follow to design your system come interview day.
  3. Start with the basics: If you're new system design in particular, you'll want to start by learning the basics and mapping out the scope of knowledge required. Start by reading about the Core Concepts, Key Technologies, and Common Patterns used in system design interviews. These write-ups are high-level, but they help you build the mental model necessary to build upon.

Practice Practice Practice

Once you have the foundation in place, it's time to practice. Passively consuming content is good, but you'll retain 10x more information by actually doing.

  1. Choose a question: Select a question from the list of common questions below.
  2. Read the requirements: Understand the requirements of the system you'll need to design.
  3. Try to answer on your own: Either practice with our Guided Practices (below) or on a virtual whiteboard like Excalidraw.
  4. Read the answer key: Only after you have tried to answer the question, read the answer key to see how your answer compares.
  5. Put your knowledge to the test: Once you've done a few questions and are feeling comfortable, put your knowledge to the test by scheduling a mock interview with an interviewer from your target company.