Surovi Agro Nexus+
An offline-first Flutter field-force management app for agricultural field officers — logging farmer visits, taking orders, and filing collection reports from villages where connectivity is a maybe, not a given.
Overview
Surovi Agro Nexus+ is an offline-first field-force management app built for agricultural field officers who spend most of their working day outside of signal range. It solves a specific, unglamorous problem: officers need to log farmer visits, take customer orders, and submit collection reports from villages where connectivity is a maybe — not a given — and none of that data can afford to be lost while they wait to sync.
That constraint shapes almost every engineering decision in the app. Every write happens to a local database first; the network is treated as an eventually-available upload channel, never a dependency for getting work done.
I built the app as a freelance engagement for Surovi Group, an agricultural conglomerate in Bangladesh whose field officers cover territory well beyond reliable network coverage.
The Problem
Surovi's field officers needed a single tool to run their day: visit farmers, capture leads, take orders, and file collection reports — all in areas where a mobile network signal is inconsistent at best. A web dashboard or an online-only app simply wasn't viable; officers couldn't be expected to lose a morning's work because a village had no coverage.
What started as lead capture grew over time into a full order-and-delivery workflow, then dark mode, then Bengali and English localization — each addition touching data models, local storage, network calls, and UI. That growth is exactly the point where architecture stops being a nice-to-have and starts determining whether the next feature takes two days or two weeks.
My Role
Freelance engagement for Surovi Group — architecture, implementation, and delivery:
- Designed the offline-first data layer: every write lands in SQLite first, with the network as a best-effort sync channel
- Architected the feature-first directory structure so leads, orders, collection reports, customers, and products could each ship as an isolated vertical slice