Enjoy fast, free delivery, exclusive deals, and award-winning movies & TV shows with Prime
Try Prime
and start saving today with fast, free delivery
Amazon Prime includes:
Fast, FREE Delivery is available to Prime members. To join, select "Try Amazon Prime and start saving today with Fast, FREE Delivery" below the Add to Cart button.
Amazon Prime members enjoy:- Cardmembers earn 5% Back at Amazon.com with a Prime Credit Card.
- Unlimited Free Two-Day Delivery
- Instant streaming of thousands of movies and TV episodes with Prime Video
- A Kindle book to borrow for free each month - with no due dates
- Listen to over 2 million songs and hundreds of playlists
- Unlimited photo storage with anywhere access
Important: Your credit card will NOT be charged when you start your free trial or if you cancel during the trial period. If you're happy with Amazon Prime, do nothing. At the end of the free trial, your membership will automatically upgrade to a monthly membership.
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
System Design Interview – An insider's guide
| Price | New from | Used from |
- Kindle
$37.99 Read with our free app - Paperback
$37.44 - $37.992 Used from $37.44 1 New from $37.99
Explore your book, then jump right back to where you left off with Page Flip.
View high quality images that let you zoom in to take a closer look.
Enjoy features only possible in digital – start reading right away, carry your library with you, adjust the font, create shareable notes and highlights, and more.
Discover additional details about the events, people, and places in your book, with Wikipedia integration.
Purchase options and add-ons
System design interviews are the most difficult to tackle of all technical interview questions. This book is Volume 1 of the System Design Interview - An insider’s guide series that provides a reliable strategy and knowledge base for approaching a broad range of system design questions. This book provides a step-by-step framework for how to tackle a system design question. It includes many real-world examples to illustrate the systematic approach, with detailed steps that you can follow.
What’s inside?
- An insider’s take on what interviewers really look for and why.
- A 4-step framework for solving any system design interview question.
- 16 real system design interview questions with detailed solutions.
- 188 diagrams to visually explain how different systems work.
Table Of Contents
Chapter 1: Scale From Zero To Millions Of Users
Chapter 2: Back-of-the-envelope Estimation
Chapter 3: A Framework For System Design Interviews
Chapter 4: Design A Rate Limiter
Chapter 5: Design Consistent Hashing
Chapter 6: Design A Key-value Store
Chapter 7: Design A Unique Id Generator In Distributed Systems
Chapter 8: Design A Url Shortener
Chapter 9: Design A Web Crawler
Chapter 10: Design A Notification System
Chapter 11: Design A News Feed System
Chapter 12: Design A Chat System
Chapter 13: Design A Search Autocomplete System
Chapter 14: Design Youtube
Chapter 15: Design Google Drive
Chapter 16: The Learning Continues
- ISBN-13979-8664653403
- Publication date
2020
June 12
- Language
EN
English
- Dimensions
6.0 x 0.7 x 9.0
inches
- Length
320
Pages
Books with Buzz
Discover the latest buzz-worthy books, from mysteries and romance to humor and nonfiction. Explore more
Frequently bought together

More items to explore
Consider using cache when data is read frequently but modified infrequently.Highlighted by 1,652 Kindle readers
The ability to ask good questions is also an essential skill, and many interviewers specifically look for this skill.Highlighted by 1,360 Kindle readers
When choosing a sharding key, one of the most important criteria is to choose a key that can evenly distributed data.Highlighted by 1,352 Kindle readers
Product details
- ASIN : B08CMF2CQF
- Publisher : Independently published (June 12, 2020)
- Language : English
- Paperback : 320 pages
- ISBN-13 : 979-8664653403
- Item Weight : 15.2 ounces
- Dimensions : 6 x 0.73 x 9 inches
- Best Sellers Rank: #9,437 in Books (See Top 100 in Books)
- #1 in Bioinformatics (Books)
- #3 in Job Interviewing (Books)
- #5 in Job Hunting (Books)
- Customer Reviews:
Important information
To report an issue with this product, click here.
About the author

Alex Xu is an experienced software engineer and entrepreneur. Previously, he worked at Twitter, Apple and Zynga. He can be found online at linkedin (https://www.linkedin.com/in/alex-xu-a8131b11/) and twitter (@alexxubyte)
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonReviews with images
Submit a report
- Harassment, profanity
- Spam, advertisement, promotions
- Given in exchange for cash, discounts
Sorry, there was an error
Please try again later.-
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
I read the book twice and take notes. I read all the reference materials mentioned in the book. Reading those extra materials help me a lot with topics I’m not familiar with.
Highlights:
+ The book has a good set of questions.
+ Lots of diagrams and clear explanation.
+ You will learn something new by reading the book regardless of your experience.
Drawbacks:
- I wish the reference links are footnotes instead of being at the end of chapters. That way, it’s more accessible.
- Some topics are not talked about too much like security and stream processing.
- It’s tailored towards junior and semi-senior engineers. Some chapters are not deep enough. For example, I wish the author would talk more about feed ranking and caching in the designing news feed chapter.
Overall, it’s a masterpiece in system design books. However, no book can cover everything in system design. No one knows every system. Here are some of my other recommendations:
-- designing data-intensive applications. Highly recommended.
-- system design primer github repo. Highly recommended free resource.
-- Leetcode discussion forum about system designs.
-- Grokking the system interview course. This is an ok resource but not very deep.
-- Various youtube channels. I like channels like Tushar Roy, System Design Interview, Success in Tech, etc. There are a lot more but I found them most useful for senior engineer positions.
-- Various tech blogs: Facebook, Netflix, Uber, AirBnb, etc. Those tech blogs are extremely valuable to help us understand real-life systems.
-- highscalability website. The website contains lots of real world systems.
-- InfoQ youtube channel. Many tech companies talk about how they scale their systems at infoQ. I find sometimes it’s quite hard to find useful videos on google but when I narrow down it to a specific channel, it’s much easier to find. For example, I found a lot of useful tech talks about uber there. It’s invaluable when I interviewed there.
"Communicate with your interview" (should be interviewer)
"Give the high-level design first then drills down" (should be "drill")
There's a couple of these on every single page of the book, which spoils both reading speed and enjoyment.
The copyright page lists an editor, but I don't know what editing they actually did.
Can’t wait to read the next book of this author
I read a few posts from other people, and I think those comments do not really reflect the author's true intent. The author was trying to provide a generic way of how to approach the design issues and provided some classic design patterns. The book is very well organized. In the first few chapters, it tells you the common ways to scale the system and then gradually dive into deeper to show some fundamental concepts and practical ways of how a distributed system should be built. For example, Consistent Hashing is the foundation and has been used so many places, Alex explained very well. Then he discussed how to efficiently compare the nodes and how to detect the temp and permanent failures and recover from the failure. Yes, some of the content can be considered as "borrowed" from the paper, but Alex put them together in a very nice and easy way and save you a lot of questions and time. I read the original paper and still get inspired by the book. Another example is the Youtube chapter, Alex used some concepts from facebook paper. But we have to appreciate that he understood the content and put into such an easy way that you don’t need to spend a day to read facebook paper and still only 60% understanding.
You also need to think of the first eight chapters are the building blocks of the distributed system, and they are the real challenges. Maybe in no interviews, people will ask the same questions, but these technics are really needed for you to build a good distributed system. For example, there is no global clock in the distributed system; then Twitter came up a Snowflake unique ID with the time concept in it. For example, the unique ID becomes the foundation of generating the short URL and newsfeed. For example, the Merkle tree helps you efficiently compare the difference between the nodes.
Yes, there are some chapters that seem to be oversimplified, such as Google drive chapter, but overall the book covered a lot of patterns that require building the distributed system.
A suggestion for Alex, organized the book into two sections, the common challenges and practical patterns for the distributed system, then dive into the interview questions.
Great effort, I will give my 5 stars!
Top reviews from other countries
The author talks about the "building blocks" of systems (e.g. caches, load balancers) then offers a 4 step framework for answering questions about system design. What follows is analysing various system design questions such as "How to build a web crawler".
There are plenty of diagrams and references for deeper details, and in general the content is clear. However, there are numerous typos and I think this could be edited better. In addition, as other reviewers have noticed, some parts really need to go into more technical detail or explain things better.
That said, it shows you the "lay of the land" in terms of systems. I'd recommend supplementing this with other great books like "Designing Data-Intensive Applications" (which is also recommended in this book).
The printing quality is good, but not as flashy as the books published by O'Reilly, for example.
The book is quite lengthy and thick but it reads fast. There are lots of pictures and diagrams and the font is quite big so don't be discouraged by the size. Getting through it will probably take you about 8-10 hours of reading.
That being said, if you are planning to interview for a senior+ position L5, L6 I'd say this book is not enough. But every chapter has a list of references for the information, usually tech blogs of known companies such as AirBnB and Netflix. So, if you want to ace a System Design interview I would strongly encourage you to go through the book AND read all the reference materials.
Overall it's a good book but not as thorough and technical as Designing Data-Intensive Applications (also a very good read)



















