- Client
- IoT product company (under NDA)
- Devices
- Sensor nodes and camera units
- Built
- Ingestion, storage, dashboards, video streaming
- Bonus
- Firmware and server designed together
The problem
The client's devices worked on the bench, but the data went to a quick prototype script on a single server. Messages were lost when the server restarted, video only worked on the office network, and nobody could see what the fleet was doing.
How I solved it
Device connectivity
A secure MQTT broker with per-device credentials, so every device authenticates and can be revoked individually.
Data pipeline
Sensor data flows into a time-series database, with retention rules so storage costs stay predictable.
Live video
Camera units stream to a media server that delivers low-latency video to browsers and recordings to storage.
Dashboards and alerts
Live dashboards for the fleet, and alerts when a device goes offline or a reading goes out of range.
Designed with the firmware
Because I also worked on the firmware, the message formats, reconnection behaviour and buffering on both sides were designed together.
What the client got
Results
- A backend that scales to around a thousand devices.
- No lost messages when servers or networks restart.
- Live video from anywhere, not just the office.
- Dashboards and alerts the whole team can use.