The Vehicle Experiences Engine software organization at General Motors is looking to design and develop embedded software platforms for Infotainment and Software Defined Vehicle solutions, and is seeking a professional to lead engineering efforts in critical domains.
Requirements
- 10+ years in Software Development on Linux and/or Android.
- 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 Linux OS Concepts
- Solid understanding of software versioning and release management principles, with a focus on codebase organization, branching strategies, and integration processes
- Experience with various CI/CD tools and processes
Responsibilities
- Design, develop and integrate Android/Linux and QNX components for infotainment solutions in GM vehicles.
- Responsible for the entire life cycle of the Android/QNX domain, including requirements analysis, creating design documents, code development and review, integration, and maintenance of infotainment software.
- Work side-by-side with DevQA engineers on test plan development and review.
- Follow agile software development process where quality comes first and ensure that the designed solutions conform to architectural requirements such as scalability, maintainability, reliability, extensibility, testability, usability and security.
- Collaborate with cross-functional teams and external suppliers on design and integration activities.
- Provide, communicate, and support common best practices among software community
Other
- Must be a goal driven self-starter, able to work independently under release pressure
- Strong verbal and written communication skills.
- Ability to create clear technical documentation for software development guidelines and integration process
- Bachelor's degree in computer science, software engineering, or related degree.
- Hybrid role requires reporting to Mountain View, CA three times per week, at minimum.