# Devops Engineer

> Use when setting up CI/CD pipelines, containerization, infrastructure automation, deployment workflows, or bridging development and operations. Trigger phrases: "CI/CD", "pipeline", "Docker", "Kubernetes", "Terraform", "Ansible", "deployment automation", "GitOps", "GitHub Actions", "Jenkins", "ArgoCD", "Helm chart", "container orchestration", "infrastructure as code", "blue-green deployment", "canary deployment", "DevOps".

- Skill: `barastrong/devops-engineer` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add barastrong/devops-engineer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/barastrong/devops-engineer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: barastrong (https://skillmd.com/u/barastrong)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/barastrong/devops-engineer

---


# DevOps Engineer

## Role Summary

A DevOps Engineer designs and operates CI/CD pipelines, infrastructure
automation, and deployment workflows that enable engineering teams to ship
software reliably and frequently. The role bridges development and
operations through automation, tooling, and culture.

## Core Responsibilities

- Design and maintain CI/CD pipelines (build, test, deploy)
- Containerize applications (Docker, OCI images)
- Manage container orchestration (Kubernetes, ECS)
- Implement Infrastructure as Code (Terraform, Pulumi, CloudFormation)
- Configuration management (Ansible, Chef, Puppet)
- Build GitOps workflows (ArgoCD, Flux)
- Manage artifact registries, secrets management, environment promotion
- Implement deployment strategies (blue-green, canary, rolling)
- Monitor build/deploy metrics and optimize pipeline performance

## Standard Workflow

1. **Assess** — understand application stack, team workflow, deployment frequency.
2. **Containerize** — Dockerfile, multi-stage builds, image optimization.
3. **Pipeline Design** — CI: lint → test → build → scan; CD: deploy staging → smoke → prod.
4. **Infrastructure** — Terraform modules for compute, networking, storage, DNS.
5. **Orchestration** — Kubernetes manifests or Helm charts; autoscaling, health checks.
6. **Secrets & Config** — vault/secrets manager, environment-specific configs.
7. **Observability** — logging, metrics, tracing pipeline integration.
8. **Documentation** — runbooks for deployments, rollbacks, incident response.

## Technology Stack

| Layer | Tools |
|-------|-------|
| CI/CD | GitHub Actions, GitLab CI, Jenkins, CircleCI, Buildkite |
| Containers | Docker, Podman, Buildah, Kaniko |
| Orchestration | Kubernetes, Helm, Kustomize, Docker Compose, ECS |
| IaC | Terraform, Pulumi, CloudFormation, Bicep |
| Config Mgmt | Ansible, Chef, Puppet, Salt |
| GitOps | ArgoCD, Flux, Spinnaker |
| Secrets | HashiCorp Vault, AWS Secrets Manager, SOPS, Sealed Secrets |
| Registries | ECR, GCR, Docker Hub, Harbor, GHCR |
| Monitoring | Prometheus, Grafana, Datadog, ELK/EFK stack |

## Best Practices

- Everything in code: infrastructure, pipeline config, secrets references.
- Immutable artifacts: build once, deploy anywhere (dev/staging/prod).
- Pin dependencies and base images to specific versions.
- Multi-stage Docker builds to minimize image size.
- Health checks and readiness probes on all services.
- Pipeline should fail fast: lint and unit tests before expensive integration tests.
- Secrets never in source code or environment variables baked into images.
- Automated rollback on deployment failure (health check based).
- Least privilege IAM for CI/CD service accounts.

## Anti-Patterns to Avoid

- Snowflake servers — every server should be reproducible from code.
- Manual deployments or SSH-to-fix in production.
- `latest` tag for container images (non-deterministic).
- Monolithic pipeline that takes 30+ minutes — parallelize stages.
- Shared mutable infrastructure without state management (Terraform state).
- No pipeline for infrastructure changes — manual cloud console clicks.

## References

- `references/pipeline-patterns.md` — CI/CD pipeline design patterns
- `references/kubernetes-checklist.md` — K8s deployment checklist
- `references/terraform-modules.md` — Terraform module patterns

## Expected Output Format

1. Pipeline configuration (YAML/Jenkinsfile/HCL)
2. IaC code (Terraform/Pulumi) with plan output
3. Deployment runbook (deploy + rollback steps)
4. Architecture diagram of deployment flow

