Job Description
Staff Android Developer\n\nJob Brief:\nWe are seeking a highly skilled and experienced Staff Android Engineer to join our dynamic team. In this role, you will be responsible for leading the development and maintenance of our Android applications, ensuring the highest standards of code quality, performance, and scalability. You will collaborate closely with cross-functional teams, mentor junior engineers, and drive the adoption of best practices in Android App development and delivery.\nJob Description:\nAs a Staff Android Engineer, you will take a leading role in the design, development, and deployment of our Android applications. You will work on a variety of projects, from architecture to deployment pipelines, and play a critical role in shaping the direction of our technology stack. This position requires hands-on coding, as well as strategic thinking to guide our team in delivering top-tier, scalable Android apps.\nIn this role, you will be responsible for overseeing Git branching strategies, ensuring smooth CI/CD processes, and optimizing performance. Additionally, you will mentor junior developers, participate in code reviews, and collaborate closely with product and engineering teams to drive innovation.\n\nKey Responsibilities:\nLead Android Development: Architect, design, and implement Android applications, ensuring high performance, stability, and scalability.\nCode Quality and Best Practices: Conduct code reviews, enforce best practices, and ensure robust testing processes.\nManage Frequent Releases: Oversee release trains, ensuring timely and predictable release cycles. Use feature flags to decouple deployment from feature release, allowing delayed testing and progressive rollouts.\nCollaborate Across Teams: Work closely with product managers, designers, backend engineers, and QA teams to align on project goals and deliver seamless mobile experiences.\nOptimize Performance: Identify and resolve performance bottlenecks, ensuring smooth user experiences across devices.\nMentorship: Mentor and guide junior and mid-level engineers, fostering growth and ensuring knowledge sharing within the team.\nApp Health Metrics: Develop and track key performance and stability metrics to continuously improve the apps reliability and user experience.\nContinuous Integration and Deployment: Manage CI/CD pipelines to streamline the Android app deployment process, integrating automated testing and monitoring.\nStay Updated on Android Trends: Stay current with the latest developments in Android SDKs, libraries, and mobile development tools, introducing new ideas and technologies to the team.\nQualifications: \nExperience: 7+ years of Android development experience, with deep knowledge of Kotlin, Java, and Android SDK.\nArchitecture: Strong understanding of Android architectures (MVVM, Clean Architecture) and design patterns.\nVersion Control: Proficiency with Git and managing complex branching strategies in large-scale projects.\nAgile Methodologies: Familiarity with Agile development processes and experience working in Agile teams.\nPerformance Optimization: Strong ability to optimize Android applications for performance, battery life, and memory management.\nCommunication Skills: Excellent communication skills, with an ability to clearly explain complex technical issues to non-technical stakeholders.\nLeadership: Proven experience in leading technical teams and mentoring junior engineers.\nBonus Skills:\nCI/CD: Experience with continuous integration/continuous deployment (CI/CD) tools like Jenkins, CircleCI, or GitLab CI for mobile apps.\nExperience with reactive architecture RxAndroid, RxJava.\nExperience with Espresso Framework and UI Testing\nAbility to work well with tight schedules and rapid development cycles\nExperienced with audio/video real time communication and streaming video protocols (RTSP/RTP/HLS)\nExperienced with SIP, H265/264 Codec, FFMPEG, WEBRTC",