🎯 About this course
You can already run a Linux machine and write a script. This course teaches you the habits that let a small team change a service every week without breaking it: a history you can read and undo, branches and merges, a pipeline that stops at the first failure, a deploy that tests itself and rolls back, a number for reliability and a rule for when it is not met, alerts worth waking someone for, an incident routine, reviews that lead to change, automation of toil, safe change with flags and canaries, and a fair on-call. Every exercise names who needs it and why, uses a simulated workstation with git, make and a pipeline runner, and ends with a check of the effective state rather than the command you meant to type.
By the end you will be able to
- Use git to record, branch, merge, share and undo work, and mark releases with tags and a changelog.
- Write a pipeline with stages, jobs and gates, and use make and strict scripts as the single definition of how to build and test.
- Deploy the same artifact to staging and production with a smoke test, an approval and a tested rollback.
- Measure reliability with SLIs, SLOs and error budgets from logs, and apply the agreed policy when a budget is spent.
- Design monitoring and alerts on the golden signals that a person can act on and trust.
- Respond to an incident by mitigating first, communicating with fixed-field updates and keeping a timeline, and write a blameless review with dated actions.
- Reduce toil with idempotent, scheduled scripts and make changes safe with flags, canaries and change records.
- Evaluate an on-call arrangement for fairness and sustainability, and write an escalation policy and a handover.