SAM Labs is an award-winning EdTech start-up. Founded in 2014, growing fast, making a difference, and venture capital funded. With over 9,000 school customers in 60+ countries already using SAM Labs products and lesson materials, SAM Labs is looking for more talent to join its team!
SAM Labs inspires generations of problem solvers with Coding and STEAM. We empower teachers with innovative curriculum resources, tools, and the mindset to do so. Teachers and students learn with SAM Labs kits and lessons by designing anything from energy efficient lighting grids for ‘smart’ cities to solar-powered habitats for endangered species - all the while meeting curriculum standards.
Overview
SAM Labs is looking for a Senior Flutter Developer with strong experience in cross-platform mobile and/or web development built on modern Flutter and Dart practices to help maintain and extend our mobile and web applications. You will be responsible for architecting and implementing robust multi-platform solutions, ensuring consistent performance across platforms, and establishing best practices for Flutter development and integration. As a core team member, you will play a crucial role in shaping our software strategy and execution.
This is a fully remote position reporting to the Lead Developer and Director of Product.
What You'll Do:
- Design and Develop: Extend and maintain cross-platform applications using Flutter, ensuring a consistent and high-quality user experience across Web, iOS, and Android.
- Collaborate Cross-functionally: Work closely with the Lead Developer and Director of Product to define technical requirements and architect efficient mobile solutions.
- API Integration: Design and implement robust API integration layers to interact with new and existing backend implementations, ensuring efficient data synchronization and offline capabilities.
- UI/UX Implementation: Transform design specifications into pixel-perfect, responsive interfaces while maintaining Flutter's widget composition best practices.
- State Management: Implement and optimize state efficient management solutions, ensuring clean architecture and maintainable code.
- Native Features: Integrate platform-specific features and capabilities through native plugins and custom platform channels when required.
- Performance Optimization: Monitor and optimize application performance, memory usage, and battery consumption across different devices and platforms.
- Testing Strategy: Develop and maintain comprehensive testing strategies, including widget tests, integration tests, and end-to-end testing using Flutter's testing framework.
- Build and Deploy: Contribute to maintaining and improving the CI/CD pipeline, and manage the release of apps to the App Store and Play Store.
- Code Quality: Implement and maintain coding standards, perform code reviews, and ensure proper documentation of components and features.
- Stay Current: Keep up with Flutter ecosystem updates, emerging web/mobile development trends, and best practices to continuously improve our development stack.
What You Bring:
- Experience: 4+ years in Flutter mobile and/or web development, demonstrating proficiency in architecting cross-platform solutions.
- Flutter Expertise: Deep understanding of Flutter framework, Dart programming language, and the widget lifecycle.
- Best Practices: Strong understanding of mobile/web development principles, design patterns, and best practices.
- Eye for Detail: You care about delivering the performant and beautiful experiences to users, down to the last detail.
- State Management: Advanced knowledge of state management solutions and application architecture patterns.
- Native Development: Familiarity with iOS and Android native development concepts and ability to write platform-specific code when necessary.
- Testing Proficiency: Experience with Flutter's testing framework, including unit testing, widget testing, and integration testing.
- API Integration: Experience implementing efficient data synchronization strategies working with external APIs including RESTful APIs, Firebase, and/or GraphQL.
- Performance Optimization: Proven track record in optimizing Flutter applications for performance, size, and resource usage.
- Version Control: Proficient with Git and experience working in Agile environments.
- Problem-solving: Strong analytical skills with ability to debug complex issues across multiple platforms.
- Communication: Excellent collaboration skills, with proven ability to communicate effectively within a fully-remote team.
- Continuous Growth: Passionate about mobile/web development with a drive to stay current with Flutter updates and broader development trends.
Why Join Us?
In this role, you'll drive innovation and excellence in our software solutions and user experience, working with a passionate team in a dynamic environment where your contributions will directly impact the growth and success of our products, reaching hundreds of thousands of learners around the world.