Learn

DevOps Fundamentals

What DevOps is, why it exists, and the core concepts you need to know.

What is DevOps?

DevOps is a set of practices that combines software development (Dev) and IT operations (Ops) with the goal of shortening the development lifecycle and delivering software continuously and reliably.

In practice, DevOps means: automating deployments, monitoring systems in production, treating infrastructure as code, and building a culture where developers are responsible for what they ship.

Core concepts

ConceptWhat it means
CI/CDContinuously integrate code changes and automatically deploy them
Infrastructure as CodeDefine infrastructure in version-controlled files, not via GUIs
ObservabilityKnow what your system is doing through logs, metrics, and traces
Immutable infrastructureNever patch running servers — replace them
Shift leftFind problems earlier in the development cycle, not in production

The DevOps toolchain

StageCommon tools
Source controlGit, GitHub, GitLab
CI/CDGitHub Actions, GitLab CI, ArgoCD, Jenkins
ContainersDocker, containerd, Podman
OrchestrationKubernetes, Nomad
Infrastructure as CodeTerraform, Pulumi, Ansible
MonitoringPrometheus, Grafana, Datadog, New Relic
LoggingLoki, ELK stack, CloudWatch
Start with TLD
The best way to understand DevOps tools is to use them in anger. Start with the Docker track to build container intuition, then move to Kubernetes.