Sync inspections from offline field teams
Reconcile conflicting edits and large photo uploads without losing submitted inspections.
Backend and product engineers designing software behavior.
Your approach: Use diagrams, tables or prose for customer contracts, state transitions and data ownership; include APIs only to the depth the question requests.
The problem
Design an offline-capable field-inspection service. Inspectors edit a checklist and attach photos on mobile; supervisors can correct the same inspection in the web app. Define which conflicts are safe to merge and which need a human decision.
- 12,000 inspectors each complete up to 20 inspections/day with eight 3 MB photos per inspection.
- Devices can remain offline for 48 hours and may have unreliable clocks.
- After a supervisor accepts an inspection, historical signed-off content must remain auditable even if a correction is requested.
Work within these constraints
Declare the supported offline duration, including queued writes and retained sync history.
Required target: ≥ 48 hours
Corrections must not silently replace accepted evidence.
Do not silently discard conflicting checklist values based only on device timestamps.
An interrupted upload must not require replaying every photo or expose another inspection’s files.
What to deliver
Sync protocol
Define client operations, server acknowledgements, cursors, retries and tombstone retention.
Conflict examples
Work through same-field edits, attachment additions and a correction after sign-off.
Data and access
Describe revision history, authorization and staged/resumable photo attachment.
Capacity and recovery
Calculate daily photo volume and an offline reconnect burst; state quotas and recovery behavior.