Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying System Design Guide for Software Professionals
  • Table Of Contents Toc
System Design Guide for Software Professionals

System Design Guide for Software Professionals

By : Dhirendra Sinha, Tejas Chopra
close
close
System Design Guide for Software Professionals

System Design Guide for Software Professionals

By: Dhirendra Sinha, Tejas Chopra

Overview of this book

Building scalable software systems is more critical than ever. Yet, many software professionals struggle to navigate the complexities of system design, especially when aiming for positions at top tech companies. Written by Dhirendra Sinha, a seasoned Engineering Leader at Google with a blend of experience working at large companies such as Cisco, Oracle, and Yahoo, and Tejas Chopra, a Senior Software Engineer at Netflix, a TEDx speaker, and a Co-Founder of GoEB1, this comprehensive and authoritative resource on system design offers invaluable insights and strategies to help you excel in interviews with all major tech companies. This guide covers the basics of system design, including the principles and techniques of distributed systems, and delves into core building blocks such as distributed system theorems, attributes, and the design and implementation of system components. Following examples of popular applications such as Uber, Twitter, Instagram, Google Docs, and Netflix, you’ll learn how to apply concepts to real-world scenarios. The book offers expert advice and strategies for preparing and acing system design interviews, along with a mind map/cheat sheet summarizing the key takeaways. By the end of this book, you’ll be equipped with unique techniques and the confidence to solve any coding interview question.
Table of Contents (21 chapters)
close
close
Lock Free Chapter
1
Part 1: Foundations of System Design
5
Part 2: Core Components of Distributed Systems
10
Part 3: System Design in Practice

Application gateways

While load balancers provide basic traffic distribution services, application gateways offer more advanced intermediary proxy functionality tailored for modern cloud-based environments.

An application gateway sits between clients and backend services, intercepting traffic to provide routing, security, acceleration, analytics, and adaptability capabilities. Application gateways are especially beneficial for architectures based on microservices, where numerous independent services must be aggregated into unified APIs.

We will cover the key features and benefits of application gateways, their importance for microservices, real-world implementation options, and critical design considerations when integrating them into cloud architectures. Figure 4.8 shows a typical API gateway, which is the first point of contact for incoming API traffic and covers different aspects of security, AuthN, AuthZ, caching, and even load balancing.

Figure 4.8: A typical API gateway

Figure...

CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
System Design Guide for Software Professionals
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon