Case study · Fleet operators
Every vehicle on the map, every fleet in its own world
A telematics company sold tracking hardware and needed software worth a monthly subscription. This is how we built a SaaS platform that takes in millions of vehicle positions a day and gives each fleet a live map, alerts and reports that belong to it alone.
Project overview
A high-volume, multi-tenant data platform.
- Industry
- Fleet operators
- Client
- Confidential
- Solution
- Telematics SaaS
- Platform
- React and .NET on Azure
- Timeline
- 30–40 weeks
- Team
- 7 people
- Volume
- Millions of positions a day
- Billing
- Per vehicle, per month
- Integration
- Tracking devices and fuel cards
Expected business outcomes
What the client set out to achieve
The platform is judged on freshness and reliability, and on what fleets save by using it.
-
Under 10 seconds
From a vehicle moving to the map updating
Positions are processed as a stream, not in batches.
Target at the expected number of vehicles
-
99.9%
Platform availability
Fleets plan their day from the map.
Target; measured monthly
-
8–15%
Lower fuel cost for fleets using driver scores
Idling, speeding and harsh driving reported per driver.
Target range reported by fleets; depends on how managers act on the scores
Business challenges
Where the client started
Good hardware, sold with software customers tolerated.
Software
A licensed third-party portal the client could not change.
Data
Positions refreshed every few minutes.
Customers
Fleets asking for reports the portal could not produce.
Margin
Licence fees taking a large share of each subscription.
Growth
Every new customer made the old portal slower.
Proposed solution
What the platform covers
A data pipeline first, with the product built on top of it.
-
Device data pipeline
Positions and events from several device types, validated and stored as they arrive.
-
Live map
Vehicles, routes and geofences, updating in seconds.
-
Alerts
Speeding, idling, unauthorised use and geofence alerts.
-
Driver and vehicle reports
Trips, mileage, driver scores and maintenance due.
-
Tenant isolation
Each fleet's data separated and access controlled by role.
-
Per-vehicle billing
Subscriptions that follow the number of active vehicles.
Project requirements
What the client asked us for
The request was to own the software. The engineering problem was volume: every vehicle reports every few seconds, and the map has to keep up for every fleet at once.
We built and load-tested the data pipeline before any screen, because a telematics product with a slow map has no product.
What the project had to deliver
- 01A live map that stays live
- 02Reports fleets actually ask for
- 03Each fleet's data kept separate
- 04No licence fee per vehicle
Key challenges & considerations
What made it harder, and what we did
-
Several device types with different data formats
What we did
Each device type was given its own adapter that turned its messages into one common format.
-
Vehicles that drop out of coverage and report late
What we did
Late and out-of-order positions were accepted and placed correctly in the trip history.
-
Existing customers to move without a gap in their history
What we did
Existing fleets were moved with their history, and the old and new systems ran side by side until the figures matched.
-
Costs that must stay low per vehicle
What we did
Storage and processing were sized from measured volume, and the running cost was tracked per vehicle.
What we watched for
- Load test the pipeline before building screens
- Handle late and out-of-order data
- Isolate tenants in the data layer
- Track cost per vehicle from the start
Development process
Pipeline, then map, then migration
Each stage was proved at full volume before the next began.
-
Architecture
Data volumes modelled, and the pipeline designed and costed.
-
Data pipeline
Device data taken in, validated and stored, then load-tested.
-
Live map and alerts
Built on the stream, tested with real vehicles.
-
Reports and billing
Trip, driver and maintenance reports; per-vehicle subscriptions.
-
Migration
Existing fleets moved with their history.
-
Operate
Monitoring, alerting and capacity planning handed over.
Technology stack
Built for a stream of positions
Managed Azure services, sized from measured volume.
Front end
- React
- TypeScript
- Live map
Data
- Azure IoT Hub
- Stream processing
- Time-series storage
Back end
- .NET
- Azure SQL
- Azure
Platform
- Load tests
- CI/CD
- Monitoring and alerts
- Cost tracking per tenant
Quality assurance & deployment
Tested as a product many customers share
A SaaS product is one codebase serving every customer, so a defect reaches all of them at once. Tenant isolation, billing and upgrades were tested as deliberately as the features.
- Automated unit and API tests, run on every change
- Tenant isolation tests: one customer can never see another's data
- Billing, plan and permission scenarios tested end to end
- Code review by a second engineer before anything was merged
- Load tests at the expected number of tenants and users
Deployment
- 01MigrationExisting fleets moved with their history.
- 02OperateMonitoring, alerting and capacity planning handed over.
- 03Releases without downtimeUpdates shipped behind feature flags, with database changes that can be rolled back.
- 04Monitoring and warrantyUptime, errors and usage per tenant monitored from day one, and six months of free bug fixing.
Final deliverables
Software worth the subscription
Fleet managers now watch vehicles move in near real time and get the reports they used to ask for. Each fleet sees only its own vehicles.
The client owns its platform and its roadmap, and the cost of running it is known per vehicle.
- A map that updates in seconds
- Alerts and driver scores
- History migrated for existing fleets
- Running cost known per vehicle
Handed over to the client
- 01Production SaaS platformMulti-tenant, deployed and monitored
- 02Source codeIn a repository the client can access
- 03Billing and admin consolePlans, tenants and permissions
- 04Test suite and pipelineIncluding tenant isolation tests
- 05Six-month warrantyFree bug fixing after delivery
Success metrics
How success is measured
| Measure | Outcome | How it is measured |
|---|---|---|
| From a vehicle moving to the map updating | Under 10 seconds | Target at the expected number of vehicles |
| Platform availability | 99.9% | Target; measured monthly |
| Lower fuel cost for fleets using driver scores | 8–15% | Target range reported by fleets; depends on how managers act on the scores |
Verified reviews
What clients say about our SaaS development work
Verified reviews from our clients on the same kind of work, published on Clutch.
-
Web Development
Custom Web Development for a Software Solutions Company
We can rely on them to handle almost any task with confidence, as they consistently deliver good results.
Verified review on Clutch (Casper Hougaard Jensen, opens in a new tab)
Casper Hougaard Jensen
CEO & Co-Founder, Iterator IT Jul 2021 – Sep 2022
-
Web Development
Web & Mobile App Development for a Software Development Company
They efficiently organized tasks and deliverables while promptly addressing questions.
Verified review on Clutch (Damien Retzinger, opens in a new tab)
Damien Retzinger
Founder, Graycore Jun 2021 – Feb 2023
-
Web Development
Website Development for a Software Engineering Company
They have a broad understanding of different technologies.
Eugene Bosikov CEO, Ezibeline LLC Mar 2022 – Ongoing Verified review on Clutch (Eugene Bosikov, opens in a new tab)
Free discovery call
Have an idea? Let's turn it into AI-powered software.
Book a free discovery call with our experts. Share your idea and we will help you shape the scope, timeline and budget, under NDA.
- Free consultation
- NDA before we talk
- Transparent estimate




