Skip to content
All case studies

Case study

Offline-first sync for field technicians on poor networks

Designed a SQLite + AsyncStorage sync layer with custom retry queues and exponential backoff, lifting sync success in low-connectivity areas from ~30% to ~80%.

Nanosoft Engineers Pvt Ltd · React Native Developer · May 2023 – Aug 2025

  • React Native
  • TypeScript
  • Redux Toolkit
  • SQLite
  • AsyncStorage
Sync success in low-connectivity areas
sync success in low-connectivity areas rose from about 30% to about 80%
Offline-first apps
4+
Field technicians
2,000+

A suite of 4+ production React Native apps used by 2,000+ field technicians, often working in low-connectivity areas.

Sync success in low-connectivity areas

The challenge

Field technicians work in low-connectivity areas, where only about 30% of syncs succeeded. The apps had to keep working offline and reliably catch up whenever a connection returned.

The approach

  1. Store data on the device first

    Designed an offline-first architecture on local storage, using SQLite and AsyncStorage.

  2. Retry with exponential backoff

    Built custom retry queues with exponential backoff so that failed syncs are retried.

  3. Manage state across the suite

    Used Redux Toolkit to manage state across the app suite.

The outcome

  • Sync success in low-connectivity areas rose from ~30% to ~80%.
  • 4+ production apps in use by 2,000+ field technicians.

Alongside the sync work

  • −60% image payloads, through automated media compression
  • −30% UI latency, by refactoring legacy components
  • 15+ Android and iOS releases through App Store and Play Store review cycles, including encrypted local storage and compliance checks