We are seeking a skilled Flutter Developer with 3-4 years of hands-on experience to join our development team. You will be responsible for building high-quality, performant cross-platform mobile applications for iOS and Android, with a focus on delivering exceptional user experiences and maintainable code.
Key Responsibilities
1. Application Development
- Design and develop cross-platform mobile applications using Flutter/Dart
- Build reusable widgets and components following Flutter best practices
- Implement responsive UI/UX designs that work seamlessly across different screen sizes and platforms
- Write clean, maintainable, and well-documented code
- Optimize application performance and ensure smooth 60fps animations
- Apply proper separation of concerns (UI layer, data layer, domain layer)
2. Architecture & Design Patterns
- Implement MVVM or Clean Architecture patterns in Flutter applications
- Use the Command Pattern to handle async operations and their states in view models
- Implement the Repository Pattern to abstract data sources and business logic
- Use Result objects for consistent error handling across application layers
- Design and implement offline-first features with local caching and sync strategies
- Apply optimistic state updates to improve perceived app responsiveness
3. Testing & Quality Assurance
- Write and maintain unit tests, widget tests, and integration tests
- Implement test-driven development (TDD) practices where applicable
- Use testing frameworks like flutter_test, mockito, and integration_test
- Conduct code reviews and ensure code quality standards
- Debug and troubleshoot issues across different devices and OS versions
4. API Integration
- Integrate RESTful APIs and GraphQL endpoints
- Implement proper error handling and retry mechanisms
- Work with JSON serialization/deserialization
- Manage API state using providers (Provider, Riverpod, Bloc, etc.)
- Handle authentication flows (OAuth, JWT, etc.)
- Implement proper API caching strategies
5. Payment Integration
- Platform-Specific Payment Integration:
- Implement In-App Purchases (IAP) for iOS using StoreKit
- Implement In-App Purchases for Android using Google Play Billing
- Handle subscription management, receipts, and purchase verification
- Manage consumable and non-consumable products
- Third-Party Payment Gateways:
- Integrate payment solutions like Stripe, Razorpay, PayPal, or similar
- Implement secure payment flows and PCI compliance best practices
- Handle payment webhooks and transaction status updates
- Manage refunds and payment error handling
6. Deployment & Publishing
- Build and prepare apps for production release
- Generate signed APKs/AABs for Android
- Create iOS builds and manage certificates/provisioning profiles
- Submit apps to Google Play Store and Apple App Store
- Manage app versioning and release notes
- Handle app updates and staged rollouts
- Monitor crash reports and analytics post-deployment
- Implement CI/CD pipelines for automated builds and deployments
*Required Skills & Qualifications
Technical Skills
- Strong proficiency in Flutter and Dart
- Solid understanding of mobile app architecture patterns (MVVM, MVC, Clean Architecture)
- Experience with Flutter architecture design patterns:
- Command Pattern: Wrapping methods to handle different states (running, complete, error)
- Repository Pattern: Separating data layer from UI layer
- Result Objects: Proper error handling across application layers
- Offline-first Architecture: Implementing local caching and data synchronization
- Optimistic State Updates: Improving perceived performance in UI
- Experience with state management solutions (Provider, Riverpod, Bloc, GetX, etc.)
- Proficiency in asynchronous programming (Futures, Streams, async/await)
- Knowledge of platform-specific code integration (Platform Channels)
- Experience with local storage solutions (SharedPreferences, Hive, SQLite, SQL)
- Familiarity with version control systems (Git)
- Understanding of Material Design and iOS Human Interface Guidelines
- Understanding of separation of concerns (UI layer, data layer, domain layer)
API & Backend
- Strong experience with REST API integration
- Knowledge of API authentication methods (OAuth 2.0, JWT)
- Experience with WebSocket connections for real-time features
- Understanding of API versioning and documentation
Payment Systems
- Hands-on experience with at least one payment gateway integration
- Understanding of PCI DSS compliance basics
- Experience with both platform-specific and third-party payment solutions
Testing
- Proficiency in writing unit tests and widget tests
- Experience with integration testing
- Familiarity with test coverage tools
- Knowledge of debugging tools and techniques
Deployment
- Experience publishing apps on both Google Play Store and Apple App Store
- Knowledge of app signing, certificates, and provisioning profiles
- Understanding of app store guidelines and review processes
- Experience with beta testing platforms (TestFlight, Firebase App Distribution)
*Preferred Skills
- Experience with Supabase (PostgreSQL database, authentication, real-time subscriptions, storage)
- Familiarity with Firebase (Firestore, Authentication, Cloud Functions, FCM)
- Knowledge of Appwrite, Parse, or similar Backend-as-a-Service (BaaS) platforms
- Understanding of serverless architectures
- Experience with cloud functions and database triggers
*Additional Preferred Skills
- Experience with GraphQL and Apollo Client
- Knowledge of Firebase services (Analytics, Crashlytics, Remote Config)
- Familiarity with push notifications (FCM, APNs)
- Experience with app performance monitoring tools
- Understanding of accessibility (a11y) best practices
- Experience with animations and custom painters
- Knowledge of CI/CD tools (Codemagic, Fastlane, GitHub Actions)
Qualifications
- Bachelor’s degree in Computer Science, Engineering, or related field (or equivalent practical experience)
- 3-4 years of proven professional experience in Flutter development
- Strong problem-solving and analytical skills
- Excellent communication and teamwork abilities
- Self-motivated with the ability to work independently
What We’re Looking For
- A developer who writes clean, testable, and maintainable code
- Someone passionate about mobile development and staying current with Flutter ecosystem updates
- A team player who can collaborate effectively with designers, backend developers, and product managers
- Detail-oriented individual who cares about user experience and app performance
- Proactive problem solver who can troubleshoot complex issues independently
Nice to Have
- Experience with Flutter Web or Flutter Desktop
- Knowledge of native iOS (Swift) or Android (Kotlin) development
- Experience with design tools like Figma or Adobe XD
- Understanding of app monetization strategies
- Experience with A/B testing frameworks
How to Apply: Please submit your resume along with:
- Links to apps you’ve published on App Store/Play Store
- GitHub profile or code samples
- Brief description of your most challenging Flutter project and how you solved it.