I heard about the book because of the ByteByteGo System Design YouTube channel. While this review is about the book I want to mention it because some of the videos cover the same topics and are much better than the corresponding chapters.
It's focused on making you pass the interview and will do a good job with that. But, if you want to learn more about designing systems and understand what you're talking about then you will be disappointed. Some chapters are better, and you can use the book to give you a high-level overview of a given topic, but most of them don't go into much detail.
It's still an interesting book, especially if you're in a junior or regular position.
If you're going to interviews then I recommend reading Chapter 4 (it's available online) to get some advice for the system design interview itself. It's great to have a better idea of what is expected from you during the meeting.
Chapters about Consistent Hashing and Unique ID Generator were the most interesting for me. I felt like I was actually learning something.
Each chapter has links to learn more about a given topic, so you can follow up on the the most interesting ideas.
I was disappointed with the Back of the Envelope estimation chapter the most. It's built on the idea from the 2011 High Scalability blog post, but it doesn't add much to it. I wanted a little more help with building intuitions for those estimates but got only some more data for review.
The second half of the book was also a lot less interesting for some reason. Even my notes starting with chapter 9 are almost empty. YMMV.
Overall the book sometimes feels like it's trying to teach me what to say, instead of actually explaining the concepts. It makes sense if you're only goal is passing the interview.
It's a good high-level introduction to System Design and it will help you pass your interview, but it's not enough to give you a good understanding of those bigger systems.
System Design Interview – An insider's guide by Alex Xu ↩︎
ByteByteGo YouTube channel ↩︎
A Framework For System Design Interviews ↩︎
A Guide to Consistent Hashing | Toptal ↩︎
Announcing Snowflake | Twitter Engineering Blog ↩︎
Back-of-the-envelope Estimation ↩︎
High Scalability | Google Pro Tip: Use Back-Of-The-Envelope-Calculations To Choose The Best Design ↩︎
Feedback or Comments?
Want to learn more?
Sign up to get a digest of my articles and interesting links via email every month.