[001] CASE STUDY · SaaS

SaaS de orquestación logística B2B

Cargo OS202424 semanas

Portada — SaaS de orquestación logística B2B
Información del proyecto
Cliente

Cargo OS

Año

2024

Duración

24 semanas

Servicios
ProductoWebModernización

El contexto

Cargo OS comenzó como un proyecto interno de una empresa transportista en Medellín. Con el tiempo se convirtió en un producto vendido a otras transportistas de la región, pero la base de código era un monolito PHP con una interfaz construida con jQuery en 2015. El crecimiento forzó decisiones técnicas costosas: el servidor caía bajo carga, los reportes tardaban minutos en generarse, y la interfaz era tan compleja que la curva de entrenamiento para nuevos operadores era de dos semanas.

La solución

La respuesta fue sí, con una estrategia de migración en cuatro fases que tomó seis meses. La clave fue no intentar reescribir todo desde cero —anti-patrón que ha matado docenas de productos— sino construir el nuevo sistema en paralelo y migrar módulo por módulo con feature flags.

Empezamos por el módulo de despacho, el más crítico y el más usado. Diseñamos la nueva interfaz con los operadores que la usaban cada día en la planta de Medellín, haciendo sesiones de usabilidad semanales durante ocho semanas. El resultado fue una reducción de acciones para registrar un despacho de 18 clicks a 6.

La arquitectura nueva usa Next.js para el frontend, con React Query para cache optimista que hace que la interfaz responda inmediatamente aunque la confirmación del backend tarde hasta 200ms. El backend fue migrado a Node.js con TypeScript, exponiendo APIs REST + WebSockets para actualizaciones en tiempo real del mapa de flota.

El mapa de flota en tiempo real fue el componente técnicamente más desafiante. Cargo OS tiene flotas de hasta 400 unidades y necesitábamos renderizar posiciones GPS con actualización cada 30 segundos sin degradar el rendimiento del browser.

La migración de datos del MySQL legacy al PostgreSQL nuevo se hizo con un pipeline de ETL que corría en paralelo durante seis semanas. El día del corte definitivo, el tiempo de inactividad fue de 4 minutos —un record para una migración de esta escala.

Screenshot 1 — SaaS de orquestación logística B2B

01 — Vista general

Screenshot 2 — SaaS de orquestación logística B2B

02 — Detalle

Screenshot 3 — SaaS de orquestación logística B2B

03 — Flujo

Equipo y tecnología

Equipo
  • Felipe Montoya· Tech Lead
  • Isabel Zuluaga· Product Designer
  • Camilo Ríos· Backend Engineer
  • Juliana Pérez· Frontend Engineer
Stack
  • Next.js
  • TypeScript
  • React Query
  • Node.js
  • PostgreSQL
  • WebSockets
  • Deck.gl
  • Supercluster

Resultados

Tiempo registro despacho

-67%

18 clicks → 6 clicks
Curva de entrenamiento

2 días

vs 2 semanas anterior
Uptime sistema

99.94%

primer trimestre post-migración

Siguiente paso

¿Construimos
el tuyo?

Iniciar conversaciónRespondemos en menos de 24h