Core responsibilities:
System-Level Development: Designing and developing core AOSP middleware systems and custom system services like the Activity Manager, Window Manager, and Package Manager.
AOSP Customization: Modifying the Android source code for specific hardware platforms.
Hardware Integration: Porting the Android framework to specific hardware.
Optimization & Performance: Analyzing and resolving complex system issues, memory leaks, and system crashes.
AIDL: Experience in creating recent AIDLs for framework APIs & HALs.
Porting:
Experience in porting OS customizations to higher android versions.
Required Technical Skills: Languages: Proficiency in Java, JNI and C/C++.
Android Internals: Deep understanding of Binder IPC, System Server, HAL (Hardware Abstraction Layer), and SELinux policies.
Tools: Proficiency with AOSP build systems (Kati, Ninja, Soong) and version control tools like Git and Gerrit.
OS Concepts: Solid knowledge of multi-core processing, threading, and process synchronization (mutex, semaphores).
Education:
A Bachelors or Masters degree in Computer Science or any related engineering field.