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).
As a Senior Software Engineer - Android Development, you will be responsible for design, development and testing of automotive infotainment software solutions for new features or major enhancements. You will also be responsible for defect analysis, resolution and verification for vehicle infotainment subsystem software.
Job Responsibility
Design and develop HMI applications for GM's in-vehicle Infotainment systems
Write efficient, well-structured, optimized, and thoroughly documented source code
Participate in architecture, requirements, design, code, and test case reviews
Analyze software defects
determine root cause, create software solution, test and verify closure
Perform integration and verification testing
Integrating vehicle input systems (faceplates, knobs and speech systems) with application software
Take ownership of tasks and coordinate with multiple stakeholders to ensure successful end-to-end completion
Support cross-functional teams in resolving issues related to software integration within vehicle systems
Promote and implement improvements in programming best practices and coding standards
Work closely with team members in Agile/Scrum and dynamic environments to deliver high-quality software solutions
Utilize Agile development processes, including Sprint Planning, Daily Stand-Ups, and Retrospectives
Adhere to GM's software development processes, prioritizing quality and ensuring that designed solutions conform to architectural requirements
Requirements
Bachelor's degree in Computer Science, Electrical Engineering or equivalent experience
5+ years of experience in developing Android based Infotainment applications
Excellent programming and debugging skills in Kotlin, Java and/or C++
Proven experience with object-oriented design and implementation of design patterns
Experience with testable software architectures and frameworks, including JUnit, Espresso, TDD, MVVM, Clean Architecture
Experience with SCM and development tools such as: Git, GitHub, Parasoft, JIRA
Working knowledge of Scrum/Agile software development processes
Strong analytical ability to solve unusual and complex problems
Work in an agile environment with team members distributed across multiple time zones
Creative, adaptable, with a strong sense of responsibility, delivery focus, and commitment to schedules
Perform software optimization analysis to improve system performance
Perform peer reviews on software design and source code to ensure quality and compliance with requirements
Excellent verbal and written communication skills
Nice to have
Prior experience developing automotive infotainment systems including radios and instrument panel clusters
High level of understanding of Vehicle Development Process a plus