Cómo Nebulaworks reemplazó 3 herramientas con GitLab y potenció la velocidad y la agilidad del cliente
¿Quiere ver lo que GitLab Ultimate puede hacer por su equipo?
Nebulaworks adoptó GitLab, facilitó el mantenimiento y alivió la sobrecarga de las herramientas y logró organizar la CI.
La organización de consultoría de ingeniería adoptó GitLab para la gestión del código fuente (SCM), la integración continua y la entrega continua (CI/CD), el seguimiento de tickets y una mayor conexión con el equipo de marketing en el proceso.
Consultoría de ingenieros para ingenieros
Nebulaworks es una consultora de ingeniería de software que ofrece a los clientes soluciones innovadoras para los procesos de desarrollo y entrega. La organización se enorgullece de trabajar con sus clientes para crear equipos de ingeniería de alto rendimiento en los que los miembros se sientan inspirados para colaborar abiertamente, incentivados para adquirir nuevos conocimientos y habilidades, y se sientan realizados al resolver problemas complejos de forma sencilla.
En 2014, dos ingenieros que vieron la necesidad de desafiar el status del desarrollo de software y la prestación de servicios de operaciones de TI en las grandes empresas fundaron Nebulaworks. A diferencia de muchas de las empresa de consultoría y SI globales de la época, Nebulaworks se creó para resolver los complejos desafíos de los ingenieros de TI empresarial. Una empresa de consultoría e integración de sistemas, creada por ingenieros para ingenieros.
Tres herramientas son demasiadas
Nebulaworks buscaba una plataforma que proporcionara repositorios remotos para que los equipos pudieran colaborar, independientemente de su ubicación. El equipo de desarrollo utilizaba anteriormente una instancia Self-Managed de un repositorio de Git y un software de paneles de tickets separado para los tickets y el seguimiento. Querían aumentar la productividad y centrar sus esfuerzos de ingeniería en el desarrollo que repercutiría en el negocio, en lugar de ocuparse de las tareas administrativas diarias para mantener el sistema en línea.
La organización contaba con un servicio de integración continua Self-Managed y respaldado por Kubernetes. No era la solución ideal debido a los gastos administrativos y suponía más trabajo para los ingenieros que utilizaban el sistema.
Nebulaworks mantuvo un total de tres herramientas internas durante varios años. Gestionar y mantener las herramientas era un trabajo a tiempo completo para un ingeniero, lo que reducía el tiempo que se debía dedicar a la ingeniería de software. Además de eso, tener datos y permisos de usuario en diferentes lugares causó un gran cambio de contexto, que era lento e ineficiente.
Una plataforma, muchas funcionalidades
Antes de renovar la licencia para las tres herramientas internas y Self-Managed existentes, Rob Hernández, director de Tecnología, y su equipo investigaron otras plataformas. Cuando hicieron una demostración de GitLab, reflejaron un proyecto existente, lo ajustaron para que la parte de CI lo probara y, a continuación, envolvieron todas las estructuras de paneles y seguimiento de tickets. Hernández descubrió que el nivel de organización de GitLab y la capacidad para jerarquizar los distintos proyectos destacaban frente a los competidores.
«Darnos cuenta de que incluso podíamos hacer que todos los tickets se trasladaran al grupo de GitLab de nivel superior fue realmente genial. No podríamos hacerlo con nuestro actual servicio de Git Self-Managed», comentó Hernández. «Explorar la herramienta en la demostración fue fantástico. Y darnos cuenta de que con la jerarquía podríamos tener subgrupos, y podríamos dividir esos subgrupos en cómo organizamos los proyectos para un cliente determinado».
GitLab ofreció al equipo una plataforma única para la CI, la gestión del código, la colaboración y el seguimiento de tickets sin necesidad de superponer herramientas. Nebulaworks puede ofrecer a los clientes una experiencia de colaboración y transparencia. Centrarse en una relación transparente reduce los costos para todos al permitir una resolución más rápida de los problemas, y reduce el riesgo al generar confianza y permitir que ambas partes planifiquen y ejecuten en consecuencia. Con GitLab, Nebulaworks pudo centrarse realmente en los resultados en lugar de realizar actualizaciones y mantenimiento de la cadena de herramientas.
CI, gestión del código y éxito del cliente
GitLab rompe los silos como una plataforma centralizada para la colaboración, lo que ayuda a impulsar la empresa. El equipo ahora dispone de un flujo de trabajo simplificado, que incluye tickets cercanos al código, visibilidad integral, CI fácilmente integrado y no más cambio de contexto entre herramientas.
Nebulaworks reemplazó por completo su pila de Git interna y Self-Managed con GitLab. «Llegamos incluso a definir todos nuestros recursos en GitLab (repositorios, grupos, permisos, etc.) utilizando Terraform. De este modo, GitLab se modifica como cualquier otro fragmento de código: se envía una solicitud de fusión, se aplica y se fusiona», afirmó Hernández. «Es realmente genial ver a los nuevos empleados agregar sus permisos el primer día a través de una solicitud de fusión, y así es como debería ser. No hay otra forma de que alguien haga un cambio dentro de nuestro grupo Nebulaworks de GitLab».
Nebulaworks eligió GitLab Gold porque las capacidades de SaaS permitían al equipo desconectar algunas máquinas in situ y obtener las ventajas de una oferta alojada. GitLab impulsa sus implementaciones a través de Amazon Web Services (AWS), concretamente sus cargas de trabajo de contenedores que se ejecutan en clústeres de Amazon EKS.
Al pasar a SaaS, el equipo puede optimizar sus eficiencias aprovechando la infraestructura de GitLab y centrarse en entregar mejores productos a los clientes. «No nos preocupamos de los parches de seguridad ni de actualizar a nuevas versiones para obtener nuevas funcionalidades. GitLab se encarga de todo eso», afirmó Hernández. «Ahora nos centramos en capacitar a nuestro equipo de ingeniería en su totalidad, en todos los servicios y funcionalidades que necesitamos. Gitlab nos permite centrarnos en eso en lugar de centrarnos en el mantenimiento».
Dado que el equipo de ingeniería trabaja con muchas herramientas diferentes para distintos clientes, deben enfocarse en el alcance del trabajo. El equipo mide el éxito en función de lo que se entrega y del tiempo que se tarda en hacerlo, lo que requiere una herramienta confiable que pueda funcionar con una variedad de otras herramientas. «Con GitLab, lanzamos cada dos semanas a producción. Es una necesidad comercial. Así es como queremos hacerlo. Es fácil para nosotros. Es poco estresante. Probamos las cosas correctamente, las dejamos madurar en los entornos de desarrollo y staging antes de que lleguen a producción», comentó Hernandez.
El equipo de ingeniería de Nebulaworks no es el único que utiliza GitLab. Para ayudar a mejorar la coordinación entre marketing y el grupo de ingeniería, el equipo de marketing de contenidos colabora en GitLab. La empresa tenía previsto crear contenido para la consultoría de ingeniería, y GitLab proporcionó una forma sencilla de trabajar en estrecha colaboración con el equipo de ingeniería para crear contenido de calidad. Ambos equipos utilizan los tickets y paneles de GitLab para comunicarse y el contenido se agrega al sitio web en solicitudes de fusión.
«Cuando decidimos invertir en marketing de contenidos, sabíamos que teníamos que encontrar una solución que permitiera que los equipos de marketing e ingeniería trabajaran juntos de manera fluida. Esto fue posible gracias a la simplicidad de las funcionalidades de GitLab», comentó Anne Lin, gerenta de Marketing y Marca. «El equipo de marketing adoptó rápidamente el flujo de trabajo del equipo de ingeniería mediante el seguimiento de tickets, los tableros Kanban y las solicitudes de fusión para colaborar en la producción de contenido. Al aprovechar el mismo flujo de trabajo, los dos equipos pudieron generar confianza y visibilidad en el trabajo del otro».
El uso de GitLab significa que los equipos pueden trabajar de forma asíncrona. Trabajar desde casa es opcional en Nebulaworks. Como la empresa ha adoptado el estilo de vida del trabajo desde casa, han podido colaborar fácilmente. «No perdimos el ritmo. Cómo colaboramos con nuestros clientes, cómo trabajamos con nuestros clientes, cómo trabajamos en proyectos, ese flujo de trabajo no ha cambiado», dijo Patrick Collins, vicepresidente de Ventas y Éxito del Cliente. «Ha sido un gran éxito tener este proceso en marcha, y nos ha permitido pasar de un gran grupo que venía a la oficina a trabajar a trabajar ahora de forma totalmente remota».
Toda la información y las personas involucradas en el estudio de caso son precisas en el momento de la publicación.