La estructura del equipo de DevOps: tipos, funciones y responsabilidades
Cada equipo requiere una estructura diferente segĂșn el contexto general de la empresa.

Prueba Compass gratis
Mejora tu experiencia de desarrollador, cataloga todos los servicios y mejora el estado del software.
Cuando un equipo de software estĂĄ en proceso de adoptar la metodologĂa DevOps, es importante tener en cuenta que cada equipo deberĂĄ estructurarse de una forma distinta segĂșn el contexto general de la empresa y sus ganas de cambio.
El auge de los equipos de DevOps
ÂżTienes un equipo de DevOps en tu empresa? Es muy posible que sĂ. En nuestra encuesta sobre tendencias de DevOps, mĂĄs de dos tercios de las organizaciones encuestadas afirmaron tener un equipo o una persona con la palabra "DevOps" en alguna de sus funciones.Â
A medida que DevOps se va generalizando, a menudo oĂmos que los equipos de software ahora son equipos de DevOps. Sin embargo, el hecho de incorporar herramientas nuevas o llamar a un equipo "de DevOps" no es suficiente para aprovechar plenamente las ventajas que ofrece DevOps.Â
Sin una comprensiĂłn clara del modelo DevOps y cĂłmo implementarlo correctamente, una transformaciĂłn a este modelo normalmente se limitarĂĄ a una reorganizaciĂłn o a la incorporaciĂłn de las Ășltimas herramientas del mercado. La correcta adopciĂłn del modelo DevOps pasa por un cambio cultural, que consiste en reestructurar los equipos, regirse por nuevos principios de gestiĂłn e incorporar determinadas herramientas tecnolĂłgicas.
Tipos de estructuras de equipo en DevOps
Antes de decidir quĂ© estructura de equipo de DevOps conviene implementar, es necesario tener en cuenta varios factores, como el nĂșmero de productos en los que trabaja una organizaciĂłn, los puestos de liderazgo tĂ©cnicos y si los equipos de desarrollo y operaciones tienen la capacidad de sincronizar sus procesos.
Es importante entender que no todos los equipos tienen los mismos objetivos ni utilizarĂĄn las mismas prĂĄcticas y herramientas. Incluso la forma en la que se estructura un equipo no deberĂa estandarizarse. Cada equipo requiere una estructura diferente segĂșn el contexto general de la empresa y sus ganas de cambio. Un equipo de DevOps de dos empresas diferentes puede significar dos cosas completamente distintas.Â
Para aprovechar todas las ventajas (como una comercializaciĂłn mĂĄs rĂĄpida, una frecuencia de implementaciĂłn mejorada, una mejor cultura de equipo y una mayor colaboraciĂłn entre equipos y departamentos), es importante entender el papel que desempeña cada equipo. Aun asĂ, en muchas organizaciones hay equipos con varios nombres que asumen mĂșltiples cargos (por ejemplo, un equipo de infraestructura actĂșa como selector y encargado de mantener las herramientas). Esta expansiĂłn hace que a los responsables de equipo les cueste visualizar todo el organigrama y responder a preguntas importantes como las siguientes: ÂżTenemos los equipos adecuados?, ÂżNos faltan capacidades en algunas ĂĄreas que no estĂĄ abordando ningĂșn equipo? ÂżParece que los equipos cuentan con el equilibrio necesario entre autonomĂa y apoyo con respecto a otros equipos?
El gran trabajo que ha hecho el equipo de Team Topologies ha servido como punto de partida para Atlassian en cuanto a su forma de entender los diferentes enfoques de equipo de DevOps. Ten presente que las estructuras de equipo que se indican a continuaciĂłn pueden adoptar diferentes formas segĂșn el tamaño y la madurez de cada empresa. En realidad, el enfoque ideal serĂa combinar mĂĄs de una estructura o que una estructura se transforme en otra.
ColaboraciĂłn entre los equipos de desarrollo y operaciones
Mucha gente cree que la metodologĂa DevOps consiste en hacer que los equipos de desarrollo y operaciones trabajen y colaboren de forma coordinada. Esta es la base de DevOps y aporta ventajas claras, entre las que se incluye la capacidad por parte de los equipos de software de compilar, probar y lanzar de forma mĂĄs rĂĄpida y fiable. Â
La clave del éxito de esta estructura de equipo es que los desarrolladores comprendan la presión que tienen los equipos de operaciones para mantener el tiempo de actividad y minimizar las resoluciones. Igual de importante es que los equipos de operaciones comprendan el deseo de los equipos de desarrollo de reducir el tiempo de implementación y los plazos de lanzamiento.
Desarrollo y operaciones, juntos
En esta estructura de equipo, se asume que el desarrollo y las operaciones van de la mano y trabajan en un mismo equipo, actuando como un frente Ășnico con objetivos compartidos. A veces, este tipo de estructura recibe el nombre de "NoOps", sobre todo en grandes empresas tecnolĂłgicas que tienen un solo producto digital principal, como Facebook o Netflix. Esta situaciĂłn puede incluso dar lugar a que las mismas personas tengan que desarrollar y operar las aplicaciones al estilo "tĂș lo creas, tĂș lo gestionas".
DevOps/SRE
Esta estructura de equipo, popularizada por Google, consiste en que un equipo de desarrollo entrega un producto al equipo de ingenierĂa de fiabilidad del sitio (SRE), que es quien realmente ejecuta el software. En este modelo, los equipos de desarrollo proporcionan registros y otros artefactos al equipo de SRE para demostrar que su software cumple unos estĂĄndares suficientes para que el equipo de SRE le dĂ© el visto bueno. Los equipos de desarrollo y SRE colaboran siguiendo unos criterios operativos. Los equipos de SRE tienen la capacidad de pedir a los desarrolladores que mejoren el cĂłdigo antes de enviarlo a producciĂłn.
Operaciones como plataforma
En esta estructura de equipo, un equipo dentro del equipo de desarrollo actĂșa como fuente de conocimientos en todas las operaciones y trabaja en la mayor parte de la interfaz con el equipo de infraestructura como servicio (IaaS). Esta estructura de equipo depende de las aplicaciones que se ejecutan en una nube pĂșblica, ya que el equipo de IaaS crea servicios virtuales escalables que utiliza el equipo de desarrollo.
DevOps como parte externa
Hay empresas que utilizan la metodologĂa DevOps a travĂ©s de un consultor o un equipo de DevOps externo durante un periodo concreto para ayudar a sus equipos de desarrollo y operaciones a avanzar hacia las dos primeras estructuras de equipo mencionadas (es decir, colaboraciĂłn entre los equipos de desarrollo y operaciones, y desarrollo y operaciones, juntos).
Si bien hay varias formas de adoptar la metodologĂa DevOps, tambiĂ©n hay muchas formas de no hacerlo. Los equipos y responsables de DevOps deben tener cuidado con los antipatrones, que se caracterizan por la divisiĂłn de equipos, la falta de comunicaciĂłn y una priorizaciĂłn errĂłnea de las herramientas por encima de la comunicaciĂłn.
Funciones y responsabilidades de los equipos de DevOps
Independientemente de la estructura que tenga tu equipo, todos los equipos de alto rendimiento que utilizan la metodologĂa DevOps comparten regularmente sus conocimientos y experiencias de desarrollo y operaciones, ya sea en reuniones periĂłdicas, poniendo varias personas a trabajar en ambos equipos o haciendo que los miembros del equipo desempeñen ambas funciones. Un equipo de alto rendimiento se caracteriza por las ventajas que ofrece la metodologĂa DevOps, es decir, una comercializaciĂłn mĂĄs rĂĄpida, unos plazos mejorados, una mayor frecuencia de implementaciĂłn, unas entregas de mejor calidad, una mejor cultura de equipo y una mayor colaboraciĂłn entre equipos y departamentos.Â
Los equipos de DevOps suelen estar compuestos por personas con habilidades tanto de desarrollo como de operaciones. A algunos miembros se les darĂĄ mejor la programaciĂłn y a otros, la operaciĂłn y administraciĂłn de infraestructuras. Sin embargo, en las grandes empresas, cada aspecto de la metodologĂa DevOps (desde la CI/CD hasta la IaaS y la automatizaciĂłn) puede materializarse en una funciĂłn. Por ejemplo, un gestor de publicaciones que coordine y administre aplicaciones desde la fase de desarrollo hasta la de producciĂłn, arquitectos de automatizaciĂłn que mantengan y automaticen la canalizaciĂłn de CI/CD del equipo, etc.Â
AsĂ pues, ÂżquĂ© se necesita para unirse a un equipo de DevOps? Los requisitos laborales para unirse a un equipo de DevOps evolucionan debido a las nuevas tecnologĂas y tĂ©cnicas, pero las cualidades de un buen equipo de DevOps son siempre las mismas: tener unas habilidades tĂ©cnicas sĂłlidas, buenas dotes de comunicaciĂłn, una mentalidad de trabajo en equipo y la capacidad de adaptarse. Estas solo son algunas de las caracterĂsticas principales de un profesional de DevOps consumado. Contar con una combinaciĂłn de estas aptitudes es probablemente mĂĄs importante que tener un conocimiento enciclopĂ©dico de Kubernetes o Git. Ahora bien, si se tienen las dos cosas, ÂĄmejor que mejor!
Otro ingrediente para el Ă©xito es contar con un lĂder dispuesto a evangelizar la metodologĂa DevOps en un equipo, los equipos colaborativos y toda la organizaciĂłn en general. No tiene por quĂ© ser alguien con la palabra "gerente" en su cargo, pero sĂ alguien dispuesto a convencer a los miembros escĂ©pticos de los equipos para empezar a acortar distancias entre su equipo y los demĂĄs, ya sean de desarrollo, operaciones o plataforma.
Software para reforzar tu equipo
Al final, el trabajo que hace un equipo a diario es el que determina quĂ© cadena de herramientas de DevOps necesita. Aun asĂ, necesitarĂĄs contar con algĂșn tipo de software que conecte y coordine el trabajo entre tu equipo y el resto de la organizaciĂłn. Jira es una potente herramienta que planifica, supervisa y gestiona proyectos de desarrollo de software, manteniendo a tus compañeros de equipo mĂĄs cercanos y al resto de la organizaciĂłn al tanto del estado de tu trabajo.Â
Aplicaciones como Zoom, Slack y Microsoft Teams tambiĂ©n son necesarias para una comunicaciĂłn rĂĄpida y eficiente entre equipos, especialmente en un mundo que da prioridad al trabajo en remoto. Antes, un desarrollador podĂa ir al equipo de operaciones para preguntarle acerca del estado de un incidente. Sin embargo, ahora las aplicaciones de comunicaciĂłn virtual proporcionan esa misma comunicaciĂłn instantĂĄnea.Â
Open DevOps de Atlassian ofrece todo lo que los equipos necesitan para el desarrollo y las operaciones de software. Los equipos pueden crear la cadena de herramientas de DevOps que quieran gracias a las integraciones con los principales proveedores y aplicaciones de Marketplace. Porque creemos que deben poder trabajar como quieren y no como pretenden los proveedores. Pruébalo ahora gratis.