General Motors is a leading automotive company focused on innovation and safety. They are seeking a Principal Software Engineer to lead the engineering strategy for the Android platform in their Infotainment system, guiding teams and enhancing software design while mentoring engineers.
Responsibilities:
- Define the Android platform engineering strategy for the GM Infotainment system and provide technical direction and guidance for engineering execution
- Lead technical solutions for critical Android platform features/issues and drive the execution across internal and external teams
- Challenge current implementations, seek optimization opportunities, and foster innovation to improve efficiency in Android platform engineering
- Enhance software design and improve system performance. Analyze and resolve performance issues, memory leak and deadlocks issues
- Ensure the designed solutions conform to architectural requirements such as scalability, maintainability, reliability, extensibility, usability, and security
- Work with and bridge across multiple disciplines, including Engineering, Product teams, Program teams, and Information Technology, to make appropriate system level design trades
- Create and communicate vision & strategies specific to functional responsibilities. This includes preparing and giving presentations to senior and executive management
- Stays updated on new technology and competitive products to support product engineering decisions
- Mentor and provide technical guidance to senior and junior engineers
Requirements:
- Bachelor's degree in computer engineering, Software Engineering, Electronics & Communication, Electrical Engineering, or work equivalent experience
- 10+ years of experience in Embedded software development and SDLC process
- 5 years of experience in software development with Android AOSP or AAOS stacks, including Android framework layers and system components
- Product engineering experience with Embedded systems, Android, Linux, QNX or other RTOS systems
- Fundamentals of SoC architecture and key components, including CPU, GPU, NPU, memory, I/O interfaces, and how they affect software systems and solutions
- Hands-on experience and knowledge in Java, C++, C, operating systems, build and runtime environments
- Experience in the development of automotive-related infotainment solutions, Inter ECU communications, and stringent timing requirements is a big plus
- Quality consciousness and the ability to navigate obstacles while finding effective solutions quickly
- Very effective interpersonal and leadership skills
- Superb written and verbal technical communication skills, excellent ability to incorporate other engineer's ideas and explain their own
- 15+ years of experience in Embedded software development and SDLC process
- Over 5 years of experience in software development with Android AOSP or AAOS stacks, including Android framework layers and system components