Looking for an experienced Mobile Developer with strong native iOS and/or Android expertise and proven hands-on experience developing applications using Flutter . This role involves building and integrating Flutter modules within existing native applications, implementing scalable architectures, and applying best programming practices. The ideal candidate will bring strong technical leadership, clear communication skills, and the ability to guide teams while delivering high-quality mobile solutions across multi-platform environments.
Contract duration: 6mo (strong probability of extension)
Location: Toronto, ON (2/5 hybrid model or remote for residents of other locations in Canada)
Rate: depends on expertise level (ideally, within 70-90/hr rate range)
Must-Haves:
- 5+ years of professional mobile development experience with a solid background in iOS and/or Android .
- 2+ years of hands-on Flutter development experience , including delivering a functional production-ready app.
- Demonstrated experience embedding Flutter within native applications (iOS/Android).
- Strong programming fundamentals and coding best practices.
- Deep understanding of mobile architectures and design patterns .
- Strong communication and leadership skills with the ability to guide and mentor team members.
- Practical experience working with Bloc for state management.
- Experience building and managing multiple Flutter modules .
- Proven experience integrating Flutter into existing native mobile applications .
Key Duties & Responsibilities
- Design, develop, and maintain mobile applications using Flutter as well as native iOS/Android technologies.
- Build and integrate Flutter modules into existing native applications, ensuring seamless functionality and performance.
- Collaborate with product managers, designers, and backend teams to define requirements and deliver high-quality features.
- Implement scalable architectures and apply industry-standard design patterns and state management (Bloc) practices.
- Optimize application performance, debug complex issues, and ensure smooth user experiences across platforms.
- Lead technical discussions, provide guidance to team members, and enforce strong programming practices and coding standards.
- Conduct code reviews, mentor junior developers, and support continuous improvement within the development team.
- Participate in Agile ceremonies and contribute to sprint planning, estimation, and delivery.