[Skip To Content]

Staff Software Engineer – Core OS, Vehicle Compute

  • Emplacement
    • Lynnwood, Washington
    • Mountain View, California
  • Type d'emploi Full time
  • Posté
  • Job Requisition JR-202620206

Description

At General Motors, our product teams are redefining mobility. Through a human-centered design process, we create vehicles and experiences that are designed not just to be seen, but to be felt. We’re turning today’s impossible into tomorrow’s standard —from breakthrough hardware and battery systems to intuitive design, intelligent software, and next-generation safety and entertainment features.    

Every day, our products move millions of people as we aim to make driving safer, smarter, and more connected, shaping the future of transportation on a global scale  

The Role  

The Core OS group is a newly formed team standing up the operating-system foundation GM's software-defined vehicles run on: the virtualization and platform-services layer that lets embedded Linux, Android, and QNX share vehicle compute safely and efficiently. As one of the founding engineers, you'll set technical direction from a blank sheet across hypervisor integration, guest OS enablement, resource partitioning, the boot and secure-boot chain, container runtime, and the health and fault-management services that keep the platform reliable in production. The architecture you choose now becomes the platform every GM vehicle software team builds on, and getting it right means debugging across boundaries most engineers never cross — guest to host, software to silicon, between partitions with different safety requirements. 

What You’ll Do  

  • Own critical hypervisor and virtual machine capabilities, including virtual machine definitions, CPU and memory partitioning, device assignment and passthrough, and virtio-based device models. 

  • Design and optimize communication between virtual machines using shared memory, message passing, and virtualized input/output for throughput, latency, and deterministic behavior. 

  • Enable and maintain guest operating systems across embedded Linux, including Yocto-based distributions, Android, and QNX, with consistent access to platform services, time synchronization, lifecycle control, interfaces, and developer tooling. 

  • Implement and optimize the boot and secure-boot chain across partitions, including startup sequencing, boot-time performance, and platform-integrity verification. 

  • Build platform services for resource governance, health monitoring, watchdogs, fault detection, fault handling, and recovery, while meeting automotive safety and availability requirements. 

  • Develop container-runtime and workload-management capabilities for in-vehicle applications, including isolation, resource limits, lifecycle management, updates, and rollbacks. 

  • Profile, optimize, and debug CPU, memory, input/output, and interrupt behavior across the virtualized stack. Lead root-cause analysis using traces, logs, and low-level tools to resolve issues spanning guest operating systems, hypervisors, firmware, and silicon. 

  • Improve engineering quality through continuous integration and continuous delivery (CI/CD), bench and hardware-in-the-loop (HIL) automation, validation strategies, Git and GitHub workflows, and code reviews. Mentor engineers and collaborate with silicon enablement, guest operating system, board support package (BSP), functional safety, and cybersecurity teams. 

Your Skills & Abilities (Required Qualifications)  

  • Bachelor’s degree in Computer Science, Electrical Engineering, Computer Engineering, or a related field; or equivalent practical experience. 

  • Ten or more years of professional experience in embedded, systems, or kernel-level software development, including production software in automotive or similarly complex embedded domains. 

  • Deep expertise in operating-system-level software on Arm-based system-on-chips (SoCs), with experience in several of the following areas: 

  • Hypervisor integration, virtual machine configuration, and device virtualization 

  • Real-time operating systems and deterministic scheduling 

  • Linux kernel subsystems, kernel configuration, and low-level system behavior 

  • Bootloaders, secure boot, and platform startup sequencing 

  • Experience delivering commercial embedded systems using Yocto or comparable embedded build systems. 

  • Strong experience with system performance, optimization, and complex debugging, including root-cause analysis across hardware, firmware, hypervisors, kernels, and user space. 

  • Experience with build systems and development tools, including Git, GitHub, CI/CD pipelines, automated testing, and release-quality engineering for platform software. 

  • Strong proficiency in C and C++, plus practical experience with Python and shell scripting for automation, tooling, and debugging. 

  • Demonstrated technical leadership through architecture contributions, mentoring, design reviews, code reviews, and cross-team execution. 

  • Strong written and verbal communication skills, with the ability to influence technical decisions and explain complex system-level topics clearly. 

What Will Give You a Competitive Edge (Preferred Qualifications)  

  • Master’s degree in Computer Science, Electrical Engineering, Computer Engineering, or a related field. 

  • Hands-on experience with hypervisors such as Gunyah, QNX Hypervisor, Xen, or KVM/Arm, including virtio device model development. 

  • Experience with QNX Software Development Platform (SDP), Android Open Source Project (AOSP), Android Automotive, or Yocto as guest environments on virtualized platforms. 

  • Experience with automotive functional safety, including ISO 26262, Automotive Safety Integrity Levels (ASIL), freedom from interference, safety islands, or health-monitoring frameworks. 

  • Experience with automotive cybersecurity, including ISO/SAE 21434. 

  • Experience with container runtimes such as Open Container Initiative (OCI)-compliant runtimes, Podman, or systemd-based isolation in resource-constrained environments. 

  • Familiarity with trusted execution environments, secure-boot chains, and key management on embedded platforms. 

  • Experience with Rust in systems or safety-relevant contexts. 

  • Strong command-line experience in Linux or UNIX environments, including tools such as GDB, perf, ftrace, strace, and hypervisor-level tracing. 

  • Contributions to open-source virtualization or operating-system projects. 

Compensation: The compensation information is a good faith estimate only. It is based on what a successful applicant might be paid in accordance with applicable state laws. The salary range for this role is $160,200–$330,400 . The actual base salary a successful candidate will be offered within this range will vary based on factors relevant to the position, as well as the geography of the selected candidate.

Bonus Potential: An incentive pay program offers payouts based on company performance, job level, and individual performance.

Benefits: GM offers a variety of health and wellbeing benefit programs. Benefit options include medical, dental, vision, Health Savings Account, Flexible Spending Accounts, retirement savings plan, sickness and accident benefits, life insurance, paid vacation and holidays, tuition assistance programs, employee assistance program, GM vehicle discounts, and more.

Ce poste est hybride. Cela signifie que le candidat retenu doit se rendre sur un site donné au moins trois fois par semaine {ou à une autre fréquence imposée par son supérieur hiérarchique}.

Ce poste peut donner droit à des indemnités de déménagement.

Renseignements sur la diversité

General Motors est résolue à être un lieu de travail qui est non seulement exempt de discrimination illégale, mais aussi un endroit qui favorise véritablement l'inclusion et l'appartenance. Nous sommes convaincus que la diversité de la main-d'œuvre permet de créer un environnement dans lequel nos employés peuvent s'épanouir et développer de meilleurs produits pour nos clients. Nous encourageons les candidats intéressés à consulter les principales responsabilités et compétences requises pour chaque rôle et à postuler à tout poste qui leur correspond. Dans le cadre du processus de recrutement, les candidats peuvent devoir, le cas échéant, réussir une évaluation liée au poste ou une présélection d'emploi avant d'être embauchés.  Pour en savoir plus, consultez notre processus de recrutement.

Déclaration concernant l'égalité d'accès à l'emploi (É.-U.)

General Motors est fière d'être un employeur souscrivant au principe de l'égalité d'accès à l'emploi.  Tous les candidats qualifiés seront pris en compte, sans égard à la race, à la couleur, à la religion, au sexe, à l'orientation sexuelle, à l'identité de genre, à l'origine ethnique, aux situations de handicap ou au statut protégé d'ancien combattant. 

Aménagements (É.-U. et Canada)

General Motors offre des occasions à tous les chercheurs d'emploi, y compris les personnes handicapées. Si vous avez besoin d'un accommodement raisonnable pour vous aider dans votre recherche d'emploi ou la soumission de votre candidature, envoyez-nous un courriel à l'adresse [email protected] ou appelez-nous au 800 865-7580. Veuillez inclure dans votre courriel une description spécifique du type d'accommodement demandé, ainsi que le titre d'emploi et le numéro de demande du poste auquel vous postulez.