- 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 analysis
- Specifies and balances system requirements
- Provide, communicate, and support common best practices among software community
- Performs as Subject Matter Expert (SME) for at least one platform or application component
Additional Job Description
- Contribute as designer and developer to building Android based infotainment solutions for automotive consumer devices.
- Responsible for the entire life cycle of the assigned domain, including requirements, system design, development, deployment, and maintenance of the infotainment software.
- Participate in the design of a best-in-class in-vehicle platform for GM infotainment systems.
- Follow our software development process where quality comes first and ensure that the designed solutions conform to architectural requirements such as scalability, maintainability, reliability, extensibility, usability and security.
- Engage in all regular software development activities such as architecture, feature requirements, design, code, and test case reviews to ensure that the team delivers high quality code on time.
- Bridge multiple disciplines, including Engineering, Information Technology, Technical Support, and Marketing, to make appropriate system-level design trade-offs and to identify, capture and refine system requirements and to identify innovation opportunities.
- Work on new feature development, as well as maintenance of existing features and bug fixes.
- Collaborate with team members in software development activities using the Scrum/Agile development process.
- Provide clear and complete documentation based on the definition of the software development process
- Bachelor or Master degree in Computer Science, Computer Engineering or related discipline;
- 4+ years (2+ years with Master) of software development experience.
- Considerable programming experience in Java and C/C++
- Strong Computer Science fundamentals and problem solving skills
- Practical experience in modifying Android internal components and adding new features
- Working knowledge of SCM tools such as: GIT, JIRA, Eclipse IDE etc.
- Practical experience with Scrum/Agile software development process
- Ability to perform diagnostic and investigation based on limited information
- Good communication skill in English and Chinese, interpersonal skill Preferred
- In-depth knowledge on Android runtime, Java/native heap management and binder communications
- Expertise on Android application frameworks and UI frameworks internals
- Ability to debug software platform stability issues and app crash problems
- Experience with automotive and/or portable consumer electronic devices
- Experience in software performance engineering
- Experience in open source software contribution
- Technical documentation skills
Our vision is a world with Zero Crashes, Zero Emissions and Zero Congestion and we embrace the responsibility to lead the change that will make our world better, safer and more equitable for all.
Why Join Us
We aspire to be the most inclusive company in the world. We believe we all must make a choice every day – individually and collectively – to drive meaningful change through our words, our deeds and our culture. Our Work Appropriately philosophy supports our foundation of inclusion and provides employees the flexibility to work where they can have the greatest impact on achieving our goals, dependent on role needs. Every day, we want every employee, no matter their background, ethnicity, preferences, or location, to feel they belong to one General Motors team.
General Motors is committed to being a workplace that is not only free of discrimination, but one that genuinely fosters inclusion and belonging. We strongly believe that workforce diversity creates an environment in which our employees can thrive and develop better products for our customers. We understand and embrace the variety through which people gain experiences whether through professional, personal, educational, or volunteeropportunities.
We encourage interested candidates to review the key responsibilities and qualifications and apply for any positions that match your skills and capabilities.