Conversica lidera la innovación en IA con la ayuda de GitLab Ultimate
¿Quiere ver lo que GitLab Ultimate puede hacer por su equipo?
El equipo de ingeniería de Conversica buscaba una herramienta única escalable para CI/CD.
GitLab Ultimate proporciona a los desarrolladores de Conversica lo último en funcionalidades de CI/CD.
Líder mundial en inteligencia artificial
Conversica es líder en inteligencia artificial para empresas y el único proveedor de software de captación de clientes potenciales basado en IA para organizaciones de marketing y ventas. Conversica, utilizada por más de 1500 empresas de todo el mundo, ofrece SaaS para que los usuarios elaboren cuidadosamente campañas de captación y fidelización de clientes.
El detrimento de las herramientas inconexas
El equipo de desarrollo de Conversica utilizaba TeamCity para la CI/CD, Quay.io para el registro de imágenes de Docker y GitHub para el control de fuentes. Esto creó un enfoque improvisado, donde las herramientas se consolidaron un poco en torno a GitHub, pero no lo suficiente como para ser un entorno controlado. El equipo de desarrollo estaba descontento y tenía dificultades para acceder a las herramientas. «En TeamCity, se trata de una especie de configuración interna en XML que TeamCity almacena de forma compleja y poco transparente para los desarrolladores», dijo Rob Fulwell, gerente de Ingeniería de Conversica. «Acceden únicamente a través de la interfaz de usuario, que no es la forma en que les gusta trabajar a los desarrolladores. Prefieren trabajar en archivos de texto».
En última instancia, el flujo de trabajo inconexo era demasiado lento para sus necesidades comerciales. «La gente de ventas y marketing nos presionaba para que ofreciéramos funcionalidades más rápidamente», dijo Fulwell. «Antes, teníamos que centrarnos en la entrega, tal vez en detrimento de acumular esta deuda técnica».
El equipo perdía cada vez más tiempo solucionando problemas en los pipelines en lugar de centrarse en acciones diferenciadoras para el negocio. «Además, nos preocupaba poder implantar futuros requisitos en materia de seguridad y el análisis de licencias en nuestros sistemas», comenta Fulwell.
Creación de pequeños proyectos de software
Después de que los expertos en la materia llevaran a cabo una investigación inicial, Conversica decidió exigir GitLab a todos los equipos de ingeniería y realizó la migración con éxito en tres meses. Uno de los requisitos de Conversica en el proceso de toma de decisiones era que la herramienta seleccionada proporcionara documentación clara para aliviar los problemas de migración. «De hecho, nos aseguramos de que la documentación fuera de las mejores. Y sin eso, creo que habríamos dudado mucho a la hora de tomar la decisión de pasar a otro conjunto de herramientas», afirmó Fulwell.
El equipo de Fulwell actuó como consultor para los demás equipos de ingeniería mientras aprendían a implementar sus pipelines en GitLab. «Colaboramos mucho con desarrolladores de otros equipos y, juntos, preparamos los pipelines», comenta Fulwell. «Nos aseguramos de mantener los estándares que tenemos para lo que conforma un buen pipeline y luego tener la progresión adecuada de pruebas automatizadas. Así es como logramos extenderlo a todo el equipo».
Eligieron GitLab Ultimate para aprovechar al máximo la herramienta sin limitaciones. «Con el autoalojamiento, que, en caso de lo que necesitemos, nos permite crear algunas API internamente y poner en marcha la infraestructura hacerlo posible, ahora podemos hacerlo», dijo Fulwell.
Con GitHub, habían sufrido un «estrangulamiento» que tuvo a los desarrolladores esperando y sin poder trabajar. Los desarrolladores eran capaces de aceptar más llamadas, pero antes no tenían el nivel necesario para permitir ese nivel de producción. Con GitLab Ultimate, los desarrolladores ya no están de brazos cruzados.
Interfaz de usuario moderna, pipelines transparentes y mayor capacidad de ampliación
Un beneficio claro de pasar a GitLab es la capacidad de visualizar el pipeline de extremo a extremo. Conversica recientemente tuvo que hacer una reversión de emergencia para algo que se implementó durante un fin de semana. En GitLab, pudieron ver la confirmación específica que se implementó en ese entorno. «La primera vez que lo hice, me dejó pasmado. Podía salir de este entorno y, literalmente, hacer clic una vez para ir del head de master a otro entorno», dijo Fulwell. Si bien era posible hacer una reversión de emergencia de TeamCity y GitHub, no era con un solo clic. Se requerían varios pasos para encontrar la confirmación correcta. «Recorrer el pipeline de extremo a extremo cuando uno está haciendo ese tipo de investigación para un error, o lo que sea, es muy sencillo con GitLab, y esto representa un gran beneficio», afirma.
La interfaz de usuario es más limpia y fácil de entender para los desarrolladores que su flujo de trabajo de herramientas anterior. La integración de extremo a extremo con control de origen a través de CI/CD para la implementación proporciona una eficiencia para el equipo de desarrollo que el grupo de herramientas anterior no podía proporcionar. Ahora pueden comunicarse de manera más eficiente entre los equipos de ingeniería, explorar los proyectos de los demás y colaborar con éxito. La implementación se simplifica y puede realizarse a un ritmo más rápido porque hay confianza en la entrega del pipeline. La seguridad se produce ahora a nivel de código, algo que Conversica no tenía anteriormente.
Conversica se está implementando de ECR a EKS hacia la instancia Self-Managed de GitLab Ultimate. La empresa aún no utiliza una integración con Kubernetes, pero está explorando formas de lograrlo. «El paso a GitLab nos pareció natural en términos de escala, confiabilidad y seguridad», dijo Fulwell. «Es algo que funcionó muy bien, ya que fuimos capaces de implementarlo correctamente en los sistemas AWS que ya conocíamos».
Toda la información y las personas involucradas en el estudio de caso son precisas en el momento de la publicación.