A Simply Business reduziu o tempo de build do CI de 30 minutos para 12 minutos após migrar para servidores F1
Experimente o Semaphore
Como o desempenho melhorou após a migração para os servidores F1?
Originalmente, acho que estávamos usando os servidores E1, que são mais lentos. Estávamos passando por um período de grande crescimento e começamos a atingir os limites desses servidores e do plano que havíamos contratado. Basicamente, tínhamos um número limitado de servidores, e, quando atingíamos o limite máximo, uma fila se formava. Começamos a ver filas realmente longas. Às vezes, o CI/CD demorava mais de uma hora para ser executado, o que obviamente nos atrasava.
Começamos a conversar com o Semaphore sobre a migração para os servidores F1 e a transição para um plano sob demanda, mas precisávamos da aprovação do departamento financeiro. Felizmente, o Semaphore foi incrível e trabalhou conosco para entender exatamente o que precisávamos. Uma das coisas que eles fizeram foi nos oferecer um período de teste com os servidores F1, que eram muito, muito mais rápidos. Durante o período de teste, percebemos que o tempo de build do CI foi reduzido quase pela metade, o que foi impressionante. Acho que antes nossos tempos de build ficavam em torno de 24, 25, até 30 minutos. Isso foi reduzido para cerca de 12 minutos. Foi impressionante o quão rápido esses servidores eram e os efeitos que vimos imediatamente. Levamos esses resultados ao nosso departamento financeiro para justificar a mudança, o que foi decisivo.
Com esses tempos de build mais rápidos e sem filas, tudo mudou. Passamos a poder enviar o código, iniciar um build, e ele começava em questão de segundos, terminando em cerca de 10 minutos. Antes, esperávamos uma hora ou até mais. Agora, esperamos apenas de 10 a 12 minutos no máximo. Com isso, se houver qualquer problema, podemos corrigi-lo rapidamente, mantendo o fluxo de trabalho. Essa resposta rápida nos ajuda a trabalhar com mais agilidade, evitando interrupções e trocas de contexto, o que nos permite realmente focar e concluir nossas tarefas.
Como a mudança para o plano sob demanda afetou seus custos?
Sim, é mais caro migrar para o plano sob demanda. No entanto, a grande vantagem é que o Semaphore oferece ferramentas integradas que ajudam a monitorar os custos, permitindo prever aumentos. Há uma página de faturamento onde é possível acompanhar quanto está sendo cobrado ao longo do tempo. Também podemos identificar quais projetos estão apresentando picos de custo e, com isso, analisar: “Esses picos são justificáveis? Existem ajustes que podemos fazer para torná-los mais eficientes?” O bom é que conseguimos monitorar isso em tempo real e garantir que estamos respeitando o orçamento definido.
Quais funcionalidades do Semaphore você considera mais úteis?
Uma das funcionalidades que me impressionou foi o recurso de testes instáveis (flaky tests). Esse recurso tem sido extremamente útil porque, como mencionei antes, passamos por um período de crescimento massivo, o que resultou em um envio rápido de código. Embora estivéssemos escrevendo testes, alguns deles apresentavam comportamento instável de forma esporádica, tornando difícil identificar o problema. Com o recurso de testes instáveis, ficou muito mais fácil localizar esses testes, já que tudo é registrado e exibido automaticamente. Com essas informações, conseguimos analisar os testes problemáticos, corrigir as falhas, torná-los mais robustos e reduzir significativamente o número de testes instáveis.
Outra coisa que gosto muito no Semaphore é que ele centraliza todos os builds em um único lugar. Consigo ver todos os builds que estou executando no momento, enquanto em plataformas como o GitHub, por exemplo, as visualizações são baseadas em projetos, o que obriga a realizar buscas constantes. No Semaphore, posso simplesmente acessar uma visão geral de tudo o que está sendo construído e no que estou trabalhando, o que facilita muito. Adoro o fato de que o Semaphore é desenvolvido com foco no desenvolvedor, pensando em funcionalidades que realmente são úteis, o que é um grande diferencial.
Outro recurso que gostei muito foi a ajuda do Semaphore para otimizar nossa configuração, colocando a etapa de cache no início do pipeline. Isso permite que todas as dependências sejam atualizadas no início, e os jobs seguintes possam usar esse cache.
O fato de podermos personalizar o funcionamento do nosso CI, como por exemplo, configurar para que ele execute apenas quando houver um pull request (PR), nos permite reduzir os custos em cerca de 20%. Isso acontece porque configuramos alguns aplicativos para rodar apenas em caso de PR, enquanto outros são executados sob demanda após um commit. Ter essa personalização como uma funcionalidade fácil de ligar e desligar é realmente muito conveniente.
Como sua rotina de trabalho melhorou?
Houve uma grande melhoria na minha rotina diária. Agora, sei que, quando faço um deploy, meu CI será concluído em cerca de 10 minutos. Isso me dá liberdade e confiança para clicar no botão de merge sempre que estiver pronta, sem me preocupar em ter que “ficar de babá” de um deploy por horas, esperando o CI ser concluído. Só isso já é uma grande vantagem.
O que você acha do suporte ao cliente do Semaphore?
O suporte ao cliente é fantástico. Temos um canal dedicado no Slack que nos permite nos comunicar diretamente com a equipe do Semaphore. Quando enfrentamos um problema, podemos entrar em contato e receber uma resposta quase imediata. O bom é que não há atrasos no vai e vem da comunicação. Apresentamos o problema, eles fazem perguntas para entender melhor a situação e, logo em seguida, analisam o caso e nos ajudam a resolver o problema rapidamente.
Por que você recomendaria o Semaphore a outras pessoas?
A equipe do Semaphore está sempre disposta a colaborar e trabalhar lado a lado para ajudar a identificar o que você precisa e quais serviços podem apoiar você e seus desenvolvedores. Eles são muito focados no cliente e se adaptam às circunstâncias específicas de cada equipe, ajudando a encontrar soluções que realmente fazem a diferença.

A Simply Business é uma corretora de seguros empresariais que oferece cotações de seguros personalizadas para seus clientes.
Setor
Finanças, Seguros
Sede
Europa, Oriente Médio e África (EMEA)
Stack
JavaScript
Ruby on Rails
React
Resultados reais. Impacto real. 🎯📈