Seidor
DevOps

10 de maig de 2024

La cultura DevOps, més que eines

Com va començar DevOps?

El moviment DevOps va començar fa més de 10 anys. Patrick Debois intentava aplicar la mentalitat àgil a la infraestructura que administrava, tot i que sense gaire èxit. Més tard va conèixer a Andrew Clay Shafer, que treballava en la idea d'infraestructura àgil, i a Jean-Paul Sergent, que explorava formes de millorar la col·laboració entre els equips de desenvolupadors i els equips d'operacions de IT.

Van planejar compartir les seves idees en una conferència. El 2009, Debois va veure una xerrada de Flickr sobre la cooperació entre desenvolupadors i operacions per aconseguir múltiples desplegaments al dia en producció. Això el va motivar a organitzar una conferència a Gant (Bèlgica). Anomenar-la "Administradors de sistemes àgils" no semblava el nom més atractiu per a la conferència, i va acabar anomenant-se "DevOpsDays".

Actualment, pots buscar treballs de "DevOps" i trobaràs una àmplia varietat d'habilitats requerides i de rols. Algunes vacants es centren en Terraform o Ansible, altres s'assemblen més a un arquitecte Cloud d'AWS o a un expert en Docker/Kubernetes, però poques parlen d'una mentalitat DevOps. El mateix Patrick Debois va publicar un esquema sobre els rols DevOps al seu blog:

DevOps

Des de la conferència que va acunyar el terme DevOps, la quantitat d'eines associades creix dia a dia. Les eines capturen tota la nostra atenció la major part del temps. No obstant això, la col·laboració entre desenvolupadors i operacions és el pilar de la mentalitat DevOps amb l'objectiu posat en l'entrega contínua.

Estructura de l'equip DevOps

Normalment, cada equip en la mateixa empresa té diferents responsabilitats, per la qual cosa les seves prioritats i objectius són diferents. Això genera embuts i retards en les entregues de noves funcionalitats. I aquesta és una de les causes fonamentals que van originar el moviment DevOps.

La relació entre els equips en el context DevOps, va ser analitzada per Matthew Skelton el 2013 a “DevOps Topologies”. Aquí pots trobar una de les formes més comunes per accelerar les entregues: crear un equip de DevOps especialitzat en l'automatització i CI/CD. Tot i així, cal tenir cura ja que està categoritzat com un antipatró perquè aquest equip pot esdevenir un silo (i DevOps es tracta de trencar els silos, no?).

Aquest estudi entorn del treball entre equips (no només DevOps) va evolucionar amb Manuel País i junts van escriure el llibre “Team Topologies” on van analitzar les diferents formes d'estructurar equips per al desenvolupament de programari.

En el llibre presenten diferents patrons per organitzar els equips i a més descriuen les forces ocultes que impulsen les relacions entre els equips.

Un dels molts punts clau del llibre és el concepte de la càrrega cognitiva. Una persona és capaç de retenir una determinada quantitat d'informació per realitzar una tasca. I el mateix val per a un equip.

Ara imagina un equip que treballa amb una gran quantitat d'eines o un equip que gestiona moltes responsabilitats diferents (o totes dues). Inevitablement, apareixeran retards i embuts a causa de contextos canviant, dedicacions multitasca o dies plens de reunions. Novament, la motivació DevOps és eliminar qualsevol retard per aconseguir un flux ràpid. El llibre dóna indicacions sobre com afrontar aquestes situacions.

Què serà lo següent?

Després d'una dècada des que DevOps va començar el 2009, el desenvolupament de programari ha evolucionat: computació en el núvol, infraestructura com a codi, microserveis, docker, kubernetes...

Llavors, DevOps segueix sent relelevant o s'ha convertit en una altra paraula de moda buida? Potser escoltarem a Kris Buytaert parlant sobre això a DevOps Barcelona 2022. Mentrestant, et recomanem llegir: