Saltar al contenido
Volver a casos

Backend de banda transportadora de bodega

Rol
Desarrollador de software
Periodo
Ago 2021 a May 2024
Organización
Atlanticsoft

Contexto

En Atlanticsoft trabajé para un cliente de logística, cuyo nombre se reserva. Su bodega usa una banda transportadora automatizada de clasificación, gestionada por un sistema de gestión de bodegas (WMS), por donde avanzan paquetes físicos.

Problema

La banda no espera: mientras el backend decide, el paquete sigue avanzando. Si la respuesta llega tarde, el sistema y la banda se desincronizan. El requisito era responder en menos de 1 segundo.

Aparte, las automatizaciones de pedidos corrían como extensiones de Chrome y producían cancelaciones de pedidos que había que reducir.

Mi rol

Desarrollador de software. Construí el backend crítico de la banda, migré las automatizaciones de extensiones de Chrome a clústeres de Selenium en Docker sobre Azure y entregué las interfaces de control de bodega en Bubble, integradas con el backend.

Decisiones clave

  1. Un backend diseñado para responder en menos de 1 segundo

    Cada respuesta tardía desincroniza un paquete físico, así que el tiempo de respuesta era un requisito de funcionamiento y no una métrica de rendimiento deseable.

  2. Clústeres de Selenium en Docker sobre Azure en lugar de extensiones de Chrome

    Un clúster en contenedores se replica, se reinicia y se vigila de forma centralizada, algo que las extensiones de Chrome no permiten. Tras la migración, las cancelaciones de pedidos bajaron de forma notable.

  3. Interfaces de control en Bubble integradas con el backend

    Dieron a la operación de la bodega pantallas de control sin construir un frontend a medida, conectadas al mismo backend.

Qué lo hacía difícil

El software tiene que ir al ritmo de objetos físicos en movimiento: no hay margen para una respuesta lenta y un fallo se nota en la bodega, no solo en un registro. Además, migrar las automatizaciones de Chrome a Selenium en contenedores implicaba cambiar la base de procesos que ya estaban en uso.

Resultado

El backend mantuvo tiempos de respuesta menores a 1 segundo, y con eso los paquetes físicos y el sistema siguieron sincronizados. La migración a clústeres de Selenium en Docker sobre Azure redujo de forma notable las cancelaciones de pedidos, y las interfaces en Bubble dieron control de la bodega sobre el mismo backend.

Stack

  • Selenium
  • Docker
  • Azure
  • Bubble
  • WMS

Cliente y detalles internos reservados por confidencialidad.

¿Buscas a alguien para algo así?