Qué es DevOps en 5 minutos

Ya hace unos años que se viene escuchando cada vez más el término DevOps, pero, como todo concepto, relativamente reciente, suele generar dudas al respecto.

Breve historia de DevOps

Me parece una buena forma de empezar, contar antes de dónde viene el término DevOps, y es importante conocer y comprender los hechos que ocurrieron antes de su llegada.

Veníamos de la época de los «Lean manufacturing», la metodología de las 5S, y el sistema de producción de Toyota. Metodologías donde primaba la organización, la eficiencia, y la reducción de «desperdicios» (de cualquier clase) al mínimo.

Y como, por suerte o por desgracia, (yo creo que más por desgracia) el desarrollo de software se ha basado durante mucho tiempo en la industria de la construcción o el automóvil, salieron a la luz «desperdicios» que surgían de estos desarrollos.

Se atribuye en gran medida el nacimiento de DevOps a Patrick Debois, un consultor y Project Manager de origen belga entusiasta de la agilidad.

Su trabajo por aquel entonces, requería que participara tanto con los equipos de Desarrollo (Dev) como con los de Sistemas, u operaciones (Ops). Ya te vas imaginando de donde viene el término y lo que va a significar.

Por aquel entonces, y lamentablemente también el día que escribo este artículo, la integración entre estos dos equipos era completamente nula. Solían estar aislados, incluso a nivel físico, en distintas estancias o salas.

Para Debois, y para más de uno que conozco :), esto produjo numerosas frustaciones, retrasos, y (sí, otra vez) «desperdicios».

Y es en 2009, cuando se celebra la primera conferencia llamada DevOps Day, en Gante (Bélgica). A día de hoy, siguen celebrándose a lo largo del mundo de forma itinerante. (Puedes ver más info en DevOps days)

Distintos enfoques sobre qué es DevOps

Cada vez hay más acuerdo sobre lo que queremos decir cuando hablamos de DevOps, y estamos refiriéndonos a la completa integración de los equipos de Desarrollo y Operaciones, a la ruptura de estos silos que tantos inconvenientes nos han ocasionado.

En un mundo donde cada vez se hace más necesario apostar por la agilidad en el desarrollo de software, resulta imprescindible eliminar cualquier barrera que no aporte un beneficio a profesionales, empresas y clientes.

Por eso es, «en la teoría», todos estamos de acuerdo, en que ésta es la forma adecuada en la que trabajar y aportar valor a los usuarios.

Y quizá ya hayas visto esta imagen, que muestra el proceso.

Flujo DevOps

Sin embargo, han aparecido enfoques que, debido a la inmadurez de DevOps, generan algo de confusión para quienes lo ven por primera vez.

DevOps como filosofía o cultura

Un enfoque muy extendido, ya que, para adoptar cualquier metodología, herramienta, o práctica que suponga un cambio importante en la organización (y DevOps lo supone, y mucho)

Aunque no considero que DevOps sea solo eso, si que es vital que las empresas (recuerdo, formadas por personas) que quieran adoptar DevOps, tengan claro el concepto como haciendo hincapié en la importancia del trabajo en equipo para romper las barreras de las que hemos hablado antes.

DevOps como puesto de trabajo

Aunque no nació con ese objetivo, la evolución del desarrollo de software y la implementación de nuevas prácticas y herramientas que ayudan a construir aplicaciones de forma más rápida, con mayor calidad y donde la automatización juega un papel tan importante, ha abierto un hueco que podía quedar «en tierra de nadie»

Es por ello, que cada vez existen más empresas buscando un «DevOps» Engineer, y donde, según estas ofertas, buscan a profesionales capaces de fomentar y facilitar la colaboración, integración y comunicación de los equipos implicados, mientras dominan las herramientas que permiten entregar software de calidad de forma mucho más ágil.

DevOps como conjunto de herramientas

Para conseguir esta unión sobre los equipos de Dev y Ops, se convierte en necesario la existencia de cada vez más herramientas: control de versiones (Git, Subversion) integración contínua (Jenkins) inspección continua (SonarQube) entornos cloud (AWS, Azure, Google Cloud).

Por eso, también podemos ver en más categorías de aplicaciones, blogs y distintos sitios web, la categoría de DevOps.

Aunque obviamente, la adopción de estas herramientas, sin aplicar la comunicación y colaboración efectiva, y sin romper las barreras existentes entre los equipos, simplemente hará que sea la misma organización, con los mismos inconvenientes, más los añadidos por tener nuevas herramientas

Mi opinión sobre qué es DevOps

Para mí, es un término todavía muy reciente para poder establecer de forma firme lo que DevOps significa, así como el alcance y la implicación que tiene en el sector IT.

Lo que sí estoy totalmente de acuerdo es con la necesidad cada vez mayor de eliminar toda barrera que implique falta de productividad o eficiencia.

Y por eso veo tan necesario que especialistas en programación y en sistemas operativos, adopten unas prácticas ágiles que, sin perder las ventajas que suponen la especialización, afiancen la colaboración y nunca, nunca, nunca más escuchemos eso de «esto no es de mi departamento» 🙁

Así que para mi el concepto DevOps supone eso, un conjunto de prácticas y enfoques que conducen a la estrecha colaboración para la entrega de software de calidad de forma ágil.

Hora de DevOps

El futuro de DevOps

En mi opinión es un concepto que todavía seguirá evolucionando, sobretodo en cuanto al enfoque como profesión se refiere, tanto por la necesidad que tenemos de poner nombre a las cosas nuevas, como al «postureo tecnológico» o las empresas que se suman a esta nueva «moda» y querrán aumentar sus beneficios con sus certificaciones.

También creo que evolucionará como categoría de herramientas, llevándonos a la adopción (espero que no suponga por «imposición») del uso de herramientas «todo en uno» como por ejemplo Azure DevOps.

Y esto, aunque supondrá seguramente un aumento del gasto, siento gran curiosidad sobre si compensará a tener que usar un mayor número de herramientas de menor coste.

Así que ya sabes, Batman es un tío muy muy listo, y si él lo dice, habrá que hacerle caso.

A batman le mola DevOps

¿Te ha ayudado este artículo a conocer DevOps? O si ya lo conocías ¿qué destacarías? ¡Comentarios abiertos para que aportes lo que quieras! 🙂

Lectura recomendada

Mis 7 trucos para gestionar el correo electrónico de forma eficiente Gestionar el correo electrónico es una tarea clave para un profesional digital, usarlo eficientemente es lo que lo diferencia de que sea obstáculo o...una ayuda para producir más y mejor

Deja un comentario