Hybrid: This role is hybrid and based at General Motor’s Global Technical Center in Warren Michigan. You are expected to report to that location three times a week, at minimum.
Role:
The Principal Software Engineer at General Motors should be an experienced leader who cares deeply about software and software quality. As a Principal Software Engineer, you will be responsible for broad oversight and ownership for the definition and execution of a scalable SW bill of design Body Controls domain across the subsystems of Occupant Protection, Occupant Position, Occupant Cabin Comfort, Lighting & Visibility, and Secure Vehicle Access. This responsibility will extend to designing, documenting, and guiding the implementation of complex, highly scalable, embedded software in C/C++. Your work will guarantee that the continued evolution and innovation of Body Controls Software, driving refactoring and optimization for legacy code while establishing best practice for the future.
At General Motors, we believe in engineering leaders who remain deeply technical and understand the challenges their teams are facing. The ideal candidate will be comfortable switching context from programming in C/C++, designing elegant software architectures, defining how to test, benchmark, and debug complex systems, and providing mentorship for staff and senior software engineers.
What you’ll do:
-
Define and lead software bill of design and strategy for new technology and highly complex features for Body Controls Platform development with a focus on Occupant Protection, Occupant Position, Occupant Cabin Comfort, Lighting & Visibility, Secure Vehicle Access
-
Partner with our Advanced Body Controls team, Systems team and SW Developer teams to enable layers of abstraction
-
Work across orgs to ensure that the joint architecture across the full stack is coherent and can solve relevant problems
-
Maintain alignment between senior leadership and engineering teams through effective executive communication
-
Maintain high-quality bar in projects from the start and champion quality improvements by implementing better technical practices
-
Work with other teams to define the subsystem level architecture and strategies for implementation
-
Initiate large projects with complex architecture, breaking it down to the right logical components so others can be utilized effectively
-
Improve and deliver reliable software through requirements generation, continuous integration, automated testing, issue tracking, and code reviews
-
Provide technical leadership, guidance and mentorship to Senior and Staff engineers as they propose, prototype, evaluate, and iterate solutions, as well as through their career progression
-
Lead large initiatives involving many stakeholders by driving impact analysis, and ensuring alignment with the larger architectural roadmap
-
Drive architecture standards, patterns, and principles
Your Skills & Abilities:
-
Minimum Bachelor’s degree in Computer Science, Software Engineering, Electronics & Communication, Electrical Engineering, or related degree
-
10+ years of experience in Embedded Software development and launching quality software into production
-
Demonstrated successful technical track record leading software development teams in complex system environments
-
Experience with safety critical development and testing in regulated environments (examples include FDA, FAA, Automotive, Aerospace)
-
Experience with real-time operating systems or middleware
-
Proficiency with C/C++
What will give you a competitive edge:
-
Experience developing on and for embedded RTOS / Linux / POSIX systems
-
Experience applying and mentoring team members on software best practices
-
Experience with embedded build systems, CI/CD and test automation
Company Vehicle: Upon successful completion of a motor vehicle report review, you will be eligible to participate in a company vehicle evaluation program, through which you will be assigned a General Motors vehicle to drive and evaluate. Note: program participants are required to purchase/lease a qualifying GM vehicle every four years unless one of a limited number of exceptions applies.