This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
Design and implement technical solutions including specifying of requirements, functional decomposition, analysis, development and testing for in-vehicle software platform team. The ideal candidate would have solid background in implementation and integration of Linux and/or Android based system software solutions who are interested in applying their experience to delivering high quality software for future automotive Infotainment systems
Job Responsibility
Design and implement technical solutions including specifying of requirements, functional decomposition, analysis, development and testing for in-vehicle software platform team
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
Responsible for Android Kernel and framework implementation, integration and stabilization, working across team to analyzing issues and identify solutions
Support QNX system integration and stabilization, addressing issues related to QNX components and QVM configuration
Collaborate with cross-functional teams to enable smooth operation across multi-OS environments
Work side-by-side with DevQA engineers on test plan development and review
Design and implement power management solutions spanning QNX and Android
Support both normal startup/shutdown sequences and suspend/resume, ensuring reliability and efficiency across platforms
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
Leads and generates technical solutions including specifying of requirements, functional decomposition, analysis, development and testing for current, new and major programs
Lead development of software system team design content and software anomaly corrections
Performs complex design and issue analysis
Specifies and balances system requirements
Requirements
5-7+ 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
Solid understanding of Linux OS concepts, kernel implementation, device drivers, familiar with debugging and profiling tools
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
Ability to create, modify and maintain makefiles and build scripts in complex build system
Solid understanding of software versioning and release management principles, with a focus on codebase organization, branching strategies, and integration processes
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
Nice to have
Experience with various CI/CD tools and processes
Experience with Yocto Linux
Experience with Gunyah VM and/or other virtual machine and container technologies
Experience in automotive industry
What we offer
Incentive pay program based on company performance, job level, and individual performance