Enterprise engineering

What is DevOps, and how do containers and infrastructure as code fit in?

DevOps unites development and operations around automation, shared ownership and fast, safe delivery.

Building blocks

  • Containers (Docker) — package an application and its dependencies so it runs identically everywhere; keep images small, pinned, non-root and scanned
  • Orchestration (Kubernetes, ECS, serverless) — only when scale and team maturity justify it
  • Infrastructure as Code (Terraform, Bicep, CloudFormation) — define environments in version-controlled code, review changes like application code and detect drift
  • Configuration & secrets — environment-specific config outside code; secrets in a vault or secret manager, never in the repository
  • Environments — development, staging and production kept as similar as possible
  • GitOps / CD — the repository is the source of truth; pipelines promote artifacts with approvals

Principle: automate anything done twice, and make every deployment repeatable and reversible.

All guides