Job Description
Job Purpose :
Diamond Trust Bank is seeking a Lead Mobile Developer (React Native) to join our team of innovators and engineers. This role reports directly to the Head of Engineering and works closely, API, DevOps, Product Design and Data Science and Architecture teams. The ideal candidate is an energetic self-starter with the ability to make independent strategic decisions.
The Lead Mobile Developer (React Native) will be responsible for defining the baseline codebase and patterns to be adopted as a standard for developing and maintaining React Native mobile applications and provide technical expertise, leadership, and guidance to a team of mobile developers in the creation, maintenance, and optimization of cross-platform mobile applications that deliver exceptional user experiences. They will lead a team of developers and work closely with Quality Engineers to ensure the test-coverage, quality, and scalability of the applications.
Together, let's create meaningful mobile solutions that make an impact in the digital world.
Key Responsibilities :
Technical Leadership: Provide technical leadership and mentorship to a team of mobile developers, fostering a collaborative and innovative environment. Guide the team in applying best practices, architectural patterns, and industry standards to ensure the delivery of high-quality mobile applications. Implement and enforce DevOps and CI/CD practices.
Mobile Development: Utilize your strong mobile development skills and in-depth understanding of React Native to design and develop cross-platform applications for iOS and Android. Implement intuitive user interfaces, interactive features, and seamless integration with backend services to create engaging mobile experiences.
Architecture and Design: Collaborate with architects and other technical stakeholders to design scalable and modular mobile architectures. Evaluate and recommend appropriate technologies, tools, and frameworks to enhance development efficiency and maintain a cutting-edge technological stack.
Code Reviews and Quality Assurance: Conduct regular code reviews to ensure adherence to coding standards, best practices, and maintainable code. Implement effective testing strategies, including unit testing, integration testing, and automated testing, to ensure software quality and reliability.
Performance Optimization: Optimize the performance and efficiency of mobile applications by analysing and improving rendering performance, network requests, and data caching. Identify and resolve performance bottlenecks through profiling and optimization techniques.
Collaboration and Communication: Communication: Foster effective collaboration and communication within the development team and across other departments. Act as a liaison between technical and non- technical stakeholders, ensuring clear understanding and alignment on project objectives and requirements.
Project Management: Collaborate with project managers and product owners to define project scope, requirements, and timelines. Provide technical expertise in project planning, resource allocation, and task prioritization to ensure successful project delivery.
Continuous Learning: Stay updated with the latest advancements in mobile development, React Native, and related technologies. Share knowledge and insights with the team, promoting a culture of continuous learning and improvement.
Track work related tasks at every development stage and keep the team aligned with code changes.
Knowledge :
Academic :
Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent work experience).
Professional :
7+ years of proven experience as a mobile developer with expertise in React Native development within an Agile development.
Solid understanding of mobile app development principles, including UI/UX best practices and mobile platform guidelines.
Proficiency in JavaScript and its modern frameworks, libraries, and tooling.
Experience in consuming RESTful APIs and handling asynchronous data in mobile applications.
Familiarity with mobile testing frameworks and tools, such as Jest or Detox.
Solid understanding of software architecture, design patterns, and principles.
Experience with version control systems, such as Git, and CI/CD pipelines.
Strong problem-solving and analytical skills.
Excellent leadership and communication abilities, with the capacity to collaborate effectively with cross-functional teams.
Experience with Agile development methodologies.
Knowledge of native mobile development (iOS or Android) is a plus.
Experience with cloud platforms and infrastructure (e.g., AWS, Azure) is a plus.
Experience with OAuth and JWT Tokens.
Understanding of scaling and track record of scaling systems.
Personal Competencies :
Ability to work collaboratively as part of a team.
Strong leadership and mentoring skills.
Excellent analytical and problem-solving abilities.
Attention to detail and commitment to coding standards.
Self-motivated with a proactive approach.
Ability to prioritize and delegate tasks effectively.
Excellent communication and interpersonal skills.