Pharma / Field Operations
Delher — Pharma Field Operations Dashboard & Mobile App
Field operations product for a pharma client: a Material UI React dashboard with Leaflet mapping, plus an Android app for the team in the field.
- React.js
- Material UI
- Redux
- Leaflet
- React Native
- Node.js
- Express.js
- MongoDB
- REST APIs

- Client
- Martin Dow
- Duration
- Jan 2022 — Aug 2022
- Category
- Pharma / Field Operations
Delher spans two surfaces built around the same operational data: a React web dashboard for the operations team and an Android application for staff working in the field, both served by a Node.js/MongoDB backend.
The dashboard is a Material UI application with Redux state and Leaflet for the mapping layer — field activity is inherently geographic, so most views are either a map or a table that filters one. Date-range handling runs throughout via Moment, because almost every question the operations team asks is "what happened in this area, in this period".
The mobile app is the capture side of the same system: the field team records activity on the phone, and it appears on the dashboard the operations team is watching.
Key features
React + Material UI operations dashboard with authenticated access
Leaflet mapping layer visualising field activity geographically
Android companion app for capturing activity in the field
Date-range filtering and period comparison across every view
Shared Node.js/MongoDB backend serving dashboard and mobile app
Redux state layer keeping map, filters and tables in sync
My role
Full-stack developer across the dashboard, the mobile app and the shared API.
- Built the Material UI dashboard, map views and reporting tables in React
- Integrated Leaflet for geographic visualisation of field activity
- Built the mobile capture flows and the REST endpoints they write to
- Modelled activity data in MongoDB and kept dashboard and app consistent
Challenges & solutions
Maps and tables that disagree are worse than either alone. A single filter state in Redux drives the map, the tables and the date range together, so what the map shows is always exactly what the table lists.
Field capture on unreliable connections. The mobile app queues activity locally and syncs when a connection returns, so a rep in a low-coverage area never loses a day's work.
Related projects
Healthcare / MobileLittle Angel Medical — LAM Child Health App
AI paediatric health app and product site: head, cough, throat, skin and vitals checks from a phone, plus LIA, an AI triage assistant for parents.
- React Native
- TypeScript
- Node.js
- MongoDB
- +6
Fintech / MobileSwift — Driver Income & Expense Tracker
Android app for ride-hailing and delivery drivers to log income and expenses and see what they actually earn, on an Express/PostgreSQL ledger backend.
- React Native
- Android
- React.js
- Express.js
- +3