Interactive roadmap

    DevOps Engineer roadmap

    Designed for aspiring engineers who want to automate software delivery and maintain resilient cloud systems in production environments.

    Your progress0% · 0 of 18 topics
    Done Learning Skipped OptionalClick any topic to learn more and mark your progress.
    1. 1

      Systems and Scripting

      0 of 4 done

      Master core operating system commands, automated tasks, and fundamental network communication.

      Master the terminal step by step, as comfort with the command line is your foundation for all cloud tasks.
    2. 2

      Containers and Orchestration

      0 of 3 done

      Package applications with their dependencies and run them reliably across clusters.

      Containers change how you package software, so focus on understanding how dependencies are bundled together cleanly.
    3. 3

      Continuous Delivery

      0 of 3 done

      Build automated release pipelines that validate, test, and deploy software changes quickly.

      Build pipelines incrementally, starting with simple syntax checks before adding automated deployment stages.
    4. 4

      Cloud and Infrastructure as Code

      0 of 4 done

      Provision secure cloud resources programmatically instead of manually clicking consoles.

      Treat infrastructure code with the same care as application code, using reviews and automated tests.
    5. 5

      Observability and Reliability

      0 of 4 done

      Track application health, diagnose incidents quickly, and build robust operational habits.

      Set up alerts carefully to catch real problems without overwhelming your team with noise.

    Learn it all, with a tutor that never sleeps

    Every topic links to LevelUp lessons, practice exercises and the 24/7 AI Tutor. Your progress updates as you master lessons.

    Every topic explained

    Step 1: Systems and Scripting

    Linux runs most modern cloud servers. Learning standard terminal commands lets you navigate files, manage processes, and inspect live systems comfortably.
    Read more

    Linux powers the vast majority of cloud servers and containers running modern web applications. The command line interface lets you interact directly with the operating system using text commands instead of graphical menus. This is vital because cloud servers rarely have screens or desktop environments attached.

    Imagine you need to find why a web server crashed; you use terminal commands to read log files in real time and check available disk space. This skill matters because every deployment, troubleshooting session, and automation script relies on navigating Linux environments smoothly.

    • Navigate directories using cd, ls, and pwd
    • Inspect file contents with cat, tail, and grep
    • Manage running processes using top and kill
    • Modify file permissions with chmod and chown
    Write small Bash scripts to automate repetitive system tasks, run backups, and manage background maintenance jobs.
    Read more

    Shell scripting involves writing short files containing sequences of terminal commands that run automatically in order. Instead of typing out ten repetitive commands every morning to back up a database, you write them once in a Bash script and run it with a single command.

    Think of it as recording a macro for your daily administrative chores. You can add logic like loops and conditions to handle errors gracefully. This matters for DevOps because automation eliminates human typing mistakes and saves hours of manual work across server fleets.

    • Use the standard shebang line at the top of scripts
    • Store and reference values using variables
    • Control execution flow with if statements and loops
    • Capture exit codes to handle command failures
    Understand how computers communicate across the internet using IP addresses, subnets, DNS, ports, and protocols like HTTP and SSH.
    Read more

    Networking is the invisible glue connecting users, servers, databases, and microservices across the internet. It relies on agreed rules and addresses to ensure data packets reach their intended destination securely and accurately.

    For example, when your browser loads a website, it translates a human-readable domain name into an IP address using DNS, then opens a secure connection over specific network ports. Understanding networking matters because most deployment bugs stem from misconfigured firewalls, blocked ports, or routing errors.

    • Explain how IP addresses and subnets divide networks
    • Trace domain resolution using DNS records
    • Distinguish between TCP reliability and UDP speed
    • Secure remote access using SSH keys and ports
    Track your code and configuration history, collaborate through pull requests, and manage branches safely across a team.
    Read more

    Git is a distributed version control system that records every change made to your source code and infrastructure configurations over time. It allows multiple people to work on the same project simultaneously without overwriting each other's work.

    Imagine writing a report where you can instantly revert to yesterday's draft or test a new chapter in a separate copy before merging it into the final version. Git matters for DevOps because all automation scripts, pipeline definitions, and server configurations must be tracked and reviewed safely.

    • Initialise local repositories and track file changes
    • Create branches to experiment with new features safely
    • Combine work from others using pull requests and merges
    • Resolve merge conflicts when overlapping edits occur
    Git Documentation

    Step 2: Containers and Orchestration

    Containers package your app code and libraries together, guaranteeing it behaves identically across your laptop, test setups, and production servers.
    Read more

    Docker packages your application code, runtime, libraries, and operating system files into a single self-contained unit called a container. This guarantees that the application runs identically whether it is on your local laptop, a staging server, or a cloud cluster.

    Think of it as shipping a fragile product inside a sturdy, standardized wooden crate that fits onto any delivery truck. This matters because it eliminates the classic frustrating excuse that code worked fine on a developer's local machine but failed in production.

    • Write reproducible instructions inside a Dockerfile
    • Build immutable container images from those files
    • Run isolated containers locally with mapped ports
    • Persist data safely using Docker volumes
    Docker Documentation
    Kubernetes automatically schedules, scales, and heals containers across fleets of virtual machines to keep applications online.
    Read more

    Kubernetes is an orchestration platform that automates the deployment, scaling, and operational management of containerized applications across multiple servers. If a server hosting your containers crashes, Kubernetes automatically spins up replacements on healthy machines.

    Picture an automated warehouse manager that notices a delivery line is slowing down and instantly assigns extra robotic workers to handle the load. This matters because modern systems require high availability that manual server management cannot provide reliably.

    • Define application state using Pod and Deployment manifests
    • Expose services internally and externally using Services
    • Scale replica counts up and down dynamically
    • Inspect cluster health using command line tools
    Kubernetes Documentation
    (optional)
    Helm standardises and packages complex Kubernetes applications into repeatable, parameterised templates for fast multi-environment installation.
    Read more

    Helm is a package manager for Kubernetes that helps you define, install, and upgrade even the most complex Kubernetes applications. It introduces templating to configuration files so you can reuse the same setup across development, staging, and production environments.

    Think of it like an installer wizard on your computer that asks you a few simple questions before setting up a complex software suite. Helm matters because managing raw YAML files across multiple clusters quickly becomes messy and error-prone without structured packaging.

    • Structure applications into reusable Helm charts
    • Customise deployments using values files per environment
    • Upgrade and rollback releases smoothly
    • Search and install pre-made charts from repositories
    Helm Documentation

    Step 3: Continuous Delivery

    Automatically build and verify code changes whenever team members push updates, catching bugs early before they reach users.
    Read more

    Continuous Integration is the practice where members of a team integrate their code changes frequently, usually multiple times a day. Each integration is verified automatically by an automated build and test machine to detect integration errors as early as possible.

    Imagine a bricklayer checking each newly laid brick with a spirit level immediately rather than waiting until the entire wall is finished. CI matters because catching bugs immediately prevents costly debugging sessions later when many changes are bundled together.

    • Trigger automated checks on every code push
    • Run unit tests and linting automatically
    • Fail builds immediately when tests encounter errors
    • Provide fast feedback loops to developers
    Define custom automated workflows directly alongside your repository using declarative YAML files to run checks on each pull request.
    Read more

    GitHub Actions is an automation platform built directly into GitHub that lets you create custom CI and CD pipelines using YAML configuration files. It spins up virtual runner environments to execute your workflows whenever repository events occur.

    Think of it as an invisible assistant sitting inside your code repository who automatically runs your test checklist every time someone suggests a change. This matters because keeping your pipelines close to your source code makes maintenance simple and transparent.

    • Define workflows using YAML inside the github workflows folder
    • Trigger workflows on pull requests and pushes
    • Use pre-built community actions for common tasks
    • Secure sensitive tokens using repository secrets
    GitHub Actions Documentation
    Roll out updates smoothly using rolling releases, blue-green switches, or canary deployments to avoid user disruption.
    Read more

    Deployment strategies are structured methods for releasing new software updates into production without causing downtime or disrupting active users. Different approaches balance speed, risk, and infrastructure complexity in various ways.

    For example, a rolling update replaces old server instances with new ones a few at a time so the service never goes offline. This matters because modern users expect continuous availability, meaning maintenance windows are no longer acceptable for routine releases.

    • Perform rolling updates to replace instances gradually
    • Use blue-green environments for instant cutovers
    • Route a small subset of traffic using canary releases
    • Plan quick rollbacks for faulty deployments

    Step 4: Cloud and Infrastructure as Code

    Learn standard cloud provider building blocks such as virtual servers, managed object stores, virtual networks, and managed databases.
    Read more

    Cloud computing lets you rent servers, storage, and networking hardware from providers over the internet instead of buying physical computers. You only pay for what you use, and you can scale resources up or down in seconds.

    Think of it like renting a fully equipped commercial kitchen for an evening rather than building a restaurant from scratch. Cloud basics matter because modern DevOps engineers operate entirely within these virtual datacentres.

    • Provision virtual compute instances on demand
    • Store files securely in managed object storage
    • Isolate resources using virtual private clouds
    • Connect managed databases with automated backups
    Declare infrastructure in code to version, review, and spin up reproducible environments consistently with minimal manual mistakes.
    Read more

    Terraform is an Infrastructure as Code tool that lets you define cloud resources in human-readable configuration files. It calculates what needs to change and creates, updates, or destroys cloud infrastructure safely and repeatably.

    Imagine writing a blueprint for a house that automatically builds itself when submitted to a contractor. This matters because clicking around in a web console leads to undocumented mistakes, whereas code is version-controlled and reviewable.

    • Write infrastructure definitions using HashiCorp Configuration Language
    • Preview planned changes using the plan command
    • Apply configurations to create cloud resources
    • Manage state files securely across teams
    Terraform Documentation
    Implement the principle of least privilege using identity policies, managed secrets, and private networks to protect production data.
    Read more

    Cloud security involves protecting your data, servers, and networks from unauthorized access using strict access controls and encryption. The principle of least privilege ensures users and services only get the exact permissions they need to do their jobs.

    Think of giving staff members keys only to the specific rooms they need to work in, rather than a master key to the entire building. This matters because a single misconfigured storage bucket can expose sensitive customer data to the public internet.

    • Enforce least privilege access using identity policies
    • Store passwords and keys in managed secret managers
    • Isolate sensitive workloads in private subnets
    • Enable encryption for data at rest and in transit
    (optional)
    Ensure underlying server configurations remain consistent over time using tools like Ansible to prevent drift and manual misconfigurations.
    Read more

    Configuration management tools like Ansible ensure that your servers are set up correctly and remain in a known, consistent state over time. They install required software, update settings, and fix configuration drift without manual intervention.

    Picture a cleaning crew that visits an office every night to ensure every desk, computer, and chair is arranged according to company standards. This matters because servers left untouched often accumulate undocumented changes that cause mysterious bugs.

    • Write idempotent automation playbooks
    • Manage server setups over secure SSH connections
    • Organise variables and templates cleanly
    • Detect and correct configuration drift automatically

    Step 5: Observability and Reliability

    Collect logs from all your services into one searchable dashboard so you can troubleshoot errors across distributed setups fast.
    Read more

    Centralised logging collects log output from all your distributed servers, containers, and applications into one searchable platform. Instead of logging into twenty different servers to find an error, you query a single dashboard.

    Think of it like having a central security desk that receives status reports from every security camera in a large building simultaneously. This matters because complex microservice architectures make tracing errors impossible without unified log streams.

    • Forward structured JSON logs from applications
    • Aggregate streams into a central searchable store
    • Query logs efficiently using filters and time ranges
    • Mask sensitive information like passwords in logs
    Gather numeric health indicators like CPU, memory, latency, and error rates to display overall system performance on real-time dashboards.
    Read more

    Metrics monitoring involves tracking numeric performance indicators like CPU usage, memory consumption, request latency, and error rates over time. These numbers are displayed on real-time dashboards to give you a quick overview of system health.

    Imagine the dashboard of a car showing your speed, fuel level, and engine temperature while you drive. This matters because spotting a rising memory trend early lets you fix a memory leak before the server crashes.

    • Scrape numeric time-series data from services
    • Design clear dashboards for operational health
    • Track key performance indicators and resource usage
    • Store historical metrics for trend analysis
    Prometheus Documentation
    Configure actionable alerts for critical failures and establish structured steps for diagnosing and documenting production outages.
    Read more

    Alerting and incident response define how your team finds out about production failures and how you work together to fix them calmly. Good alerts wake engineers only for real user-facing problems, and post-incident reviews prevent repeat failures.

    Think of a smoke detector that sounds an alarm only when there is an actual fire, accompanied by a clear fire escape plan. This matters because reliable systems require fast human intervention when automated self-healing fails.

    • Configure actionable alerts based on symptom thresholds
    • Route notifications to the right on-call engineers
    • Follow structured troubleshooting runbooks
    • Conduct blameless post-mortem reviews after outages
    (optional)
    Balance feature velocity with uptime by tracking service level objectives and managing risk through error budgets.
    Read more

    Site Reliability Engineering applies software engineering principles to infrastructure and operations problems. It uses service level objectives and error budgets to balance the speed of releasing new features with the need for system stability.

    Think of a budget where you can spend money on risks as long as you stay above a minimum savings threshold. This matters because it gives teams a data-driven way to decide when to slow down and fix bugs versus when to build new features.

    • Define user-focused service level indicators
    • Set realistic service level objectives with stakeholders
    • Manage risk using measurable error budgets
    • Automate away repetitive operational toil

    Related roadmaps