Setor: Transporte
Produtos da JetBrains usados: Qodana, IntelliJ IDEA
Tamanho da organização: Mais de 200 funcionários
Tamanho da equipe: 6 equipes, 60 desenvolvedores no total
Pilha de tecnologia: Java, Spring, Jenkins
Moovit é o criador do mais popular aplicativo de mobilidade. Os aplicativos para iOS, Android e Web da Moovit oferecem aos usuários uma experiência de mobilidade inteligente para chegar facilmente ao seu destino usando qualquer meio de transporte público ou compartilhado. Os usuários de transporte coletivo podem se beneficiar da bilhetagem móvel para planejar, pagar e usar serviços de transporte coletivo. Inaugurada em 2012, a Moovit agora atende a mais de 1,5 bilhão de usuários em mais de 3.500 cidades em 112 países, em 45 idiomas.
O transporte público é fundamental para empregos, educação, saúde e muito mais, mas seu sistema de navegação pode ser desafiador e estressante. A Moovit, empresa criadora do mais popular aplicativo de mobilidade, disponível para iOS, Android e Web, oferece aos usuários uma experiência de mobilidade inteligente para planejar e navegar facilmente até seu destino usando transporte público e compartilhado. A Moovit guiou mais de 1,5 bilhão de usuários em mais de 3.500 cidades em 112 países.
Com tantas pessoas dependendo de informações e orientações de trânsito, inclusive informações em tempo real, a estabilidade do sistema é crítica. A equipe de infraestrutura da Moovit é responsável por manter a estabilidade de todo o sistema da Moovit para projetos de B2C e B2B. A equipe enfrentava o grande desafio de identificar problemas que estavam chegando à produção e interrompendo os serviços da empresa. Uma de suas principais preocupações era detectar NullPointerExceptions
, que são causas comuns de interrupções e acredita-se que tenham desempenhado um papel no incidente do CrowdStrike.
Para reduzir os riscos às operações de serviço e manter a alta qualidade do código, a Moovit começou a procurar uma ferramenta de análise de código estático que atendesse aos seguintes critérios:
Atualmente, o Qodana é usado por seis equipes da Moovit, com um total de 60 desenvolvedores. Como o Qodana é baseado no mesmo mecanismo de análise do IntelliJ IDEA, os desenvolvedores da Moovit sincronizaram seus perfis de inspeção no IntelliJ IDEA e no Qodana.
O processo resultante envolve as seguintes etapas:
"A principal vantagem foi que não precisávamos predefinir uma lista de inspeções, pois o Qodana monitora uma ampla gama de problemas de alta gravidade. Simplesmente revisamos sua lista padrão de problemas críticos e removemos apenas aqueles que não eram relevantes para nossas necessidades."
— Amit Weinblum, líder da equipe de infraestrutura da Moovit
A equipe de infraestrutura relatou menos problemas de produção, especialmente aqueles que poderiam ter sido detectados durante o desenvolvimento, graças à detecção proativa e à resolução logo no início do processo.
"Ainda somos relativamente iniciantes com o Qodana, mas já houve dois casos importantes em que pensei: 'Eles salvaram minha equipe de trabalhar até tarde da noite'. Isso teve um impacto positivo no meu trabalho, pois agora tenho mais confiança de que seremos alertados sobre problemas críticos."
— Dor Rud, líder da equipe de back-end da Moovit
A Moovit valorizou a capacidade de criar suas próprias regras personalizadas que diferem das inspeções padrão do Qodana, personalizar a gravidade dos problemas e adicionar ou remover facilmente inspeções de seu perfil, o que permitiu monitorar as alterações de código que realmente importam para eles.
Os desenvolvedores gostaram da precisão da análise e da integração com o IntelliJ IDEA, o que lhes permitiu resolver os problemas mais rapidamente e com menos interrupções em seu workflow.
Outro fator importante foi o poder da marca JetBrains, que ajudou a convencer os desenvolvedores a adotar o Qodana como uma etapa adicional de análise de código. Eles confiavam nos resultados porque já eram fãs do IntelliJ IDEA e de outros produtos da JetBrains. Por fim, sua velocidade e confiabilidade aumentaram a percepção positiva da análise estática dentro da organização.
"Sinceramente, estávamos preocupados com a reação negativa que teríamos de enfrentar quando apresentamos o Qodana. Geralmente é muito difícil impor uma política da empresa aos desenvolvedores. Graças à boa reputação da JetBrains e ao fato de que o Qodana relata problemas realmente críticos, os desenvolvedores não estão ignorando o Qodana ou procurando soluções alternativas, mas corrigindo os problemas."
— Dor Rud, líder da equipe de back-end da Moovit
"Como qualquer ferramenta de análise de código, o Qodana acrescenta uma etapa adicional ao pipeline e torna o ciclo de desenvolvimento mais lento, mas é um inconveniente de curto prazo. A longo prazo, ele estabilizou nosso sistema de produção e permitiu que os desenvolvedores evitassem corrigir problemas tarde demais no pipeline. Estamos vivendo uma mudança de paradigma, em que as equipes de desenvolvimento seguem as políticas e economizam algumas noites sem dormir com o Qodana."
— Amit Weinblum, líder da equipe de infraestrutura da Moovit