Job Responsibilities:
1. Design, implement, and optimize complex and smooth animation effects, with proficiency in Property Animation, View Animation, and RecyclerView animations, capable of implementing complex animations and UI interactions.
2. Be responsible for or participate in the evolution of componentized/modular solutions for Android TV.
3. Be responsible for designing, setting up, and maintaining Jenkins-based Android CI/CD pipelines, conducting in-depth research and implementing build performance optimizations (Gradle/KGP), significantly reducing the team's build wait times.
4. Explore and implement best practices for AI programming assistants in Android development to enhance team coding efficiency.
5. Be responsible for analyzing APK memory and performance optimization using Systrace and Perfetto experience.
Qualifications:
1. Educational Background: Bachelor's degree or higher in Computer Science or a related field, along with good spoken English communication skills.
2. Work Experience: Over 7 years of Android development experience, with substantial practical experience particularly in animation, componentization, and CI/CD.
3. Technical Skills:
- Familiar with the focus event distribution mechanism on Android TV, able to swiftly handle focus switching and control logic.
- Deep expertise in animation with extensive hands-on experience, capable of independently implementing complex custom animations, and possessing a profound understanding of animation principles and performance optimization.
- Proficient in Kotlin and Java, with a deep understanding and practical project application of Android Jetpack component libraries, including but not limited to Lifecycle, ViewModel, LiveData, Room, Navigation, Compose, etc.
- Familiar with Systrace and Perfetto tools, possessing practical experience in memory and performance optimization, able to effectively monitor and optimize application memory usage to enhance overall application performance.
- Substantial practical CI/CD experience, with at least 2 years of experience using Jenkins, proficient in Pipeline-as-Code (Jenkinsfile) and Groovy DSL, familiar with multi-branch pipeline design.
- Extensive RxJava experience, with a deep understanding of reactive programming concepts, and skilled in using RxJava 2/3 to handle asynchronous data streams, thread scheduling, and complex event composition.
- Strong willingness and experience in AI coding practices, proficient in using at least one mainstream AI programming tool (e.g., GitHub Copilot, Cursor, AWS CodeWhisperer, etc.), and possessing basic knowledge of their working principles and prompt engineering.