Mobile System Design: Sync, Conflicts, and the Art of Lying to Your Users

Published on 07.05.2026

GENERAL

Conflict Resolution Strategies in Mobile Apps

TLDR: When users edit data offline on multiple devices simultaneously, conflicts arise. Mobile systems resolve these with last-write-wins, versioning, or CRDTs, each carrying real tradeoffs around data loss and implementation complexity.

Mobile System Design Concepts


Delta Sync: Only Sync What Changed

TLDR: Delta sync sends only new or changed records since the last sync, using server-issued tokens to track state, dramatically reducing bandwidth and battery usage compared to full dataset downloads.

Mobile System Design Concepts


Eventual Consistency: Accepting Temporary Truth

TLDR: Mobile apps embrace eventual consistency by updating the local UI immediately while server sync happens in the background, accepting that different devices may temporarily show different data.

Mobile System Design Concepts


Background Sync and Retry Queues

TLDR: When network requests fail, a retry queue stores the failed operation locally and replays it when connectivity returns, using platform tools like WorkManager on Android and BGTaskScheduler on iOS.

WorkManager on Android


Optimistic UI Updates: Lying Confidently to the User

TLDR: Optimistic UI assumes a network request will succeed and updates the interface immediately, rolling back only if the server rejects the operation, making apps feel faster without sacrificing data accuracy.

Mobile System Design Concepts