Lectures
What is covered, week by week, and which topics each lecture draws on.
Each lecture names that week’s failure before the lab makes it happen: the reflex that looks reasonable, why it fails in this situation, what to do instead, and what that does to the requests that were already working. Every week pairs the lecture with a full deck; related: connects it back to the lab it sets up and the assessment it feeds.

A retried read is safe for a reason nobody writes down
Why the retry reflex gets learned on requests where it cannot do harm, and what changes as soon as the call writes something.
Week 1 · 22 February 2027

A non-idempotent retry is a hidden bug
Why a timeout cannot tell a client whether the write already happened, and what an idempotency key actually guarantees.
Week 2 · 1 March 2027

Your retry loop is the outage now
Why more attempts, sooner, makes recovery slower, and why spacing retries out belongs in a library rather than at each call site.
Week 3 · 8 March 2027

Ten thousand correct clients make one spike
How individually correct backoff still adds up to a synchronised spike, and why jitter has to be mandatory rather than optional.
Week 4 · 15 March 2027

A budget beats a per-call count
Why retries compound multiplicatively across a call stack, and what a shared retry budget has to track to stop them.
Week 5 · 22 March 2027

A runbook fails the same ways a retry library does
Why some weeks have no client, library or platform to hand the decision to, and what a runbook has in common with a retry library.
Week 6 · 12 April 2027

Not every failure can be retried away
How a status code and a poison message are the same problem, and where the judgement that separates them has to live.
Week 7 · 19 April 2027

A breaker stuck open protects nothing
Why a circuit breaker is shared state the platform has to hold, and why it needs to close again as much as it needs to open.
Week 8 · 26 April 2027

Nobody is waiting for your third attempt
What a deadline bounds that an attempt count cannot, and why only the caller knows whether an answer is still wanted.
Week 9 · 3 May 2027

A green dashboard hides a slow decline
Why success rate stays flat while a dependency degrades for six weeks, and what has to be reported beside it.
Week 10 · 10 May 2027

Some steps only happen once, by design
Why an irreversible step has no retry decision to make, and why the fix is ordering it to run last instead.
Week 11 · 17 May 2027

Reading a retry policy's numbers against each other
How a policy holding every mechanism from the semester still fails, and why the last question of the course is a product one.
Week 12 · 24 May 2027