DevOps es una cultura y un conjunto de prácticas que acercan a los equipos de desarrollo (Dev) y de explotación (Ops) para entregar software más rápido, más a menudo y con más fiabilidad.
DevOps no es una herramienta ni un puesto. Es ante todo una forma de trabajar juntos. Las herramientas (Git, Docker, Jenkins…) no son más que medios al servicio de esta cultura.
La palabra misma es la fusión de Developer + Operations:
| Pilar | Idea central |
|---|---|
| Colaboración | Dev y Ops comparten la responsabilidad del producto |
| Automatización | Las tareas repetitivas se escriben en scripts, no se hacen a mano |
| Retroalimentación | Se mide, se aprende, se mejora en continuo |
🔧 Mini-ejercicio — La palabra «DevOps» es la fusión de dos palabras. ¿Cuáles, y qué designa cada una?
Developer (desarrollo: escribir funcionalidades) + Operations (explotación: hacer funcionar en producción).
Antes de DevOps, los desarrolladores y los operacionales trabajaban en silos separados. Eso es lo que se llama el muro de la confusión (wall of confusion).
El desarrollador entregaba su código y pasaba a otra cosa. El operacional debía hacerlo funcionar en producción, sin siempre entender cómo. Resultado: conflictos, lentitud, y la famosa frase «funciona en mi máquina».
| Síntoma del silo | Consecuencia |
|---|---|
| Dev y Ops no se hablan | Bugs descubiertos tarde, en producción |
| Despliegues manuales y raros | Puesta en producción estresante y arriesgada |
| Responsabilidades difusas | «No es mi problema» de los dos lados |
DevOps derriba este muro al convertir a los dos equipos en uno solo, que comparte los mismos objetivos y las mismas herramientas.
La colaboración significa que todo el equipo es responsable del producto, desde la escritura del código hasta su buen funcionamiento en producción.
En concreto, la colaboración se traduce en:
Analogía: un equipo de cocina. El chef (Dev) y el camarero (Ops) no se pasan la pelota — apuntan juntos a la satisfacción del cliente. Si un plato vuelve, es asunto de toda la brigada.
La automatización consiste en reemplazar las tareas manuales repetitivas por scripts y herramientas. Es el motor que hace posible DevOps a gran escala.
Lo que se automatiza típicamente:
| Tarea manual | Automatizada con | Módulo |
|---|---|---|
| Compilar y probar | Jenkins, GitHub Actions | 04, 05, 10 |
| Empaquetar la aplicación | Docker | 06 |
| Desplegar en servidores | Kubernetes, Helm | 07–09 |
| Configurar la infraestructura | Ansible, Terraform | 11, 12 |
¿Por qué automatizar? Porque un humano que repite una tarea comete errores y pierde tiempo. Una máquina ejecuta el mismo procedimiento mil veces sin equivocarse. Es más rápido, más fiable y reproducible.
🔧 Mini-ejercicio — Da dos razones concretas por las que se prefiere automatizar una tarea repetitiva en vez de hacerla a mano.
La retroalimentación rápida (fast feedback) consiste en detectar los problemas lo antes posible y aprender rápido para mejorar.
| Momento de detección del bug | Coste relativo de corrección |
|---|---|
| Durante el desarrollo | 💲 Bajo |
| Durante las pruebas automatizadas | 💲💲 Moderado |
| En producción, señalado por un cliente | 💲💲💲💲 Muy alto |
Fuentes de retroalimentación en DevOps:
Analogía: un termostato. Mide en continuo la temperatura (retroalimentación) y ajusta la calefacción de inmediato. Sin este bucle, solo se sabría que la habitación está demasiado fría al temblar.
🔧 Mini-ejercicio — Con la tabla de costes, indica en qué momento la corrección de un bug cuesta más, y por qué detectar pronto es preferible.
Es en producción, señalado por un cliente donde la corrección cuesta más (💲💲💲💲). Detectar pronto (durante el desarrollo o las pruebas automatizadas) reduce mucho el coste, porque el problema se corrige antes de llegar a los usuarios.
DevOps se representa a menudo con un bucle infinito (∞), que simboliza la mejora continua: nunca se «termina», se itera sin cesar.
| Fase | Lado | Ejemplo de herramienta |
|---|---|---|
| Plan, Code | Dev | Git, GitHub |
| Build, Test | Dev | Maven, Jenkins, GitHub Actions |
| Release, Deploy | Dev + Ops | Docker, Kubernetes, Helm |
| Operate, Monitor | Ops | Ansible, Terraform, herramientas de monitoreo |
La mitad izquierda es más bien «Dev», la mitad derecha más bien «Ops» — pero el bucle es único y compartido. Esa es la esencia de DevOps.
| Beneficio | Sin DevOps | Con DevOps |
|---|---|---|
| Frecuencia de las entregas | Algunas veces al año | Varias veces al día |
| Plazo de corrección de un bug | Días / semanas | Minutos / horas |
| Tasa de fallo de los despliegues | Alta | Baja |
| Estrés en las puestas en prod | Muy alto | Rutina dominada |
| Colaboración de los equipos | Silos, conflictos | Objetivo común |
Las empresas con mejor rendimiento despliegan cientos de veces al día con una tasa de fallo muy baja. No es magia: es el resultado de cultura + automatización + retroalimentación.
🔧 Mini-ejercicio — Según la tabla, compara la frecuencia de las entregas con y sin DevOps.
Sin DevOps: algunas veces al año. Con DevOps: varias veces al día.
Question 1: DevOps es ante todo…
a) Un software que hay que instalar
b) Un puesto preciso en la empresa
c) Una cultura y un conjunto de prácticas
d) Un lenguaje de programación
✅ Respuesta: c) — DevOps es una cultura de colaboración, sostenida por prácticas (automatización, retroalimentación). Las herramientas no son más que medios.
Question 2: ¿Qué es el «muro de la confusión»?
a) Una falla de seguridad
b) La separación en silos entre Dev y Ops que crea conflictos
c) Un tipo de cortafuegos
d) Una etapa del pipeline
✅ Respuesta: b) — Es la separación histórica entre desarrollo y operaciones, donde cada uno «lanza» el trabajo por encima del muro. DevOps lo derriba.
Question 3: ¿Por qué la automatización es central en DevOps?
a) Para suprimir todos los empleos
b) Porque hace las tareas repetitivas rápidas, fiables y reproducibles
c) Porque es obligatoria por ley
d) Para ralentizar los despliegues
✅ Respuesta: b) — Una máquina ejecuta el mismo procedimiento sin error ni fatiga, lo que hace posibles las entregas frecuentes.
Question 4: ¿Cuál es el interés de la retroalimentación rápida?
a) Detectar y corregir los problemas pronto, cuando cuestan menos
b) Evitar escribir pruebas
c) Reducir la colaboración
d) Desplegar una sola vez al año
✅ Respuesta: a) — Cuanto antes se detecta un bug, menos cuesta. Las pruebas automatizadas y el monitoreo aportan esa retroalimentación.
Question 5: ¿Qué simboliza el bucle infinito de DevOps?
a) Que el trabajo nunca termina y que se da vueltas
b) La mejora continua y la iteración sin fin del ciclo Plan → Monitor → Plan
c) Un error en el pipeline
d) El reinicio de los servidores
✅ Respuesta: b) — El bucle ∞ representa la mejora continua: cada ciclo alimenta el siguiente gracias a la retroalimentación.
Una empresa ficticia, DataCorp, entrega su aplicación dos veces al año. Cada puesta en producción dura un fin de semana entero, falla a menudo, y el equipo Ops acusa al equipo Dev (y al revés). Los bugs reportados por los clientes tardan semanas en corregirse.
Identifica 3 problemas y propone una práctica DevOps para cada uno.
| Problema observado | Causa | Práctica DevOps a aplicar |
|---|---|---|
| Entregas raras (2×/año) y arriesgadas | Despliegues manuales, en lotes grandes | Automatización del pipeline CI/CD → entregas frecuentes y pequeñas |
| Dev y Ops se acusan mutuamente | Silos, «muro de la confusión» | Colaboración: responsabilidad compartida, objetivos comunes |
| Bugs de clientes corregidos en semanas | Sin detección precoz | Retroalimentación rápida: pruebas automatizadas + monitoreo |
Conclusión esperada: DataCorp sufre un déficit en los tres pilares. Al automatizar los despliegues, romper los silos y poner en marcha pruebas + monitoreo, pasaría de 2 entregas al año a entregas frecuentes, fiables y poco estresantes.
Truco: casi todo problema DevOps se reduce a una falta en uno de los tres pilares — colaboración, automatización o retroalimentación.
Toca los conceptos que estructuran todo el curso: lección 03 — CI/CD: conceptos y pipeline.
Todos los derechos reservados. Toda reproducción, difusión, uso o adaptación de este curso, en todo o en parte, está estrictamente prohibida sin la autorización escrita previa del Dr. Haythem REHOUMA.
Curso creado por Dr. Haythem REHOUMA — Desarrollo y despliegue de soluciones de datos