Loading case study
Loading case study
React Native mobile app for daily Account Manager activity reporting, admin task management, and field evidence capture.
Role
Mobile Engineer
Timeline
2024
Platform
React Native
Focus
Activity + Task Management
AMDailyActivity is a React Native mobile app for recording daily Account Manager activities and helping Admin Marketing manage operational tasks. The app supports field reporting with GPS location, selfie evidence, environment photos, partner data, and role-based mobile workflows.
Daily activity reporting and task monitoring can become difficult when records are handled manually or across separated tools. Admin teams need visibility into task progress, while field activities need valid supporting evidence such as location and photos.
I helped build a role-based mobile workflow where Account Managers can submit daily activities with client, partner, location, selfie, and environment photo data, while Admin Marketing can create tasks, review task progress, cancel tasks, update task details, and create task-related activities.
Mobile Engineer (React Native)
2024
Functional & non-functional
Architecture + data flow
The app is structured as a React Native mobile client with role-based navigation, Rematch and Redux Persist for application state and session persistence, Axios API services for backend communication, Formik and Yup for form handling, and device services for camera and GPS evidence capture.
State flow and data model
Rules that drive decisions
Project boundaries
What I handled directly
Key problem solving
Permission rejection for camera/location
Added guided permission handling and validation states so users understand why photo or location evidence is required.
Incomplete activity submissions
Used form validation to block submission until required field, partner, image, and location data were complete.
Multiple roles with different flows
Separated account manager and admin navigation so each role only sees the screens and actions relevant to their workflow.
Task and activity data needed to stay synchronized after create, update, or cancel actions.
Refreshed list and detail data after mutations so Admin Marketing and Account Manager screens reflected the latest state.
Decisions and compromises
What we would repeat
Stability in production
Results and outcomes
Key screens
What mattered most