Cultura y conjunto de prácticas que unifican desarrollo (Dev) y operaciones (Ops) para entregar software con mayor velocidad, calidad y confiabilidad. No es un rol — es una forma de trabajar.
DevOps es un movimiento cultural y técnico que elimina los silos entre desarrollo y operaciones. Nació de la frustración con el modelo tradicional donde Dev «lanza código por encima del muro» y Ops «lo mantiene vivo» — sin responsabilidad compartida.
En el modelo tradicional:
DevOps alinea incentivos: el equipo que construye el software es responsable de operarlo.
Principios fundamentales del libro The Phoenix Project:
Optimizar el flujo de trabajo desde desarrollo hasta producción:
Crear loops de retroalimentación rápidos:
Cultura de experimentación y mejora:
Modelo para evaluar la adopción de DevOps:
| Pilar | Significado | Ejemplo |
|---|---|---|
| Culture | Colaboración sobre silos | Equipos cross-funcionales |
| Automation | Eliminar trabajo manual | CI/CD, IaC, auto-scaling |
| Lean | Eliminar desperdicio | Limitar WIP, reducir batch size |
| Measurement | Medir todo | DORA metrics, SLOs, error budgets |
| Sharing | Compartir conocimiento | Post-mortems, runbooks, tech talks |
Definir infraestructura en archivos versionados:
# Terraform
resource "aws_lambda_function" "api" {
function_name = "api-handler"
runtime = "nodejs20.x"
handler = "index.handler"
filename = "lambda.zip"
}Beneficios: reproducibilidad, auditoría, rollback, review en PRs.
Los tres pilares:
Si el error budget se agota → congelar features, priorizar estabilidad.
Después de cada incidente:
Regla cardinal: culpar al sistema, no a las personas.
Inyectar fallos deliberadamente para descubrir debilidades:
| Aspecto | DevOps | SRE |
|---|---|---|
| Origen | Comunidad (2009) | Google (2003) |
| Enfoque | Cultura + prácticas | Ingeniería de confiabilidad |
| Definición | Movimiento | Rol/disciplina |
| Relación | Filosofía | Implementación de DevOps con ingeniería |
Como dijo Ben Treynor (creador de SRE en Google): «SRE es lo que pasa cuando le pides a un ingeniero de software que diseñe un equipo de operaciones».
La evolución natural de DevOps en organizaciones grandes:
La plataforma abstrae la complejidad: el desarrollador hace git push y la plataforma se encarga de build, test, deploy, monitoring.
DevOps no es un rol ni una herramienta — es un cambio cultural que elimina la barrera entre quienes escriben el código y quienes lo operan. Las organizaciones que lo adoptan efectivamente entregan software más rápido, con menos fallos y con recuperación más ágil. Las que lo tratan como un título de puesto pierden el punto.
Continuous Integration y Continuous Delivery/Deployment — prácticas que automatizan la integración de código, testing y entrega a producción. Fundamento de la ingeniería de software moderna.
Plataforma de CI/CD nativa de GitHub. Workflows declarativos en YAML que automatizan build, test, deploy y cualquier tarea del ciclo de desarrollo — directamente desde el repositorio.
Práctica de definir y gestionar infraestructura mediante archivos de configuración versionados en lugar de procesos manuales. Fundamento de la automatización moderna de operaciones.
Disciplina que aplica principios de ingeniería de software a operaciones de infraestructura, enfocándose en crear sistemas escalables y altamente confiables.
Disciplina que diseña y construye plataformas internas de autoservicio para que los equipos de desarrollo desplieguen y operen aplicaciones de forma autónoma.
Frameworks estructurados para evaluar y mejorar las capacidades organizacionales de forma progresiva, desde CMMI hasta enfoques modernos como DORA y modelos simplificados.
Integración de prácticas de seguridad en todo el ciclo de vida del desarrollo de software, automatizando controles de seguridad en el pipeline de CI/CD.
Conjunto de prácticas técnicas y culturales que implementan los principios DevOps — desde Infrastructure as Code hasta blameless post-mortems. El «cómo» detrás de la filosofía.
Enfoque de desarrollo que aprovecha las ventajas de la nube: contenedores, microservicios, infraestructura inmutable y automatización declarativa para sistemas escalables y resilientes.