Job
Description
The primary responsibilities of the tech lead revolve around providing hands-on leadership in software architecture, guiding and mentoring the Android software development team, and serving as a close collaborator and trusted advisor to both the business and technology teams. Additionally, the tech lead is accountable for ensuring the successful delivery of a robust, high-quality, and scalable mobile solution. This role offers excitement and challenges to individuals who are visionary thought-leaders, possess real-world experience, and excel in cross-functional collaboration. Technical Leadership: Provide technical guidance, direction and hands-on technical leadership to the android development team. You will be responsible for setting the technical direction of projects, ensuring best practices are followed, and making architectural decisions. Mentoring and Coaching: Mentoring and coaching team members to improve their technical skills, code quality, and overall performance. You'll be responsible for fostering a culture of continuous learning and growth within the team. Code Review: Conducting regular code reviews to maintain code quality, ensure adherence to coding standards, and identify possible improvement. Architectural Design: Create architectures which are scalable, maintainable and flexible enough to accommodate changes and updates. Project Planning and Estimation: Involve with project team in project planning and estimation by providing technical insights and assessing the feasibility of proposed features or improvements. Technology Evaluation: Evaluating and adopting new technologies, tools, and frameworks that can enhance the development process and improve the application's performance and user experience. Bug Tracking and Issue Resolution: Identifying and resolving technical issues, bugs, and performance bottlenecks in the applications. You'll ensure that the team maintains a high level of code quality and application performance. Communication: Being a strong communicator and collaborator with other teams, stakeholders, and management. You'll need to effectively convey technical concepts and project status to non-technical audiences. Quality Assurance: Overseeing the implementation of testing strategies, including unit testing, integration testing, and UI testing, to deliver a robust and reliable application. Continuous Improvement: Identifying process inefficiencies and areas for improvement within the development workflow and implementing best practices to increase team efficiency and productivity. Risk Management: Anticipating and mitigating potential risks and challenges during the development lifecycle to ensure project success. Team Building: Contributing to the recruitment and hiring process to build a skilled and cohesive Android development team. Required Skills: - 8+ years of experience in android development with extensive knowledge of android SDK/framework, Kotlin and Java. - Proven experience as an Android developer with a strong portfolio of successful mobile applications. - Demonstrated experience in designing and implementing complex Android applications with a focus on performance and scalability. - Strong leadership and communication skills, with the ability to collaborate effectively across teams and mentor junior developers. - Solid understanding of the full mobile development life cycle. - Expertise in MVVM/Clean architecture, SOLID principal & Android Jetpack components such as View Model, Compose UI & Room DB. - Working with communication middleware for IPC like AIDLs. - Experience with Junit and functional testing, with frameworks like Mockito and Espresso. - Good understanding of the client/server architecture, PKI infrastructure and web services REST. Good understanding of XML and JSON. - Experience on system app development & rooted device is an added advantage. - Strong analytical and problem-solving skills to identify and resolve technical challenges and performance bottlenecks in Android applications. - Nice to have experience on CI/CD. - Nice to have - JIRA and confluence and working in agile. - Familiarity with Agile methodologies and practices.,