Course Overview
Distributed systems are the standard to deploy applications and services. Mobile and cloud computing combined with expanded Internet access make system design a core skill for the modern developer.This course provides a bottom-up approach to design scalable systems. First, you’ll learn about the building blocks of modern systems, with each component being a completely scalable application in itself. You'll then explore the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process. Finally, you'll design several popular services by using these modular building blocks in unique combinations.
This course will give you an alternative perspective on modern system design and empower engineers, architects, and product managers to dive deep into complex problems. By the end, you'll be prepared to design bigger systems capable of scaling with users and maintaining availability.
Takeaway Skills
- A modern perspective on designing complex systems using various building blocks in a microservice architecture
- A highly adaptive framework that can be used by engineers and managers to solve modern system design problems
- The ability to solve any novel problem with a robust system design approach using this course as North Star
- The ability to dive deep into project requirements and constraints
- An in-depth understanding of how various popular web-scale services are constructed