Acing the System Design Interview

· 판매자: Simon and Schuster
1.0
리뷰 1개
eBook
472
페이지
적용 가능

eBook 정보

The system design interview is one of the hardest challenges you’ll face in the software engineering hiring process. This practical book gives you the insights, the skills, and the hands-on practice you need to ace the toughest system design interview questions and land the job and salary you want.

In Acing the System Design Interview you will master a structured and organized approach to present system design ideas like:

  • Scaling applications to support heavy traffic
  • Distributed transactions techniques to ensure data consistency
  • Services for functional partitioning such as API gateway and service mesh
  • Common API paradigms including REST, RPC, and GraphQL
  • Caching strategies, including their tradeoffs
  • Logging, monitoring, and alerting concepts that are critical in any system design
  • Communication skills that demonstrate your engineering maturity

Don’t be daunted by the complex, open-ended nature of system design interviews! In this in-depth guide, author Zhiyong Tan shares what he’s learned on both sides of the interview table. You’ll dive deep into the common technical topics that arise during interviews and learn how to apply them to mentally perfect different kinds of systems.

Foreword by Anthony Asta, Michael D. Elder.

About the technology

The system design interview is daunting even for seasoned software engineers. Fortunately, with a little careful prep work you can turn those open-ended questions and whiteboard sessions into your competitive advantage! In this powerful book, Zhiyong Tan reveals practical interview techniques and insights about system design that have earned developers job offers from Amazon, Apple, ByteDance, PayPal, and Uber.

About the book

Acing the System Design Interview is a masterclass in how to confidently nail your next interview. Following these easy-to-remember techniques, you’ll learn to quickly assess a question, identify an advantageous approach, and then communicate your ideas clearly to an interviewer. As you work through this book, you’ll gain not only the skills to successfully interview, but also to do the actual work of great system design.

What's inside

  • Insights on scaling, transactions, logging, and more
  • Practice questions for core system design concepts
  • How to demonstrate your engineering maturity
  • Great questions to ask your interviewer

About the reader

For software engineers, software architects, and engineering managers looking to advance their careers.

About the author

Zhiyong Tan is a manager at PayPal. He has worked at Uber, Teradata, and at small startups. Over the years, he has been in many system design interviews, on both sides of the table.

The technical editor on this book was Mohit Kumar.

Table of Contents

PART 1
1 A walkthrough of system design concepts
2 A typical system design interview flow
3 Non-functional requirements
4 Scaling databases
5 Distributed transactions
6 Common services for functional partitioning
PART 2
7 Design Craigslist
8 Design a rate-limiting service
9 Design a notification/alerting service
10 Design a database batch auditing service
11 Autocomplete/typeahead
12 Design Flickr
13 Design a Content Distribution Network (CDN)
14 Design a text messaging app
15 Design Airbnb
16 Design a news feed
17 Design a dashboard of top 10 products on Amazon by sales volume
Appendix A Monoliths vs. microservices
Appendix B OAuth 2.0 authorization and OpenID Connect authentication
Appendix C C4 Model
Appendix D Two-phase commit (2PC)

평점 및 리뷰

1.0
리뷰 1개

저자 정보

Zhiyong Tan is a manager at PayPal. Previously, he worked as a senior full-stack engineer at Uber, as a data engineer at small startups, and as a software engineer at Teradata. Over the years, he has been on both sides of the table in numerous system design interviews. Zhiyong has also received prized job offers from prominent companies such as Amazon, Apple and Bytedance/TikTok.

이 eBook 평가

의견을 알려주세요.

읽기 정보

스마트폰 및 태블릿
AndroidiPad/iPhoneGoogle Play 북 앱을 설치하세요. 계정과 자동으로 동기화되어 어디서나 온라인 또는 오프라인으로 책을 읽을 수 있습니다.
노트북 및 컴퓨터
컴퓨터의 웹브라우저를 사용하여 Google Play에서 구매한 오디오북을 들을 수 있습니다.
eReader 및 기타 기기
Kobo eReader 등의 eBook 리더기에서 읽으려면 파일을 다운로드하여 기기로 전송해야 합니다. 지원되는 eBook 리더기로 파일을 전송하려면 고객센터에서 자세한 안내를 따르세요.