Skip to content

What is SRE?

Site Reliability Engineering applies software engineering to operations. Reliability becomes a feature that is measured, budgeted and engineered, instead of something achieved by heroics.

Core principles

  • Reliability is a product feature. Users feel availability and latency, not your architecture.
  • Measure it with SLOs. Agree on a target for what "reliable enough" means.
  • Spend an error budget. The gap between the SLO and 100% is room for change and risk.
  • Eliminate toil. Automate repetitive manual work.
  • Learn from failure. Run blameless postmortems and fix systemic causes.
  • Keep it simple. Complexity is the main enemy of reliability.

SRE, DevOps and platform engineering

Main question Typical output
DevOps How do we ship quickly and safely together? Culture, CI/CD, shared ownership
SRE Is the service reliable enough, and how do we prove it? SLOs, error budgets, on-call, postmortems
Platform engineering How do we make good practice the easy path? Internal platform and golden paths

They overlap heavily, and good teams use all three ideas.

Where to go next

  1. SLIs, SLOs and error budgets
  2. Monitoring and alerting
  3. Incident management and postmortems
  4. Reliability patterns, capacity planning and disaster recovery
  5. Toil and automation and release engineering