Qualifications & Education
- 6–10 years of software engineering experience, with 4+ years building production Flutter applications
- Demonstrated experience owning significant features or modules end-to-end, not just contributing to them
- Track record of improving a codebase — reducing crashes, paying down tech debt, or introducing standards others adopted
- Experience working in product-driven or startup environments with evolving requirements
- Strong proficiency in Dart and Flutter with production-grade apps shipped to both iOS and Android
- Deep, hands-on experience with at least one state management approach at scale (Bloc/Cubit, Riverpod, or equivalent) — and a clear view on the trade-offs between them
- Strong understanding of Flutter architecture patterns (Clean Architecture, feature-based modularisation, dependency injection)
- Solid understanding of the Flutter rendering pipeline: widget rebuilds, keys, isolates, and diagnosing jank with DevTools
- Experience writing platform channels or integrating native SDKs, with working knowledge of Swift/Kotlin when the problem demands it
- Experience with RESTful API integration, serialisation, error handling, and offline/caching strategies
- Practical experience with automated testing in Flutter (unit, widget, and integration/golden tests) and mobile CI/CD (Codemagic, Fastlane, GitHub Actions, or equivalent)
- Hands-on experience with production monitoring, crash reporting, and analytics (Crashlytics, Sentry, Datadog RUM, or equivalent) — using the data to prioritise fixes and decide what stays
- Solid grasp of mobile security: secure storage, certificate pinning, token handling, and protecting personal data on device
Collaboration Skills- Ability to review and shape API contracts with backend engineers before implementation begins
- Strong written communication across distributed, cross-functional teams — your technical decisions should be legible to both Product and Engineering
- Ability to work with Design to surface implementation constraints early — not after a feature has been built the wrong way
- Ability to work with QA on test strategy and edge cases before release, not only when fixing reported bugs
- Willingness to mentor — reviewing code to teach, not just to approve
Nice to Have- High-transaction consumer apps in F&B, e-commerce, logistics, or similar (ordering, loyalty, delivery), including payment gateway integration and payment flows (3DS, redirects, failure/retry states)
- Experience building apps that support multiple regions: localisation, currencies, region-specific configuration and feature availability
- Experience with offline-first architectures or complex local/remote sync patterns
- Experience shipping features behind feature flags or A/B tests
- Experience with super app patterns, modular Flutter packages, or add-to-app integration
- Experience building custom native modules beyond basic platform channels (e.g. WidgetKit, CoreLocation, Live Activities on iOS; custom Android SDKs or background services)
- Effective use of AI-assisted development tools, with the judgement to review and own what they produce
a Necessity, not a Luxury