Problem
How do you architect a platform that can handle tracked vehicles, impound devices, parking infrastructure, and inspection telemetry at the same time when each source has different payload shapes, update rates, and failure modes?
The system also had to respect agency boundaries. Different government consumers needed access to different streams, which meant the architecture had to encode authorization and isolation as part of the event model rather than bolt it on at the dashboard layer.
Approach
- Designed a protocol normalization layer so devices could speak their native transport while the processing backbone consumed a canonical event envelope.
- Implemented per-agency Kafka consumer groups to keep access boundaries explicit and operationally manageable.
- Used edge buffering on GSM-connected devices to preserve telemetry history through underground parking and low-coverage zones.
- Chose NestJS for orchestration to keep the domain layer strongly typed across multiple device models and service boundaries.
- Separated reporting reads from ingestion writes so dashboard traffic could not degrade message processing reliability.
Outcome
The result was a flexible backbone that could support more than 10,000 connected devices across multiple federal use cases while keeping ingestion and reporting responsibilities cleanly separated. It established a repeatable platform pattern instead of a single-purpose deployment.