DevOps Engineer Learning Path¶
This path matches how production platforms are built: operating systems, shell automation, Python for structured data and APIs, networks, cloud, version control, pipelines, containers, orchestration, then Infrastructure as Code.
Ready modules (complete in order)¶
| # | Track | Start here | Status |
|---|---|---|---|
| 1 | Linux | Linux Fundamentals — Distributions and Architecture | Ready — 16 modules · 25 tutorials |
| 2 | Shell Scripting | Shell Fundamentals — Bash vs sh and Execution | Ready — 18 modules · 18 tutorials |
| 3 | Python for DevOps | Install, venv, and Tooling | Ready — 27 modules · 27 tutorials |
| 4 | Networking | Introduction to Networking | Ready — 25 tutorials |
| 5 | AWS | AWS Fundamentals and Global Infrastructure | Ready — 16 modules · 16 tutorials |
| 6 | Git | Introduction to Git | Ready — 20 tutorials |
| 7 | GitLab CI/CD | GitLab CI/CD Fundamentals | Ready — 18 modules (GitLab CI) |
| 8 | Docker | Introduction to Containers | Ready — 20 tutorials |
| 9 | Kubernetes | Introduction to Kubernetes | Ready — 20 tutorials |
| 10 | Terraform | Introduction to Terraform | Ready — 20 tutorials |
Why Linux first?
Every cloud VM, container node, and CI runner is Linux underneath. Finish the 16 Cloud & DevOps modules (fundamentals through production) before Shell. See also Linux for Cloud & DevOps.
Why Shell after Linux?
Linux teaches the tools; Shell Scripting turns them into reviewed, schedulable automation for admins and DevOps. Take it before Networking so later labs can assume solid Bash habits.
Why Python after Shell?
Bash remains the launcher. Python owns JSON/YAML, HTTP clients, tests, and packaged CLIs. See also the dedicated Python for DevOps Engineers path.
Why CI/CD after Git?
Pipelines are triggered by Git events. Learn branching and reviews first, then automate build/test/deploy with GitLab CI before deep Docker/Kubernetes deploy labs.
Supporting assets¶
| Asset | Linux | Shell | Python | Networking | AWS | Git | CI/CD | Docker | Kubernetes | Terraform |
|---|---|---|---|---|---|---|---|---|---|---|
| Cheat sheet | open | open | open | open | open | open | open | open | open | open |
| Interview prep | open | open | open | open | open | open | open | open | open | open |
| Quiz | course fundamentals · fundamentals · servers | course fundamentals | course fundamentals | production | fundamentals | — | fundamentals | open | open | — |
Standalone labs¶
| When you finish… | Practise with |
|---|---|
| Linux modules on systemd and logs | Linux Production Incident Triage |
| Linux security / storage / ops labs | Firewall hardening · Ops toolkit · App server from zero |
| Shell Scripting (any module) | Shell labs · Ops Script Hardening · Operations Toolkit |
| Python Modules 1–2 | Python Log Analyser · Linux Health Checker · YAML Config Validator · JSON Validator |
| DNS, firewalls, troubleshooting | DNS and Firewall Site-Down Triage |
| Networking Module 7 (LB/DNS/ACL/IR) | Networking Edge Failover |
| AWS IAM + VPC | AWS IAM and VPC Reachability Triage |
| AWS SSM + S3 | Secure EC2 via SSM and S3 |
| Rebase, conflicts, safe force-push | Git History and PR Recovery |
| CI/CD pipeline failures | CI/CD Pipeline Failure Triage |
| CI/CD Docker + deploy gate | Docker Build, Scan, and Deploy Gate |
| Docker Compose and networking | Docker Compose Stack Recovery |
| Deployments and probes | Kubernetes Deployment Triage |
| Terraform CLI + CI concepts | Terraform Plan Review Workflow |
Browse all labs: Labs
Quizzes¶
Self-mark after finishing a track: Quizzes — Linux, Shell Scripting, Python for DevOps, Networking production, AWS, CI/CD, Docker, and Kubernetes.
Portfolio project¶
After the labs above: Status API Portfolio Build — Git → Docker → Kubernetes → Terraform metadata. Python projects: Log Analysis Tool through Automation platform.
Coming next on this path¶
Azure, GCP, monitoring, and DevSecOps remain on the roadmap.
Study rules¶
- Finish each tutorial lab before skipping ahead
- Keep a short incident notebook (symptom → cause → fix)
- Use interview questions as a gate between modules
- Never print secrets in pipeline logs; prefer OIDC/short-lived tokens