El instinto ante un sistema legacy es tentador: ‘lo reescribimos desde cero y ya está’. En mi experiencia, esa decisión suele costar el doble de tiempo y pone en riesgo el negocio durante meses.

Modernización evolutiva por fases

Prefiero aislar el legacy detrás de límites claros e ir reemplazando piezas con valor de negocio en cada paso. Patrones como strangler fig, hexagonal y CQRS permiten convivir lo viejo y lo nuevo sin un big-bang arriesgado.

  • Empieza por observabilidad: no puedes modernizar lo que no mides.
  • Ataca primero los puntos únicos de fallo y los cuellos de botella.
  • Introduce resiliencia (circuit breakers, degradación elegante) antes de escalar.

Lo hice en Enterticket modernizando una arquitectura legacy hacia microservicios y serverless, y en RD Station unificando siete herramientas en un único editor. En ambos casos, el negocio nunca dejó de funcionar.

Paulo Bischof
Paulo Bischof
CTO · Product Manager · Software Developer
Hablemos