All courses
· advanced

System Design

Making the trade-offs deliberately. Estimating load before choosing anything, where state actually lives, what happens when a dependency is slow rather than dead, and resisting complexity you have not earned.

Pathaxis · Original content

Written in house, from the work rather than from a syllabus. Every example is one we would use ourselves, and every quiz question explains why its answer is right.

86 min 6 lessons 15 quiz questionsStart course

What you’ll learn

  • Estimate load and storage well enough to rule options in and out
  • Keep services stateless, and say where state has to live instead
  • Scale reads and writes with the right tool for each
  • Design for partial and slow failure, not only for total failure
  • Judge when decomposition helps and when it is premature
  • Walk through a design under questioning, stating trade-offs

Before you start

  • · Backend Foundations and Building a REST API
  • · Some experience operating a service

Syllabus

01

Before designing

Requirements and arithmetic.