Career Roadmap

Site Reliability Engineer

Site Reliability Engineers apply software engineering to the problem of keeping systems up — defining what "reliable" even means with SLIs and SLOs, then building the automation, observability, and incident response that make it true. This roadmap walks you from SRE fundamentals through systems, cloud, and containers, into the observability, incident management, and resilience practices the discipline is built on.

Why Site Reliability Engineering?

Engineering discipline applied to the question "is it up?"

SRE started at Google as an answer to a simple tension: developers want to ship fast, and operations wants things to stay stable. Instead of treating that as a fight, SRE treats reliability as a feature with a measurable budget — service level objectives (SLOs) define how reliable a system needs to be, and an error budget defines how much unreliability is acceptable before shipping slows down to fix it. The job is equal parts software engineer and firefighter: writing automation and tooling most of the time, and running structured incident response when something breaks.

It's a highly-paid, highly-respected role precisely because it demands both halves — deep systems and cloud knowledge, plus the calm, process-driven judgment to run an incident without making it worse. It overlaps closely with DevOps and Cloud Engineering, but with a sharper focus on measurable reliability, on-call practice, and postmortems. The roadmap below covers the full path: fundamentals and mindset first, then the systems and cloud skills underneath, then the observability and incident-response practices that define the discipline.

Quick intro — what is SRE?

A quick primer before you start the roadmap. Opens in a small player, no need to leave the page.

The SRE Roadmap

Work through these in order. Each step has a short lesson, official docs, and a repo to practice in.

STEP 1

SRE Fundamentals & Mindset

What SRE is, how it differs from traditional ops and from DevOps, and the core vocabulary: SLIs, SLOs, SLAs, and error budgets.

Documentation
STEP 2
Python logo Go logo

Programming & Scripting

Python or Go for automation and tooling, plus Bash for the glue scripts that run everywhere in production systems.

Documentation
STEP 3

Linux & Systems Fundamentals

Processes, memory, filesystems, systemd, and how to read a struggling machine — the diagnostic skills every on-call shift depends on.

Documentation
STEP 4

Networking Fundamentals

TCP/IP, DNS, HTTP, load balancing, and how requests actually travel from a user to your service and back.

Documentation
STEP 5
Git logo GitHub Actions logo

Version Control & CI/CD

Git workflows and automated pipelines with GitHub Actions, GitLab CI, or Jenkins so deploys are repeatable, not manual and risky.

Documentation
STEP 6
AWS logo Terraform logo

Cloud Platforms & Infrastructure as Code

Provision and manage infrastructure on AWS, Azure, or GCP declaratively with Terraform — reproducible, reviewable, and rollback-able by design.

Documentation
STEP 7
Docker logo Kubernetes logo

Containers & Orchestration

Docker for packaging, Kubernetes for running services at scale with self-healing, rolling deploys, and resource limits baked in.

Documentation
STEP 8
Prometheus logo Grafana logo

Observability & Monitoring

Metrics, logs, and distributed tracing with Prometheus, Grafana, or Datadog — the three pillars that let you answer "what's actually wrong" fast.

Documentation
STEP 9

Incident Management & On-Call

Alerting that doesn't cry wolf, on-call rotations, runbooks, and blameless postmortems that turn every incident into a lesson.

Documentation
STEP 10

Capacity Planning & Performance

Load testing, autoscaling policies, and resource forecasting so systems handle real traffic growth instead of falling over at 2am.

Documentation
STEP 11

Chaos Engineering & Resilience

Deliberately inject failure to find weak points before an outage does — redundancy, failover, and disaster recovery planning.

Documentation
STEP 12

Automation & Toil Reduction

Identify repetitive, manual, automatable work — "toil" — and eliminate it with self-healing systems and better tooling, freeing time for engineering.

Documentation

GitHub Projects

Real, buildable projects to put on your own GitHub

Track complete

Twelve steps, from error budgets to chaos experiments. Push what you built to GitHub so it's visible to employers, then keep going — reliability is learned by watching real systems fail and fixing them, not just reading the SRE book.

Where next?

Keep exploring by domain or drill into a single skill — or continue on to DevOps and Cloud Engineer

Video