Field-service app
Cross-platform app for engineers on site, working offline and syncing when back in signal. Job sheets, photos, signatures, and a back-office web view for the people scheduling the work.
- Client
- Regional maintenance contractor
- Year
- Role
- Lead engineer, with one designer
- Timeline
- 12 weeks
- Stack
- React Native, Expo, SQLite, Node
The brief
Forty engineers, most of them working in plant rooms and basements with no signal, filling in paper job sheets that were photographed and emailed to the office at the end of the day. Invoicing ran two weeks behind the work because of it.
The app had to work with no connection at all, survive a phone dying mid-job, and be usable by people wearing gloves who did not want to learn new software.
What I built
One codebase shipped to both stores, with a local database as the source of truth and a sync layer that reconciles when the phone finds signal. The office got a plain web view of the same data.
- Offline-first job list, with edits queued and replayed in order on reconnect.
- Job sheets with parts used, time on site, photos, and a customer signature.
- Conflict handling for the two-engineers-one-job case, resolved in the office rather than on site.
- Large touch targets, high-contrast mode, and no gestures that need two hands.
- App Store and Play Store submission, including the review back-and-forth.
Two weeks of the twelve were spent riding along with engineers. Most of what changed after that came from watching, not from the requirements document.
Outcome
Paper gone within a month of launch. Invoices went out the same day the job closed, and the office stopped chasing photos of forms.
Both stores, one codebase, and a client who has since asked for a scheduling module.