Opened 5 days ago Remote Job
Company

Flutter Developer

Our Company

NymCard’s mission is to enable fintech and financial innovators to launch frictionless payment programmes with our modern infrastructure, at record speed. Our open API modern card issuing platform provides flexibility and control to issue cards, authorize transactions and manage payment operations with just one integration and one partner. 

We are a team of industry experts and technology innovators who take a dynamic approach to solving complex industry challenges. NymCard has an open and collaborative work environment and together we make up the NymCardian Nation. We power possibilities for our customers AND each other by bringing the best talent together to do the best quality work we can. 

By staying true to our core values: Respect, Transparency, Collaboration, Quality, Speed, Courage, NymCards strives to build a global team as diverse as the markets we serve. It is a very exciting time to join NymCard and as our Business grows, you and your opportunities will grow with it. To Learn more about NymCard visit our Website and LinkedIn.

The Role:
As a Flutter Developer, you will be in charge of reviewing the software specifications and UI/UX mockups, developing a cross-browser mobile application from scratch, and leading the application testing effort. You'll work alongside backend developers, iOS/Android developers as well as a UI designers to ensure you create high-performing applications with a smooth user experience.

Roles and Responsibilities:

  • Design, Develop, Test, Maintain and Deploy Software in the Flutter Framework and Dart Language

  • Engage in the full software development lifecycle (SDLC) by utilizing the Flutter framework and Dart programming language to create high-performance, cross-platform applications. This includes defining project requirements, architecting scalable solutions, and implementing robust features that align with user needs and business goals.

  • Develop User Interface Components:

  • Create and implement reusable user interface components by adhering to established Flutter and Dart best practices. This involves utilizing Flutter’s widget tree structure, state management solutions (such as Provider, Riverpod, or Bloc), and responsive design principles to ensure a seamless user experience across various devices and screen sizes.

  • Implement Business Logic Using RESTful APIs:

  • Designing and developing the application’s business logic by integrating with RESTful APIs. This includes making asynchronous network calls using packages like `http` or `dio`, handling JSON data serialization and deserialization, and managing state effectively to reflect real-time data updates within the application.

  • Embedding Existing Codebases:

    • Integrating and embedding existing codebases from iOS, Android, and JavaScript into the Flutter application. This may involve using platform channels for native code interaction, leveraging web views to display JavaScript content, and ensuring smooth interoperability between Flutter and native components.

  • Collaborate with Product and Engineering Leads:

    • Maintaining effective communication with product managers and engineering leads to align on project objectives, timelines, and deliverables. Actively participating in Agile ceremonies such as sprint planning, daily stand-ups, and retrospectives to ensure transparency and collaboration throughout the development process.

    • Conducting Code Reviews:

    • Performing thorough code reviews of team members' commits as part of the Continuous Integration/Continuous Deployment (CI/CD) cycle. This includes ensuring code quality, adherence to coding standards, and identifying potential issues before merging changes into the main branch, thereby enhancing the overall robustness of the codebase.

    • Participating in Testing, Quality Assurance, and Bug Fixes

    • Engaging in comprehensive testing and quality assurance processes, including writing unit tests, widget tests, and integration tests using the Flutter testing framework. Actively identifying and resolving bugs and performance issues as part of the CI/CD cycle, ensuring that the application meets high standards of quality and reliability before deployment.

Skills and Qualifications:

  • 2 Years of Commercial Experience with Flutter

  • Demonstrating at least 2 years of commercial experience in designing, developing, and deploying Flutter-based applications. This encompasses expertise in utilizing Flutter’s rich widget library, Dart programming language, and various state management solutions (such as Provider, Riverpod, or Bloc) to create responsive and visually appealing user interfaces.

  • 2 to 5 Years of Experience in Native Mobile App Development

  • Possessing 2 to 5 years of hands-on experience in developing mobile applications natively for iOS and/or Android platforms. This includes proficiency in Swift and Objective-C for iOS development, as well as Kotlin and Java for Android, ensuring the delivery of high-quality, performant applications that leverage platform-specific features and adhere to best practices.

  • 1 Year of Experience with AI Tools in Software Development

  • Having at least 1 year of experience utilizing AI tools in software development processes, or a strong desire to learn and integrate AI technologies. This may include leveraging machine learning frameworks, natural language processing tools, or AI-driven analytics to enhance application functionality and user experience.

  • Strong Understanding of State Management and App Architecture

  • Possessing a solid understanding of state management techniques, Flutter flavors for environment-specific builds, and overall app architecture principles. This includes knowledge of design patterns such as MVVM (Model-View-ViewModel) and MVC (Model-View-Controller), ensuring maintainable and scalable codebases.

  • Excellent Proficiency in API Integration

  • Demonstrating an excellent understanding of RESTful and GraphQL APIs, including experience in handling authentication, data retrieval, and error management. Skilled in using tools like Postman for API testing and documentation, ensuring seamless integration of backend services into mobile applications.

  • Strong Communication and Consultative Skills

  • Exhibiting strong communication and consultative skills, with a proactive and self-initiated approach to problem-solving. Capable of effectively collaborating with cross-functional teams, stakeholders, and clients to gather requirements, provide updates, and deliver solutions that meet business objectives.

  • Experience in a Remote Software Development Environment

  • Having experience working in a remote software development environment, demonstrating adaptability and effective time management skills. Proficient in using collaboration tools such as Git, Jira, and Google Chat to facilitate communication and project management in a distributed team setting.

  • Prior experience in developing applications and software solutions specifically for the Financial Services sector is considered a bonus. This includes familiarity with cards schemas, e-commerce platforms, lending, or Wallets.

  • Educational Background

  • Degree in Software Engineering, Computer Science, or Software Development is highly desirable, providing a strong foundation in programming principles, algorithms, and software design methodologies.

Don't wait, tomorrow could be too late.