UB
URBUS
Operational intelligence backend for public transit: real-time data ingestion, bus bunching detection and alerts.
Node.jsTypeScriptFastifyPrismaPostgreSQLZodnode-cronPinoPrometheusVitestSwagger/OpenAPIDocker ComposeFlutterDart
bunching flaggedfleet sync · real-time ingestion
Problem
Transit operators struggle to keep buses evenly spaced. When headways break down, buses bunch together, passengers wait longer, and service becomes unreliable.
Solution
URBUS ingests fleet data in real time, runs a headway and bunching engine, and triggers alerts so operators can act before service degrades.
My role
Founder & CTO. I lead the backend and technical direction for a 3-developer team (plus a sales lead), and contribute to the Flutter frontend.
Highlights
- Schema-validated API with rate limiting and auto-generated docs
- Scheduled processing jobs for continuous fleet ingestion
- Production-grade metrics (Prometheus) and structured logging (Pino)
- Containerized deployment with Docker Compose
Results
- Real-time bunching detection running against live fleet feeds
- Technical foundation built to scale across multiple transit operators