El enfoque de DevOps de Adaptavist para 2024
Compartir en redes sociales
El enfoque de Adaptavist sobre DevOps para 2024
Matt Saunders
15 de enero de 2024
13 min de lectura
Matt Saunders
15 de enero de 2024
13 min de lectura
El año 2023 fue muy ajetreado en Adaptavist: ayudamos a nuestros clientes a aumentar su madurez en materia de DevOps mediante la mejora de sus procesos, e integramos potentes herramientas con las que respaldar sus iniciativas para que puedan ofrecer valor a sus clientes de forma rápida y segura. Al mismo tiempo, nos mantenemos al tanto de las tendencias y de las tecnologías emergentes para determinar si pueden ser de utilidad para las organizaciones con las que ya estamos trabajando y para las que pronto usarán nuestros servicios.
La IA generativa acaparó los titulares en 2023, y sus primeras aplicaciones prácticas en el contexto de DevOps comenzaron a cobrar forma. Entre las otras áreas que marcaron tendencia ese año, se incluyen el continuo aumento de la computación en la nube, que permitió a las organizaciones implementar y ampliar sus soluciones mucho más fácilmente. Por su parte, la integración de más medidas y controles en fases tempranas de DevSecOps se convirtió en una técnica convencional para garantizar la seguridad del software implementado.
Entonces, ¿qué va a pasar con DevOps? La oferta de DevOps en 2024 es enormemente amplia, e incluye soluciones que abarcan desde la IA y las operaciones financieras hasta planes para crear la mejor experiencia para los desarrolladores. Veamos cómo evolucionarán estas tendencias durante el próximo año de acuerdo con nuestras previsiones, y qué otras soluciones emergentes podrías adoptar para mantenerte un paso por delante de la competencia.
1. IA y aprendizaje automático
En Adaptavist, la IA fue el tema más popular de 2023, y comenzamos a plantearnos cómo aprovechar al máximo las aplicaciones prácticas de esta tecnología revolucionaria. Las primeras predicciones sugirieron que, a estas alturas, habríamos mejorado la productividad de los desarrolladores diseñando un chatbot que pudiera encargarse de toda la codificación, pero en 2024 nos damos cuenta de que estas expectativas eran demasiado altas. Si bien esa panacea en la que la IA siempre escribe código completo y correcto todavía está lejos, la integración de chatbots en entornos de desarrollo integrado ya está comenzando, lo que permite a los desarrolladores usar las sugerencias del aprendizaje automático para escribir y mejorar el código. De esta forma, cabe esperar un auge de la IA generativa en el contexto de DevOps, y distintos equipos explorarán el uso de la IA y del aprendizaje automático en muchas áreas.
Pruebas y control de calidad
La automatización ya ha ayudado a acelerar las pruebas, haciéndolas más repetibles y escalables. Por su parte, las herramientas de IA bien integradas han optimizado aún más esa automatización. Aunque a veces la escritura de pruebas unitarias es una tarea repetitiva, su importancia es vital y a veces puede pasarse por alto. Por eso, esta es una aplicación ideal para la IA generativa, que puede escribir código de prueba convincente y relevante para mejorar la cobertura de las pruebas. Así, los comentarios pueden implementarse mejor en el ciclo de vida del desarrollo a medida que estas herramientas estén disponibles y más extendidas en los entornos de desarrollo integrado. Mediante el análisis de los datos de prueba y la identificación de patrones, las herramientas de IA pueden crear estrategias nuevas y más efectivas para probar aquellas áreas donde es más probable que surjan problemas.
Supervisión y observabilidad
Si bien es bastante sencillo ver si un servicio está "activo" o "inactivo", las herramientas contemporáneas utilizan técnicas de aprendizaje automático para detectar anomalías en los datos de rendimiento, lo que podría ser indicativo de un posible problema. La IA ofrece una solución basada en datos, de forma que los equipos no tienen que basar sus decisiones solamente en la experiencia y en su intuición. Analiza patrones anteriores, busca tendencias que de otro modo podrían pasar desapercibidas y hace predicciones inteligentes sobre la demanda futura para que puedas evitar el exceso o la falta de recursos.
Con la IA, también obtendrás información en tiempo real que podría pasar desapercibida mediante los métodos de supervisión tradicionales. Asimismo, ofrece soluciones para optimizar la gestión de incidencias, ya que permite priorizar incidentes en función de su gravedad, y permite ahorrar tiempo y recursos identificando la raíz de los problemas. En el futuro, las organizaciones usarán la IA y el aprendizaje automático para identificar problemas a partir del análisis de los datos de registro y de otras métricas.
2. FinOps
El auge de la computación en la nube ha continuado en 2023, pero con el crecimiento de este sector multimillonario surgió una mayor preocupación por los costes. La computación en la nube supone un gran gasto operativo para la mayoría de las empresas, pero con el modelo de gasto variable es difícil evitar el desperdicio de recursos en la nube y conseguir un ahorro significativo. Por ejemplo, los fundadores de Basecamp publicitaron mucho su decisión de alejarse de la computación en la nube y volver a centrarse en el uso de un data center. Si bien no esperamos que esta tendencia crezca enormemente, demuestra un mayor rigor en torno a los costes, lo cual es una preocupación para cualquiera que use la computación en la nube a cualquier escala.
De nuevo, las herramientas evolucionarán en este segmento. Las herramientas de gestión de costes más antiguas dependen en gran medida del etiquetado para asignar los costes de la nube, pero la adopción del etiquetado ha resultado difícil en muchas empresas, especialmente a la hora de asignar los costes de los recursos compartidos. Las herramientas para analizar estos costes están evolucionando, y veremos más a medida que las empresas concilien el enfoque financiero de «gastar lo menos posible» con una mayor comprensión del retorno de la inversión de los costes de la nube. La reciente aparición de las FinOps como práctica definida aumenta el entendimiento compartido de los matices en este ámbito.
Cuando se usan con las prácticas recomendadas y una cultura FinOps, plataformas como CloudZero dan a todo el mundo la información que se necesita para gestionar los costes de la nube de forma proactiva. El gasto efectivo en la nube, respaldado por una toma de decisiones multifuncional, puede incrementar los ingresos, permitirte acelerar el lanzamiento de productos, ofrecer una ventaja competitiva y garantizar que todo el mundo sepa por qué se realiza la inversión (y por qué no).
3. Ingeniería de plataformas
La ingeniería de plataformas desempeña un papel fundamental en el ámbito de las DevOps, ya que ofrece una infraestructura de base que acelera el desarrollo y la implementación del software y resuelve el problema de la cooperación entre los desarrolladores y los operadores de software.
Es un cliché describir a los ingenieros de plataformas recién titulados como esas personas a las que se nombró como ingenieros de fiabilidad del sitio el año pasado e ingenieros de DevOps el año anterior. Sin embargo, al igual que la función laboral del SRE presenta un significado adicional, más que un mero retoque de «ingenieros de DevOps», hay una evolución en progreso a medida que la ingeniería de plataformas se convierte en una práctica por derecho propio.
En el panorama actual de las DevOps, los equipos de ingeniería de plataformas ofrecen cada vez más «plumbing» como servicio, dado que proporcionan los componentes y las infraestructuras fundamentales para llevar a cabo desarrollos e implementaciones sin problemas. Este enfoque permite a los equipos de desarrollo centrarse en sus responsabilidades principales sin agobiarse por las complejidades de la gestión de la infraestructura.
En 2024, veremos definiciones más detalladas de lo que supone la ingeniería de plataformas para los equipos que realizan DevOps a medida que las organizaciones de mayor tamaño desarrollen distintas capacidades y necesidades de servicio que no puedan satisfacerse solo con productos de la nube estándares. Cabe esperar una mayor atención al autoservicio de los desarrolladores centrado en el producto. En esto, será clave cómo recopilan los equipos internos los requisitos y los comentarios de los clientes internos, ya que los equipos de plataformas se centran en añadir valor táctico, más que en replicar servicios que se podrían adquirir en otra parte.
Cabe esperar cambios en el diseño organizacional, con la aparición de más equipos alineados con los flujos de trabajo, tal y como promueven las topologías de los equipos. La ingeniería del «plumbing», capaz de hacer que esos equipos sean efectivos, aumentará la independencia y la eficiencia dentro de estas especialidades, lo que promoverá un entorno más eficiente y colaborativo.
La aparición de estándares dentro de la ingeniería de plataformas se ha convertido en un aspecto crítico de esta disciplina. Según Gartner®, «para 2026, el 80 % de las organizaciones de ingeniería de software de gran tamaño establecerán equipos de ingeniería de plataformas como proveedores internos de servicios, componentes y herramientas reutilizables para la entrega de aplicaciones. La ingeniería de plataformas resolverá en última instancia el problema central de la cooperación entre los desarrolladores y los operadores de software».1.
La aparición de estándares dentro de la ingeniería de plataformas se ha convertido en un aspecto crítico de esta disciplina. Según Gartner®, «para 2026, el 80 % de las organizaciones de ingeniería de software de gran tamaño establecerán equipos de ingeniería de plataformas como proveedores internos de servicios, componentes y herramientas reutilizables para la entrega de aplicaciones. La ingeniería de plataformas resolverá en última instancia el problema central de la cooperación entre los desarrolladores y los operadores de software».1.
4. Experiencia de los desarrolladores
Las organizaciones de alto rendimiento entienden que centrarse en la experiencia de los desarrolladores, proporcionando las herramientas y los procesos adecuados para que los desarrolladores prosperen, es fundamental para ofrecer software de calidad de forma fiable y rápida. Casi tres cuartas partes de las empresas mejoran su productividad mediante la mejora de la DevEx, aparte de otros efectos como el aumento de los ingresos y de la satisfacción de los clientes.
Los ecosistemas que proporcionan plataformas de desarrolladores internas continuarán evolucionando hacia productos como Venue.sh, ya que los equipos de DevOps aprovechan las enseñanzas de marcos como Backstage para facilitarles la vida a los desarrolladores. Los equipos que quieran innovar comenzarán a explotar nuevas técnicas. Un buen ejemplo de ello es usar el IDP para emprender rápidamente nuevas iniciativas de programación con la ayuda de esqueletos acordados, pensados y lanzados para la infraestructura de la nube. Otro consiste en utilizar un catálogo de servicios para facilitar el acceso a los microservicios disponibles. Estos equipos entienden que proporcionar una ruta sin fricciones para escribir e implementar código es un requisito clave.
5. Entornos de desarrollo en la nube
Los entornos de desarrollo en la nube ofrecen escalabilidad y capacidades de colaboración, pero los desarrolladores a menudo desean contar con la inmediatez y el bucle de retroalimentación que proporcionan los entornos locales. ¿Así que cómo podemos salvar las distancias?
Cabe esperar que se acelere el cambio de los entornos de desarrollo a la nube. Los desarrolladores están acostumbrados a un entorno de desarrollo local que responde y que se ha personalizado para ellos, y la innovación en el suministro de entornos de desarrollo integrados (IDE) basados en la web comenzará a ofrecer todo esto en la nube. La ejecución en la nube facilita una integración de mayor nivel con los servicios auxiliares utilizados durante las construcciones, como el análisis de seguridad y las integraciones de la IA generativa. La capacidad de los equipos centralizados para emplear el control más estricto de estos entornos con fines de seguridad y auditoría implicará una mayor adopción en este ámbito.
Además, la brecha entre los entornos de construcción y los entornos de implementación se reducirá, con servicios como Gitpod y GitLab, que ofrecen entornos de desarrollo en la nube completos que se vinculan directamente a los clústeres de Kubernetes para llevar a cabo implementaciones fáciles y estandarizadas.
A pesar del cambio a la nube de numerosas tareas de desarrollo, las herramientas de desarrollo locales siguen mejorando y ganando terreno. Herramientas como Telepresence, que permite a los desarrolladores realizar pruebas en un entorno de desarrollo similar al de producción conectando la copia de su servicio localmente a sus dependencias remotas, será clave en esto. Pueden ayudar con la transición al desarrollo en la nube al reducir la fricción y mantener ese ciclo de retroalimentación rápida crucial que ofrece el desarrollo local.
Hay mucho más en todo esto. ¿Quieres saber qué es lo que está por venir en las DevOps y otras prácticas de desarrollo de software? ¿Necesitas ayuda para organizarte con nuevas herramientas o técnicas? ¿Quieres centrarte más en las DevOps en 2024? Estamos a tu disposición.
¡Contacta con nosotros para obtener más información!
1 Artículo de Gartner: «¿Qué es la ingeniería de plataformas?» Colaborador: Lori Perri, 26 de octubre de 2023.
GARTNER es una marca registrada y de servicios de Gartner, Inc. y/o sus filiales en los EE. UU. e internacionalmente y se utiliza en este documento con permiso. Todos los derechos reservados.
Escrito por
Matt Saunders
Jefe de DevOps
Con experiencia como administrador de sistemas Linux, Matt es una autoridad en todo lo relacionado con DevOps. En Adaptavist y en otros ámbitos, promueve los métodos de trabajo de DevOps y ayuda a los equipos a sacar el máximo partido de las personas, los procesos y la tecnología para ofrecer software de forma eficaz y segura.