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).
The Principal Software Engineer at GM should be an experienced leader who cares deeply about software and software quality. As a Principal Software Engineer, you will be responsible for designing, documenting, and implementing complex, highly scalable, low-latency software on custom embedded Linux and RTOS-based systems. Your work will be the foundational software on which the rest of GM AV stack builds upon.
Job Responsibility:
Work with executive leadership to set the technology direction for embedded system development with a focus on robotics solutions
Define a technical vision for mission-critical parts of embedded systems development
Work across orgs to ensure that the joint architecture across the full stack is coherent and is capable of solving relevant problems
Lead large initiatives involving many stakeholders by driving impact analysis and ensuring alignment with (and existence of) the larger architectural roadmap
Maintain alignment between senior leadership and engineering teams through effective executive communication
Maintain very high-quality bar in projects from the start and champion quality improvements by implementing better technical practices
Work with other teams to define the system 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
Mentor others and be a role model for the team
Providing technical leadership, guidance and mentorship to our robotics senior+ engineers as they propose, prototype, evaluate, and iterate solutions, as well as through their career progression
Set and maintain a high technical bar for hiring
Advances recognized leading edge technologies and fosters an environment of innovation in others
Drive architecture standards, patterns, and principles
to disseminate information and strategy across the engineering org
to provide a sounding board for engineering teams addressing complex design topics, and to review/approve impactful, cross-cutting architecture designs
Requirements:
Proven experience writing production-quality software in multiple shipping products on custom hardware
Proficiency with C
Experience with Linux kernel or other RTOS driver development
Successful use of accelerator hardware (e.g., FPGA, DSP, embedded GPU, Tensor Processing Units)
Familiar with heterogeneous compute systems (i.e., a mix of Intel, ARMv8, other processor types)
Experience in kernel drivers/frameworks and embedded-linux build system
Experience applying and mentoring team members on software best practices
Effective at influencing others and building consensus even over contentious technical debates
Excellent verbal and written communication skills -- able to advise leadership at the director+ level on technical strategy
Expert at scoping and leading large ambiguous cross-functional engineering projects
What we offer:
medical
dental
vision
Health Savings Account
Flexible Spending Accounts
retirement savings plan
sickness and accident benefits
life insurance
paid vacation & holidays
tuition assistance programs
employee assistance program
GM vehicle discounts
incentive pay program based on company performance, job level, and individual performance