Caso de estudio
Modernizar el sistema detrás de los torniquetes de 27 estaciones de metro
Reconstruir un núcleo legado frágil para la red de transporte de Medellín — sin detenerla
- Cliente
- Sofka Technologies / Metro de Medellín
- Rol
- Líder Analista de Desarrollo de Software
- Período
- Oct 2019 – Dic 2021
Cada persona que usa el metro de Medellín pasa por un torniquete validado por un solo sistema. Cuando asumí como líder, ese sistema era tan frágil que cualquier cambio arriesgaba tumbar el recaudo en toda la red — las 27 estaciones.
Impacto de un vistazo
- Estaciones con el nuevo sistema
- 27
- De la red de torniquetes modernizada
- 100%
- Caídas de red durante el despliegue
- 0
El reto
La aplicación legada había crecido durante años sin pruebas, sin documentación y sin una ruta segura de despliegue. Los equipos habían dejado de tocarla: el costo de un cambio fallido era que la red de transporte de la ciudad rechazara pasajeros en las puertas.
Al mismo tiempo, el metro estaba instalando nuevo hardware de lectoras de tarjetas que el sistema viejo simplemente no podía integrar. Quedarse quietos ya no era una opción.
Qué hice
Lideré una re-arquitectura desde cero de la aplicación, separando las responsabilidades del monolito en servicios bien definidos con Java, Spring Boot y Quarkus, sobre MySQL y MongoDB.
La nueva arquitectura volvió aburridos los despliegues: por primera vez en años los cambios podían salir de forma segura, repetible y sin riesgo para toda la red.
Trabajé directamente con los fabricantes de las lectoras para configurar, probar e integrar el nuevo hardware de torniquetes en las 27 estaciones, e implementé la lógica de validación de tarjetas en tiempo real contra las APIs del hardware.
Como líder, dirigí los code reviews, definí la dirección técnica y supervisé las entregas del equipo de desarrollo durante todo el proyecto.
Resultados
- Despliegues seguros y repetibles por primera vez en años en un sistema crítico para la ciudad
- Nuevo hardware de torniquetes integrado en las 27 estaciones
- Validación de tarjetas en tiempo real contra las APIs del hardware
- Cero caídas de toda la red durante la modernización
Stack tecnológico
- Java
- Spring Boot
- Quarkus
- MySQL
- MongoDB
- Hardware APIs