Essential Duties and Responsibilities:
Assists in the development of software solutions by studying information needs, conferring with users, studying systems flow, data usage, and work processes; investigating problem areas; and following the software development lifecycle.
Supports the design, development, and testing of UI for mobile applications by creating quality, reusable, and scalable code using Flutter and Dart.
Documents and demonstrates solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments, and clear code.
Helps in building and maintaining reusable components and front-end libraries by translating designs and wireframes into high-quality components. Supports the improvement and optimization of the performance of existing components and systems.
Updates job knowledge by studying state-of-the-art development tools, programming techniques, and computing equipment, and by participating in educational opportunities, reading professional publications, maintaining personal networks, and participating in professional organizations.
Supports the identification and resolution of performance and scalability issues by continuously looking for ways to improve the software by identifying bottlenecks and bugs, and devising solutions to these problems.
Collaborates with agile cross-functional teams by working with product management, UX designers, and backend developers to define and implement innovative mobile app solutions, optimizing user interaction and experience.
Participates in code reviews by analyzing peer code to maintain high code quality standards.
Understands business requirements and translate them into technical requirements by working closely with project managers and other stakeholders to understand the business goals and objectives and to understand and resolve complex business issues.
Supports the implementation of automated testing and unit tests by working closely with the QA team to build and maintain automated tests to ensure quality and save time and effort in testing.
Improves operations by conducting systems analysis and recommending changes in policies and procedures.
Accomplishes engineering and organization mission by completing related results as needed.
Qualifications:
Education: A Bachelor's degree in Computer Science, Information Technology, or a related field.
Experience: Foundational experience with Flutter development.
Project Management: Familiarity with project management and workflow tools such as Jira, Asana, Trello, or similar.
Version Control: Basic knowledge in using Git or other version control systems.
Competencies:
Technical Skills:
Foundational knowledge in Flutter, Dart, and other relevant mobile app development languages.
Familiarity with Flutter's rendering and widget system.
Basic understanding of Dart programming paradigms and asynchronous programming.
Familiarity with data structure libraries and state management solutions (e.g., Provider, Riverpod, Bloc).
Basic understanding of modern authorization mechanisms, such as OAuth and JSON Web Token.
Basic understanding of mobile app build pipelines and tools, including CI/CD approaches.
Ability to understand business requirements and translate them into technical requirements.
Foundational experience with benchmarking and optimization of mobile apps.
Problem-Solving Skills: Strong analytical thinking and problem-solving skills. Ability to troubleshoot basic software issues.
Communication Skills: Good written and verbal communication skills. The ability to communicate effectively with both technical and non-technical stakeholders is crucial.
Teamwork: Proven ability to work as part of a team.
Attention to Detail: High attention to detail with a passion for delivering high-quality user experiences.
Time Management: Strong organizational skills with the ability to manage priorities and time effectively.
Adaptability: The ability to quickly learn and adapt to new technologies and programming tools. Openness to receiving and acting on feedback, with the ultimate goal of continuous improvement.
Continuous Learning: A commitment to learning and keeping up with the latest trends and best practices in mobile app development.
Fluency in English: Good command of the English language, both written and spoken.
Bright future and career