This blog post is based on my takeaway from System Design Interview Volume 1 and Volume 2 — by Alex Xu
These books are the best (interview-oriented) system design books I have read.
Firstly we need to understand the structure of the system design interview. Let’s take the Atlassian system design interview as an example.
How to nail your engineering interview | Atlassian
Interviewing What's it like to interview for an engineering role at Atlassian? An inside look at our process so you can…
According to their description, we can get some key points:
- 60 minutes session
- many viable solutions
- scale system under specific conditions
- tackle the problem from real-world scenarios
The key points show us what a typical system design interview looks like and what the interviewer expects to hear during the interview.
Like playing tennis, you need to have your framework to hit high-quality shots. We need this kind of frame in the system design interview as well.
This is the frame from the book System Design Interview.
Step 1 Understand the problem and establish the design scope we need to discuss with the interviewer the functional and non-functional requirements of this system and the scale of the system.
Step 2 high-level design and get buy-in take the news feed from this book as an example
The goal of this step is to provide a blueprint of the design and reach an agreement with the interviewer. Rather than spending too much time on the detail, you can make use of some concrete examples to explain your high-level design.
Step 3 Dive Deep
Within one hour interview we cannot explain all the details of our design we need to listen to the feedback and confirm with the interviewer to decide which part we need to explain further in detail.
above is a detailed version of the news feed example.
Step 4 Wrap up
There are several things worth doing in this part.
- Summarize your design
- Identify the bottleneck
- potential improvement
- Scale up plan
How to prepare
Grab yourself a hard copy of the system design book I find these two are really good and I have finished reading both of them.
Step 1: Prepare your frame
System Design Interview - An insider's guide
The system design interview is considered to be the most complex and most difficult technical job interview by many…
System Design Interview - An Insider's Guide: Volume 2
System Design Interview - An Insider's Guide (Volume 2) This book should be accessible to readers who have a basic…
Before you practice system design interview with a real person make sure you already have a frame in your mind.
Step 2: Practice with a real person
Anonymous mock interviews with engineers from FAANG and more
Software Engineer at Facebook "interviewing.io was more than a small part of my success.Your platform gave me the…
Practice Live Job Interviews - For Free
Pramp definitely played a role in my performance. Nothing beats mock coding interviews. I still remember my first…
To wrap up the top 3 priority
- Pros and Cons of different solutions
- Practice with your frame
The interviewer would really value your communication skills as you are the potential colleague with them so interviewers would like a person easy to communicate with.
Wish you good luck in your next system design interview.
- System Design Interview an insider’s guide — Alex Xu
- System Design Interview — An Insider’s Guide: Volume 2 — Alex Xu, Sahn Lam