Cloud & Infrastructure
DevOps Engineering
DevOps is not a tool, it is the practice of shortening the distance between writing code and running it safely. The engineer's job is to make deployment so boring that nobody is afraid to do it on a Friday.
Start here
This is not an entry-level path, and pretending otherwise wastes your time. Read the prerequisites honestly. If you cannot yet read a stack trace and a shell script without looking both up, do Software Engineering or Cloud Engineering first.
Before you begin
- Comfortable on the Linux command line
- Can write and debug a shell script
- Have built and deployed at least one application
- Fluent with Git
Prerequisites, honestly
Skipping this stage is why many people bounce off DevOps and conclude it is too hard.
RequiredThe assumed knowledge
DevOps automates other people's work. You cannot automate a process you do not understand.
The assumed knowledge
DevOps automates other people's work. You cannot automate a process you do not understand.
What to learn
- Linux administration
- Shell scripting
- Git beyond commit and push
- How a web application is actually structured
- Networking basics
Practice
Next: Continuous integration.
Continuous integration
Make the machine check the work before a human is asked to.
RequiredPipelines and automated checks
The single highest-value thing you can add to a team that does not have it. Everything else in DevOps builds on this habit.
Pipelines and automated checks
The single highest-value thing you can add to a team that does not have it. Everything else in DevOps builds on this habit.
What to learn
- Pipeline configuration
- Running tests automatically
- Build artefacts
- Caching for speed
- Failing fast and loudly
Tools
- GitHub Actions
- GitLab CI
- Jenkins where it is already in place
Practice
Next: Containers, so the pipeline and production agree.
Containers
Same behaviour on your laptop, in the pipeline, and in production.
RequiredDocker
It removes the whole class of problem where something works on one machine and not another.
Docker
It removes the whole class of problem where something works on one machine and not another.
What to learn
- Images and layers
- Writing a small, secure Dockerfile
- Multi-stage builds
- Registries
- Compose for local development
- Not running as root
Tools
- Docker
- Docker Compose
Practice
Project
beginnerA containerised application with CI
Containerise an application, add a pipeline that builds the image, runs tests, and pushes to a registry on every merge to main.
- Docker
- GitHub Actions
Every merge produces a tested, versioned artefact without anyone doing anything.
Next: Orchestration, once one container is not enough.
RecommendedKubernetes
The industry standard for running containers at scale. Also frequently used where it is not needed, and knowing the difference is part of the skill.
Kubernetes
The industry standard for running containers at scale. Also frequently used where it is not needed, and knowing the difference is part of the skill.
What to learn
- Pods, deployments and services
- ConfigMaps and secrets
- Ingress
- Resource limits
- Health probes
- Reading kubectl output calmly
Tools
- Kubernetes
- kubectl
- Helm
- k3s or kind for local practice
First understand
- Docker
- Networking basics
Practice
Next: Infrastructure as code.
Infrastructure as code
Click once, and you will click again. Write it down instead.
RequiredDeclarative infrastructure
Infrastructure you cannot recreate from a repository is infrastructure you cannot safely change.
Declarative infrastructure
Infrastructure you cannot recreate from a repository is infrastructure you cannot safely change.
What to learn
- Declarative configuration
- State and locking
- Modules and reuse
- Plan and review workflow
- Managing drift
Tools
- Terraform or OpenTofu
Next: Configuration management, if you have long-lived servers.
OptionalConfiguration management
Genuinely useful where servers are long-lived. Largely displaced by containers and immutable infrastructure elsewhere.
Configuration management
Genuinely useful where servers are long-lived. Largely displaced by containers and immutable infrastructure elsewhere.
What to learn
- Idempotent configuration
- Inventory
- Roles and playbooks
Tools
- Ansible
Next: Delivery.
Continuous delivery
Getting the tested artefact into production without ceremony or fear.
RequiredDeployment strategies
How you deploy decides whether a bad release is a five-minute annoyance or an afternoon-long incident.
Deployment strategies
How you deploy decides whether a bad release is a five-minute annoyance or an afternoon-long incident.
What to learn
- Rolling deployments
- Blue/green
- Canary releases
- Feature flags
- Fast, tested rollback
- Database migrations in a pipeline
Practice
Next: GitOps.
RecommendedGitOps
Making the repository the single source of truth removes the whole category of undocumented manual change.
GitOps
Making the repository the single source of truth removes the whole category of undocumented manual change.
What to learn
- Declarative desired state
- Automated reconciliation
- Environment promotion
- Secrets in a GitOps world
Tools
- Argo CD
- Flux
Next: Observability.
Operate it
The job continues after the deploy succeeds.
RequiredMonitoring and observability
Without it you find out about problems from users, which is the most expensive way to find out.
Monitoring and observability
Without it you find out about problems from users, which is the most expensive way to find out.
What to learn
- Metrics, logs and traces
- Dashboards people actually read
- Alerting that is worth waking up for
- Service level objectives
- Post-incident write-ups without blame
Tools
- Prometheus and Grafana
- A managed observability platform
Next: Securing the pipeline itself.
RecommendedPipeline and dependency hygiene
A pipeline holds credentials to everything. It is the highest-value thing in the organisation to keep tidy.
Pipeline and dependency hygiene
A pipeline holds credentials to everything. It is the highest-value thing in the organisation to keep tidy.
What to learn
- Secrets in CI done properly
- Dependency and image scanning
- Signed artefacts
- Least privilege for pipeline identities
Project
advancedA full delivery platform
A repository that, on merge, runs tests, builds a scanned container image, applies infrastructure changes with a review gate, deploys with a canary, and alerts on error rate. Include a documented rollback procedure you have actually run.
- GitHub Actions
- Terraform
- Docker
- A cloud provider
- Prometheus or equivalent
You can hand someone a repository and they can deploy safely without asking you how.
Where this leads
You do not have to pick one now. These are the directions this path opens up once you are working.
Site Reliability Engineering
Treat reliability as an engineering discipline with error budgets.
View roadmapPlatform Engineering
Build the internal product other engineers use to ship.
View roadmapMLOps
Apply the same delivery thinking to models rather than services.
View roadmapCloud Engineering
Go deeper on the infrastructure itself.
View roadmapContinue your journey
The paths closest to this one. Skills overlap more than the job titles suggest.
Cloud Engineering
From never opening a cloud console to running real workloads on one.
ViewSite Reliability Engineering
Treat uptime as an engineering problem with a budget, not a hope.
ViewPlatform Engineering
Build the internal product that lets every other engineer ship safely.
ViewMLOps
Make machine learning repeatable, deployable and observable.
ViewYou do not have to do this alone
Our programs are free, taught live, and built around the same progression. Join one and work through it alongside other people.
