Systems · Engineering
Offline-first data on a factory floor
If the line stops because Wi-Fi blinked, the software failed the job.
The Smart ERP system sits on real operations: receiving, inventory, production batches, dispatch. Stations weigh, print QR labels, and write events. The network is not a given.
The product requirement was simple to say and hard to build: keep working locally, then catch up without double-counting a bag.
Local first, server later
A station writes to a local cache. The UI does not wait for the cloud to confirm a weigh-in. When the link returns, a sync process sends pending events to the API and the relational store.
Idempotency is the real feature
Retries are mandatory. Without an idempotency key, a reconnect storm creates two inventory rows for one physical bag. The event id is part of the data model, not an afterthought in the client.
The system is the data flow
Frontend operations, backend APIs, Postgres, and device integrations have to agree on what “this bag” means. That is systems work. The language is just the implementation layer.
Client internals stay off this page. The useful part is the shape: offline cache, queued sync, retries, and one write per real-world event.