Modernização de sistemas legados
Evoluímos o sistema antigo por partes, em produção, sem o risco de uma reescrita do zero. Começa por um diagnóstico de 7 a 15 dias.
Modernização de legado, migração para a nuvem e redução de custo de infraestrutura. Por partes, em produção, sem a aposta de um big bang.
O sistema que ninguém ousa tocar, a migração adiada por medo de downtime e a conta de nuvem que cresce mais rápido que a receita costumam ser o mesmo problema. Nós o resolvemos do mesmo jeito: trocando um risco grande e irreversível por uma sequência de riscos pequenos e reversíveis.
Evoluímos o sistema antigo por partes, em produção, sem o risco de uma reescrita do zero. Começa por um diagnóstico de 7 a 15 dias.
On-premises para a nuvem, ou de uma nuvem para outra. Faseada, com reversão possível a cada etapa e o negócio de pé durante a travessia.
Onde a infraestrutura desperdiça dinheiro, quanto dá para recuperar e em que ordem. Parte da remuneração pode ser atrelada à economia.
Todo sistema que sustenta um negócio um dia fica antigo. Quem o escreveu seguiu em frente, a documentação envelheceu mais rápido que o código, e as regras que sustentam o negócio deixaram de estar escritas para viver na cabeça de poucas pessoas. Cada mudança passou a carregar risco, e a evolução passou a depender de quem ainda entende o sistema. No fim, ninguém mais ousa tocar no que mantém a empresa de pé.
O instinto manda reescrever tudo. Mas a reescrita total é a aposta mais cara da engenharia: longa, arriscada, abandonada no meio do caminho com frequência. Existe um caminho melhor, e ele começa por você entender com precisão o que tem em mãos.
O que vale salvar, o que pode esperar e por onde começar. Antes de qualquer linha reescrita, você decide com fatos.
Isolamos e modernizamos em produção, sem big bang e sem parar o negócio.
Você deixa de depender de quem escreveu o código original, inclusive de nós.
Três sistemas grandes e antigos, todos com “prazo de reescrita” marcado, de volta ao estado da arte. Sem big bang, sem parar o negócio.
Estimavam dois anos para reescrever do zero. Modernizamos em dois meses, sem reescrever: bibliotecas atualizadas, vulnerabilidades corrigidas, código modularizado, VMs trocadas por containers com autoescala, observabilidade no lugar dos logs em arquivo e mais de 80% de cobertura de testes.
Lento, cheio de bugs e integrações mal feitas. Já tinha resistido a várias reescritas: as regras de negócio eram específicas demais para jogar fora. Em três meses refatoramos o core, padronizamos e modularizamos os módulos principais e cobrimos tudo de testes, sem parar a operação.
Depois de uma fusão, precisava aguentar 4× mais requisições. Estava lento, com infra cada vez mais cara. Refatoramos o core, derrubamos o tempo de resposta, montamos o ambiente de dev e uma esteira de CI/CD madura e levamos para a nuvem: muito mais capacidade, infraestrutura mais de 3× mais barata.
Assim como essas três empresas, muitas outras chegaram com o veredito de “reescrever do zero”. Seus sistemas voltaram a ser modernos, rápidos, testados, fáceis de evoluir e mais baratos de operar, sem perder os anos de regra de negócio que ninguém poderia descartar. É isso que a modernização faseada entrega.
Antes de modernizar, migrar ou reescrever qualquer coisa, existe uma pergunta que custa caro responder errado. O diagnóstico responde a ela em dias.