Metro Driver Mobile App
Daily-use mobile app for 2k+ metro drivers — shift schedules, overtime declarations and attendance, with offline-aware UX for tunnel environments.

Flutter mobile application used daily by 2k+ drivers of a metropolitan transit authority — single codebase across iOS and Android, built by mobile team lead Karen Simonyan with design by team lead Anri Marutyan. Drivers see their published shift schedule, declare overtime, register attendance and receive push notifications about schedule changes — including signal-loss aware behaviour in metro tunnels: last-known schedule is cached and write-behind synced on reconnect, so a driver loses no context underground. Talks to the platform backend over REST for synchronous reads and gRPC for streamed updates, and receives Kafka-driven push events via FCM and APNs. In production from 2023 through 2025.
- → Single Flutter codebase across iOS and Android
- → Built by mobile team lead Karen Simonyan, design by team lead Anri Marutyan
- → Offline-aware UX — last-known schedule cached, write-behind sync on reconnect
- → Push notifications via FCM + APNs, server-driven for schedule changes
- → REST for synchronous reads, gRPC for streamed updates, Kafka-driven push events
- → In production from 2023 through 2025 across the operator's driver workforce
- → One of three sibling deliverables for this customer (mobile · dispatcher · backend platform)

Click any screenshot to open full-size view