Senior Embedded Software Engineer
Job Description
Position Overview
As a Senior Embedded Software Engineer on the Vehicle Mechatronics Embedded Controls (VMEC) team, you will contribute to the design, development, and deployment of embedded control systems that support vehicle motion, access, visibility, occupant protection, and comfort across GM’s global portfolio. In this role, you will focus on developing Body Controls software for GM vehicles worldwide, working within Agile teams responsible for end-to-end delivery — including requirements, development, testing, and verification. Your primary focus will be embedded software development and testing in a collaborative, fast-paced environment. You will work as part of an Agile Scrum team developing embedded automotive control systems. Multiple openings are available across body control domains such as lighting, vehicle access, and closures. Final placement will be determined during the interview process based on business needs and your experience.
Key Responsibilities
- Provide lean-agile leadership for software architecture by guiding the design of large and complex software implementations.
- Interface with Software Architects to understand and implement Software Defined Vehicle (SDV) requirements and designs within your scrum team.
- Provide leadership and technical mentorship to junior developers, and serve as a reviewer of their designs.
- Collaborate with Product Managers, Testers, and other developers using methods like Behavior-Driven Development (BDD) and Test-Driven Development (TDD) to create and implement features for GM’s next generation of EV and ICE vehicles.
- Design, implement, and integrate complex embedded software systems in hand-coded C with flexibility in implementation methods.
- Develop and maintain unit tests and multicomponent tests to ensure thorough software testing, including executing model/code equivalences testing.
- Participate in Agile team ceremonies and contribute as an active member of the Agile Scrum team.
- Interface with GM internal teams – Calibrators, Vehicle Integration Teams, etc.
- Interface with GM suppliers to define and test the libraries they provide.
- Utilize debugging tools like Lauterbach to identify root causes and resolve defects.
Required Qualifications
- Education: Bachelors Degree in Computer Science, Mechatronics, Software, Electrical or Computer Engineering
- Experience with writing and debugging C code and/or Rational Rhapsody.
- Minimum 5-7 years embedded software development experience.
- Prior working experience with GM or other automotive software standards, test procedures and build processes.
- Experience with CppUTest framework including debugging CppU Tests and implementing dynamic scheduler.
- Experience in deciphering Ethernet, CAN and LIN Logs.
- Development and testing experience on SIL/HIL or other virtual environments.
- Individually motivated with the ability to work independently and in collaborative teams.
- Excellent oral and written communication skills with a high level of interpersonal competence.
- Ability to manage time effectively and meet deliverable deadlines.
Preferred Qualifications
- Familiarity with GM or other automotive software standards (e.g., AUTOSAR), test procedures and build processes is a plus.
- Experience with software configuration management processes and tools (e.g., Git Ecosystem) preferred.
- Prior experience working in Agile, Scrum, or SAFe environments is an asset.
- Experience in domains such as vehicle access, occupant position, protection, vision & visibility, and comfort/HVAC is an asset.