General Motors is at the forefront of next-gen automotive technology, seeking a Staff Android Software Engineer to develop next generation infotainment systems. The role involves designing, developing, and integrating Android/Linux and QNX components, and collaborating cross-functionally to deliver intuitive in-vehicle user experiences.
Responsibilities:
- Design, develop and integrate Android/Linux and QNX components for infotainment
- Lead the integration of Android applications within Android Automotive OS with embedded platforms and multi-display vehicle architectures
- Build reusable frameworks and services within Android, leveraging AOSP, Jetpack, and HIDL/AIDL interfaces
- Collaborate cross-functionally with hardware, product, and design teams to deliver responsive, beautiful, and consistent in-vehicle experiences
- Drive Android-RTOS coexistence strategies, enabling seamless handoff and communication between systems
Requirements:
- Advanced programming and debugging skills with C, C++/11/14, Java, and unit test framework
- Development tools and IDE such as VS Code, Android Studio, Momentics, git, JIRA, CMake, gradle, gcov, SonarQube, etc
- Solid understanding in Android and QNX system architecture, frameworks, build system and key components, and comfortable with making system extensions and modifications
- Understanding of Android OS fundamentals
- Solid understanding of software versioning and release management principles, with a focus on codebase organization, branching strategies, and integration processes
- Strong analytical skill, debugging capability and problem-solving skills to tackle complex integration challenges through existing code base in C, C++ and Java
- Familiar with different debugging methodologies
- Strong verbal and written communication skills
- Ability to create clear technical documentation for software development guidelines and integration process
- Must be a goal driven self-starter, able to work independently under release pressure
- Bachelor's degree in computer science, software engineering, or related degree
- Experience with various CI/CD tools and processes
- Experience with Yocto Linux
- Experience with virtual machine and container technologies
- Experience in automotive industry
- Experience with Android System UI