O instinto diante de um sistema legado é tentador: ‘reescrevemos do zero e pronto’. Na minha experiência, essa decisão muitas vezes custa o dobro do tempo e coloca o negócio em risco durante meses.
Modernização evolutiva em fases
Prefiro isolar o legado atrás de limites claros e substituir peças por valor comercial em cada etapa. Padrões como strangler fig, hexagonal e CQRS permitem que o antigo e o novo coexistam sem um big bang arriscado.
- Comece pela observabilidade: não é possível modernizar aquilo que não se mede.
- Ataque primeiro os pontos únicos de falha e gargalos.
- Introduza resiliência (disjuntores, degradação normal) antes do dimensionamento.
Fiz isso na Enterticket modernizando uma arquitetura legada voltada para microsserviços e serverless, e na RD Station unificando sete ferramentas em um único editor. Em ambos os casos, o negócio nunca parou de funcionar.




