Problema técnico

Un sistema de estacionamientos no se trata solo de guardar una reserva. Debe reflejar disponibilidad, evitar conflictos de horario, permitir consulta rápida desde móvil y entregar información útil para administración.

La decisión principal es separar responsabilidades: lo que valida una reserva no debería mezclarse con lo que mide ocupación o autentica usuarios.

Arquitectura propuesta

La entrada del sistema puede pasar por un API Gateway para centralizar rutas, seguridad y control de tráfico. Detrás, los servicios se organizan por dominio: reservas, disponibilidad, autenticación y telemetría.

PostgreSQL funciona bien para mantener trazabilidad de usuarios, zonas, espacios y reservas. Redis puede apoyar consultas de disponibilidad o estados temporales cuando la experiencia requiere respuesta rápida.

Lecciones aplicables

  • Los límites de dominio evitan que el backend crezca como una sola aplicación difícil de mantener.
  • La app móvil necesita respuestas simples, consistentes y preparadas para escenarios sin conexión perfecta.
  • La observabilidad debe diseñarse desde el inicio: logs, métricas y eventos hacen que el sistema sea operable.