A Conversica lidera a inovação em IA com a ajuda do GitLab Ultimate
Quer saber o que o GitLab Ultimate pode fazer pela sua equipe?
A equipe de engenharia da Conversica estava em busca de uma única ferramenta com ajuste de escala para CI/CD.
O GitLab Ultimate fornece aos desenvolvedores da Conversica os mais recentes recursos de CI/CD.
Liderando o mundo em IA
A Conversica é líder em inteligência artificial para empresas e a única fornecedora de software de engajamento de leads orientado por IA para empresas de marketing e vendas. Utilizada por mais de 1.500 empresas em todo o mundo, a Conversica fornece SaaS para que os usuários criem campanhas meticulosas para atrair e reter clientes.
O detrimento das ferramentas desconexas
A equipe de desenvolvimento da Conversica usava o TeamCity para CI/CD, o Quay.io para registro de imagens Docker e o GitHub para controle de versão. Isso gerou uma abordagem desconexa, em que as ferramentas foram até certo ponto consolidadas em torno do GitHub, mas não o suficiente para criar um ambiente controlado. A equipe de desenvolvimento estava descontente e tinha dificuldades para acessar as ferramentas com sucesso. "O TeamCity usa um tipo de configuração XML interna armazenada de maneira bizantina que não oferece transparência para os desenvolvedores", disse Rob Fulwell, gerente de engenharia da Conversica. "Eles a acessam apenas pela interface do usuário, que não é como os desenvolvedores gostam de trabalhar. Eles gostam de trabalhar em arquivos de texto."
O fluxo de trabalho desconexo era, em última análise, muito lento para as necessidades da empresa. "Estávamos sendo pressionados pelo pessoal de vendas e marketing para fornecer recursos mais rapidamente", disse Fulwell. "Antes, precisávamos nos concentrar na entrega, talvez em detrimento de acumular essa dívida técnica."
A equipe estava perdendo cada vez mais tempo solucionando problemas no pipeline, em vez de se concentrando em ações de diferenciação para o negócio. "Além disso, estávamos preocupados em conseguir implementar requisitos futuros de segurança e análise de licenças em nossos sistemas", disse Fulwell.
Criação de pequenos projetos de software
Depois que os especialistas no assunto realizaram uma pesquisa inicial, a Conversica decidiu implementar o GitLab de forma obrigatória em todas as equipes de engenharia e migrou com sucesso em três meses. Um dos requisitos da Conversica no processo de tomada de decisão era que a ferramenta selecionada fornecesse documentação clara para reduzir os problemas de migração. "Na verdade, garantimos que a documentação fosse uma das melhores. E, sem isso, acho que teríamos ficado na dúvida na hora de decidir migrar para outro conjunto de ferramentas", disse Fulwell.
A equipe de Fulwell atuou como consultora para as outras equipes de engenharia que estavam aprendendo a implementar seus pipelines no GitLab. "Fizemos muitas parcerias com desenvolvedores de outras equipes e, em conjunto com eles, montamos os pipelines", disse Fulwell. "Garantimos que estamos mantendo os nossos padrões para o que constitui um bom pipeline e que temos a progressão certa dos testes automatizados. Foi assim que conseguimos implementar em toda a equipe."
Eles escolheram o GitLab Ultimate para aproveitar ao máximo a ferramenta, sem limitações. "Usando a auto-hospedagem, o que significa que, se precisarmos criar algumas APIs internamente e montar uma infraestrutura para tornar isso possível, agora conseguimos fazer isso", disse Fulwell.
Com o GitHub, eles passaram por algumas "limitações" que deixavam os desenvolvedores esperando e incapazes de trabalhar. Os desenvolvedores tinham capacidade para aceitar mais chamados, mas não tinham o nível necessário para permitir esse nível de produção. Com o GitLab Ultimate, os desenvolvedores não ficam mais ociosos.
Interface de usuário moderna, pipelines transparentes, recursos aprimorados de ajuste de escala
Um benefício claro da migração para o GitLab é a capacidade de visualizar o pipeline de ponta a ponta. Recentemente, a Conversica precisou fazer uma reversão de emergência de algo que foi implantado em um fim de semana. No GitLab, eles conseguiram ver o commit específico implantado nesse ambiente. "A primeira vez que fiz isso, realmente me surpreendeu. Eu podia sair desse ambiente e, literalmente, clicar uma vez no head do principal de outro ambiente", disse Fulwell. Embora fosse possível fazer uma reversão de emergência no TeamCity e GitHub, não era com um clique. Eram necessárias várias etapas para encontrar o commit correto. "Então, percorrer o pipeline de ponta a ponta quando você está fazendo esse tipo de pesquisa por causa de um bug ou algo assim é muito fácil com o GitLab, o que é um grande benefício", disse ele.
A interface do usuário é mais limpa e mais fácil para os desenvolvedores entenderem do que o fluxo de trabalho das ferramentas anteriores. A integração de ponta a ponta com o controle de origem por meio de CI/CD para implantação fornece à equipe de desenvolvimento uma eficiência que o grupo anterior de ferramentas não conseguia fornecer. Agora ela pode se comunicar com mais eficiência com as equipes de engenharia, explorar os projetos uns dos outros e colaborar com sucesso. A implantação é simplificada e pode acontecer em um ritmo mais rápido porque há confiança na entrega do pipeline. A segurança agora acontece no nível do código — algo que a Conversica não tinha antes.
A Conversica está implantando do ECR para o EKS para a instância self-managed do GitLab Ultimate. A empresa ainda não usa uma integração com o Kubernetes, mas está explorando maneiras de fazer isso. "A migração para o GitLab parecia natural em termos de escala, confiabilidade e segurança", disse Fulwell. "Com certeza funcionou bem em termos de sermos capazes de implementar e colocar em prática os sistemas da AWS que já conhecíamos."
Todas as informações e pessoas mencionadas no estudo de caso refletem a realidade na data da publicação.