Energy and device platforms fail in predictable ways: collectors grow business rules, billing becomes eventually inconsistent, and ops dashboards lie when queues back up.
The durable shape is event-driven ingestion, domain services for contracts and billing, and an explicit operations UI for humans who still have to act.
Observability is not optional when the physical world is the input.
Split ingest from commercial truth
Workers own ingestion reliability and backpressure. Billing services own invoices, adjustments, and audit.
If a collector can create money movements directly, you will someday replay telemetry and double-bill.
Choose data stores per shape
Hot telemetry and durable commercial records rarely want the same database assumptions. Redis/Rabbit for motion; relational systems for money; document stores where payloads are ragged.
Be explicit about what is reconstructible from events vs what is authoritative state.
Give ops a real surface
Field and back-office teams need device health, client context, and support workflows in one place — including mobile packaging when work leaves the desk.
Gateway and metrics belong in the first architecture review, not after the tenth service.
Takeaways
- Collectors are not billing systems.
- Message buses buy you scale — and force you to design idempotency.
- Ops UX is part of the platform, not a report export.