The series
Distributed computing the way you actually run into it. One failure at a time.
Who it's for
You should be comfortable writing a program that runs on one machine. That's the only prerequisite. The material starts from CS fundamentals and works up to the depth you'd need on the job, and every term gets defined before it's used, so nothing assumes you already know the jargon.
How it's structured
Thirteen episodes, 15 to 25 minutes each. Each one walks through a concept and then applies it. Every episode also comes with three exercises: a written problem, a coding exercise that usually extends the URL shortener (see The running example below), and a short quiz.
motivation, failure models, the CAP theorem.
physical clocks, logical clocks, consistency models.
the consensus problem, Raft, replication strategies.
distributed databases, message queues, and a capstone design exercise.
The running example
The URL shortener carries through the whole series, so you're never learning a concept against a throwaway example. It starts as a function and a dictionary running in one process. From there, each episode adds only what's needed to survive the next problem: more load, more data, a dropped network link, a data center going dark. By Episode 13 it's a full distributed system, and you'll have built every part of it.
Start with Episode 1