Context
Managing a fleet of professional equipment means tracking three things in parallel: the hardware, the people or sites it is assigned to, and the contracts that carry it. Those three dimensions move at different rhythms, and it is their intersection that causes trouble: equipment is reassigned, a contract reaches its term, a tacit renewal fires.
The problem
When tracking is kept in separate files, discrepancies are inevitable.
- Tacit renewals that go unnoticed for lack of an early alert
- Equipment still being billed although it is no longer in use
- No consolidated view of real cost by site or department
- Two audiences to serve, internal teams and clients, with different scopes
The solution
A single asset register, linked to contracts and assignments, with alerts aligned on due dates.
- Asset register: hardware, status, assignment, history
- Contracts linked to the equipment they carry
- Timeline of upcoming due dates and renewals
- Alerts fired early enough to leave time to decide
- Cost indicators by site, department and category
- Separate access for internal teams and for clients
My role
Design of the model linking assets, contracts and assignments, development of the API and the interface, a two-audience permission system, alerts, exports and cloud deployment.
Constraints
- A given piece of equipment changes assignment over time: history has to be preserved
- Alerts have to precede the renewal date, not report it
- Two audiences on the same application, with watertight data scopes
- Exports usable directly by accounting
- Significant volume, with list views that have to stay fast
Outcome
A single register where assets, assignments and contracts are linked, and where due dates are known before they arrive.
- Renewals are anticipated rather than endured
- Cost by site and category becomes readable without reprocessing
- Each audience sees its own scope, on the same underlying data
Outcomes are described by the capability delivered. No commercial performance metric is claimed here: usage figures belong to the client, and I do not publish numbers I cannot substantiate.