Werner Vogels

Building Systems that Last

Amazon's first system was a single monolith. Its failure sparked a 30-year evolution that ultimately led to the creation of AWS.

Building Systems that Last
#1about 9 minutes

Amazon's early monolith and database scaling challenges

The initial architecture of Amazon.com was a single monolith with a battery of relational databases that created a significant scaling bottleneck.

#2about 4 minutes

Decomposing the monolith into a service-oriented architecture

Amazon's first major architectural shift involved breaking the monolith into services, but an initial data-driven decomposition created new, large services that became bottlenecks themselves.

#3about 3 minutes

From microservices to infrastructure as a service

The move to smaller microservices improved developer productivity until the overhead of managing capacity and databases for each service led to the creation of internal infrastructure as a service platforms.

#4about 6 minutes

Designing for evolvability to accommodate future changes

Systems must be designed with evolvability as a core principle, allowing for continuous change and feature additions without downtime, as exemplified by Amazon S3.

#5about 4 minutes

Implementing cell-based architectures to isolate failures

A cell-based architecture isolates failures by partitioning customers and infrastructure into independent, self-contained units, thereby limiting the blast radius of any single outage.

#6about 3 minutes

Using sharding to dramatically reduce blast radius

By mapping customers to multiple overlapping cells (sharding), the blast radius of a failure is reduced from a fraction of cells to a much smaller fraction based on mathematical combinations.

#7about 4 minutes

Making cost a non-functional requirement in system design

Frugality is a key architectural driver where cost is treated as a primary non-functional requirement, and making cost metrics visible to engineers changes their behavior and improves efficiency.

#8about 3 minutes

How programming language choice impacts cost and sustainability

The choice of programming language has a significant impact on system cost and energy efficiency, with languages like Rust offering major advantages in performance and security over others like Python or Ruby.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

Related Articles

View all articles

From learning to earning

Jobs that call for the skills explored in this talk.

AWS Cloud Architekt

samecon GmbH & Co. KG
Eschborn, Germany

Remote
C++
Java
Python
Amazon Web Services (AWS)