Klarx deixa de usar o GitHub Actions para obter builds 3x mais rápidos com o Semaphore
😔 Antes do Semaphore:
- ⛔️️ 30 minutos para obter feedback do CI
- ⛔️ Desenvolvedores presos esperando em longas filas durante horários de pico
- ⛔️ Builds falhando aleatoriamente
😄 Após adotar o Semaphore:
- ✅ 10 minutos para obter feedback ⬇️ 3x
- ✅ Desenvolvedores nunca esperam o CI iniciar, graças ao autoscaling de recursos
- ✅ Builds estáveis sem esforço da equipe de engenharia
Experimente o Semaphore
O desafio
A Klarx usava seus próprios runners para executar o GitHub Actions. No entanto, o tempo de implementação e manutenção aumentou à medida que a equipe e suas necessidades cresceram. A carga na infraestrutura de CI/CD da equipe varia ao longo do dia, com horários de pico quando todos os engenheiros tentam enviar para seus repositórios e momentos de tranquilidade durante os finais de semana. Isso exigia escalonamento manual para a infraestrutura de CI/CD.
“Desde a mudança para o Semaphore, nosso pipeline de CI tem sido estável e apresenta tempos de execução mais consistentes, nos permitindo detectar falhas e specs inconsistentes mais rapidamente.”

Amin Ben Slimen
Engenheiro de Software Sênior na Klarx
Como a empresa nem sempre tinha tempo para escalar os recursos manualmente, isso levava a:
✔️ Longo tempo de espera em filas durante horários de pico
✔️ Builds falhando aleatoriamente, exigindo reruns
“Desde que mudamos para o Semaphore, tivemos um pipeline de CI mais estável e pudemos focar no desenvolvimento de recursos.”

Amin Ben Slimen
Engenheiro de Software Sênior na Klarx
A solução
A Klarx procurava uma solução que escalasse de acordo com as necessidades da equipe, sem exigir esforço de implementação e manutenção. Eles sentiram a necessidade de mudar do GitHub Actions e consideraram o CircleCI e o TeamCity como opções. No entanto, escolheram o Semaphore por sua velocidade e facilidade de configuração.
“Estávamos procurando uma solução fácil de configurar, com mínimo acoplamento técnico e rápida por design. O Semaphore parecia satisfazer essas características, então implementamos uma POC no Semaphore”, diz Amin Ben Slimen.
“O Semaphore parecia satisfazer todas as características que buscávamos, como facilidade de configuração e velocidade.”.

Amin Ben Slimen
Engenheiro de Software Sênior na Klarx
Mudar de ferramenta pode parecer uma tarefa desafiadora. No entanto, a equipe de engenharia da Klarx descobriu que a migração para o Semaphore era relativamente tranquila. “A plataforma é projetada para exigir poucas mudanças no código e oferece uma caixa de ferramentas eficiente; migramos cerca de 60% do nosso fluxo de trabalho de CI para o Semaphore em duas semanas”, afirma Amin Ben Slimen.
Os resultados
Desde que migrou para o Semaphore, o pipeline de CI da Klarx tem sido estável e apresenta tempos de execução mais consistentes, permitindo que a equipe detecte falhas e specs inconsistentes mais rapidamente.
A equipe de engenharia da Klarx também considera recursos como cache e condições de execução em tarefas muito úteis para o seu monorepo. Finalmente, ambientes com uma ampla gama de dependências e versões disponíveis em questão de segundos (ex: Postgres, Elasticsearch, Node, Ruby) tornaram o design do pipeline de CI mais tranquilo e eficiente para a Klarx.

Após a mudança para o Semaphore, o fluxo completo de CI (compilação e teste de aplicativos monolíticos e front-end) agora leva de 10 a 15 minutos, em comparação com os 25 a 30 minutos que levava quando a equipe dependia do GitHub Actions para sua infraestrutura de CI.
Desde a migração para o Semaphore, a equipe de engenharia da Klarx tem um pipeline de CI mais estável, permitindo que eles se concentrem no mais importante: desenvolver recursos.
O processo de depuração também se tornou muito mais simples. A equipe considera extremamente útil a facilidade do Semaphore de acessar a VM/contêiner e investigar um teste com falha, reproduzindo as mesmas condições do erro.
“Depurar com o Semaphore tem sido um prazer.”

Amin Ben Slimen
Engenheiro de Software Sênior na Klarx
Com a capacidade do Semaphore de encaminhar uma porta para um navegador local, depurar configurações complexas de testes de ponta a ponta alcança um nível de simplicidade sem precedentes. A equipe de engenharia da Klarx também acha os Relatórios de Teste um recurso prático e útil. No geral, o Semaphore se revelou uma solução de CI/CD plug and play eficiente, que permite à equipe focar na entrega de novos recursos.
“O Semaphore é uma plataforma confiável e rápida para CI/CD com pouco acoplamento técnico. Isso dá à sua equipe a oportunidade de focar no seu negócio principal.”

Amin Ben Slimen
Engenheiro de Software Sênior na Klarx
A Klarx é uma startup sediada em Munique que opera uma plataforma digital para locação de equipamentos de construção e maquinário pesado. Como provedora de serviços completa e independente, a Klarx digitaliza todo o processo de locação para estações de aluguel e locatários.
Setor:
Construção
Tamanho da Empresa
51-100 funcionários
Equipe de Engenharia
14 pessoas
Stack
Ruby on Rails
Postgres
Elasticsearch
React
GraphQL
Resultados reais. Impacto real. 🎯📈