Home/Glossary/DevOps

DevOps

A set of practices combining software development (Dev) and IT operations (Ops) to shorten development cycles and deliver high-quality software continuously.

DevelopmentAlso called: "dev ops", "devops practices", "development operations"

DevOps breaks down silos between development and operations teams, emphasizing automation, collaboration, and continuous improvement throughout the software lifecycle.

Why it matters

  • Organizations practicing DevOps deploy code 200x more frequently.
  • Faster time-to-market for features and fixes.
  • Reduced failure rates and faster recovery from incidents.
  • Better collaboration leads to higher quality software.
  • Automation reduces human error and improves consistency.

Core practices

  • Continuous Integration (CI): Automatically build and test code with every change.
  • Continuous Delivery (CD): Automate deployment so releases are push-button.
  • Infrastructure as Code (IaC): Manage infrastructure through version-controlled code.
  • Monitoring and Logging: Comprehensive observability into systems.
  • Configuration Management: Consistent, automated system configuration.

DevOps toolchain

  • Source control: Git, GitHub, GitLab, Bitbucket.
  • CI/CD: Jenkins, GitHub Actions, GitLab CI, CircleCI.
  • IaC: Terraform, Pulumi, CloudFormation, Ansible.
  • Containers: Docker, Kubernetes, containerd.
  • Monitoring: Prometheus, Grafana, Datadog, New Relic.

DevSecOps extension Security should be integrated throughout the DevOps pipeline:

  • Static analysis (SAST) in CI pipelines.
  • Dependency scanning for vulnerable libraries.
  • Container image scanning before deployment.
  • Dynamic testing (DAST) in staging environments.
  • Runtime protection and monitoring in production.

Cultural principles

  • Blame-free post-mortems focused on learning.
  • Shared responsibility for reliability and security.
  • Experimentation and calculated risk-taking.
  • Continuous learning and improvement.