Gm logo

Staff Software Engineer, Compute Systems Software — Embedded Linux Platform

Gm

HybridMountain View, CAlead$217kPosted 2h ago

Job description

Job Description

The Vehicle Experiences Engine at GM is transforming how millions of people interact with their vehicles by building the software engines behind next-generation digital experiences. At the core of this transformation is the Compute Systems Software team — the group that delivers the foundational embedded platform for GM’s software-defined vehicles.

As a Staff Software Engineer, Compute Systems Software, you will lead the design, development, integration, and debugging of the embedded Linux platform that powers GM’s in-vehicle compute systems. You will work deeply across the Linux kernel, board support packages (BSPs), device drivers, boot and recovery paths, build systems, and core platform services on modern ARM-based SoCs.

You will help ensure that platform software is not only functional in the lab, but performant, diagnosable, recoverable, and maintainable across production vehicle programs.

You’ll report to the Software Engineering Manager, Compute Systems Software, and collaborate closely with partners across Android Automotive OS, multimedia, connectivity, systems frameworks, safety, validation, and vehicle programs. You will also work directly with our silicon vendors to bring up new platforms, resolve complex issues, and optimize platform capabilities for GM-specific use cases.

About the Role

This is a hands-on technical leadership role focused on embedded Linux and automotive compute. You will influence architecture and engineering practices across the platform while remaining close to the code, hardware, tools, and failure modes that determine real-world system behavior.

You will:

  • Own critical pieces of the compute platform, from kernel configuration and BSP integration to device drivers, boot and recovery, and low-level system services.

  • Build and maintain Yocto-based embedded Linux distributions and the pipelines that produce production images for multiple vehicle programs and hardware variants.

  • Harden boot, recovery, watchdog, and health-monitoring paths to improve platform robustness across hardware and software failure modes.

  • Lead complex debugging and root-cause analysis across hardware, bootloaders, kernel, drivers, middleware, user space, build infrastructure, and vehicle integration.

  • Automate repetitive engineering work with shell, Python, CI/CD tooling, developer-facing utilities and AI to improve the speed and consistency of diagnosis and delivery.

  • Partner with our silicon vendors to bring up new SoCs, integrate vendor deliverables, debug issues, and improve the quality and maintainability of upstream and downstream platform code.

  • Provide technical leadership through architecture reviews, design and code reviews, mentoring, cross-team debugging, and platform-wide engineering standards.

This role is hybrid, with regular onsite collaboration at a GM technical center, consistent with GM’s hybrid work guidelines for engineering roles.

Responsibilities

Embedded Linux platform development

  • Design, implement, and maintain Linux kernel modules, device drivers, BSP components, bootloader optimizations, device-tree configurations, and low-level system services for in-vehicle compute platforms.

  • Analyze system behavior across kernel and user space, with a strong focus on correctness, performance, diagnosability, and long-term maintainability.

Yocto, build, and release systems

  • Configure and extend Yocto-based embedded Linux distributions, including layers, recipes, machine configuration, image generation, and dependency management.

  • Own and refine build systems to produce deterministic, reproducible, scalable images across multiple programs, boards, and software variants.

  • Improve build and release pipelines through automation, caching, failure isolation, actionable diagnostics, and clear ownership of pipeline health.

  • Partner with CI/CD and validation teams to ensure that platform changes are continuously tested and regression-resistant.

Performance, optimization, and debugging

  • Profile and optimize CPU, memory, I/O, boot-time, power, and thermal behavior across the embedded stack.

  • Use low-level tools such as perf, ftrace, gdb, strace, kernel tracing, crash analysis, and custom instrumentation to diagnose issues spanning software and hardware boundaries.

  • Lead root-cause analysis rather than symptom mitigation, distinguishing transient failures, systemic defects, integration problems, and hardware or vendor issues.

  • Turn difficult-to-reproduce failures into deterministic tests, better diagnostics, or automated detection wherever possible.

Engineering systems and quality

  • Contribute to automated testing and validation strategies for platform software, including unit, integration, boot, stress, fault-injection, hardware-in-the-loop, and regression testing as appropriate.

  • Improve developer experience through self-service tooling, fast feedback loops, clear ownership, and well-documented platform workflows.

  • Use Git / GitHub and high-quality code review practices to maintain code quality, traceability, and disciplined change management across a multi-team environment.

  • Contribute to upstreaming and long-term reduction of downstream patches where practical.

Technical leadership and collaboration

  • Mentor engineers through design reviews, code reviews, hands-on pairing, and structured debugging.

  • Influence architecture and execution across Android Automotive OS, multimedia, connectivity, safety, systems, validation, and vehicle integration teams.

  • Communicate complex system behavior clearly to technical and non-technical partners, especially during high-severity issues and cross-team decisions.

  • Drive alignment on priorities, reliability risks, engineering standards, and ownership boundaries.

Vendor and cross-company partnership

  • Work directly with our silicon vendors to integrate BSPs and platform deliverables, resolve defects, and improve vendor engagement and issue turnaround.

  • Evaluate vendor code and recommendations critically, balancing time-to-integration with maintainability, performance, reliability, security, and upstream alignment.

Requirements

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

  • 10+ years of professional experience in embedded systems, kernel-level, or platform software development, including delivery of production software in automotive or similarly complex embedded domains.

  • Deep expertise with embedded Linux on ARM-based SoCs, including several of the following:

    • Linux kernel subsystems, kernel configuration, scheduling, memory, storage, networking, power, or low-level system behavior.

    • Device-driver development, debugging, and hardware interaction.

    • BSP integration, bootloaders, board bring-up, device-tree configuration, and peripheral enablement.

    • Hardware abstraction and enablement for new boards, peripherals, and SoC platforms.

  • Strong hands-on experience with Yocto or a comparable embedded Linux build system, with a track record of shipping commercial embedded Linux deployments.

  • Demonstrated strength in system performance, optimization, and complex debugging, with the ability to lead root-cause analysis across hardware, kernel, drivers, middleware, and user space.

  • Exposure to Site Reliability Engineering (SRE) or production engineering practices, including observability, automation, incident response, and systematic post-incident improvement, applied to complex software platforms.

  • Strong experience with build systems and development tooling, including Make-based build flows, Git / GitHub, code review, CI/CD pipelines, automated testing, and release-quality engineering.

  • Strong proficiency in C, plus practical experience with Python and shell scripting such as Bash for automation, tooling, diagnostics, and debugging.

  • Demonstrated technical leadership through architecture direction, mentoring, design and code reviews, cross-team debugging, and driving execution across organizational boundaries.

  • Strong communication and collaboration skills, with the ability to influence technical decisions, align partner teams, and explain complex system-level topics clearly.

  • Experience working directly with silicon vendors or strategic platform partners such as Qualcomm to integrate deliverables, resolve issues, and optimize platform capabilities.

Desired Skills

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

  • Experience contributing to or upstreaming changes in the Linux kernel or related open-source projects.

  • Familiarity with Android Automotive OS, HAL integration, and multimedia pipelines such as audio, video, camera, and graphics.

  • Experience with crash analysis, platform diagnostics, telemetry, fault injection, or resilience testing.

  • Exposure to automotive safety concepts such as ISO 26262, ASIL, safety islands, watchdog architectures, and health monitoring frameworks.

  • Experience with secure boot, trusted execution environments, over-the-air updates, rollback, A/B partitions, or production recovery strategies.

  • Deep comfort working in Linux / UNIX command-line environments and using classic tools such as shell, core utilities, gdb, perf, strace, and kernel tracing.

  • Demonstrated technical leadership in mentoring peers, leading cross-team debugging efforts, and driving platform-wide improvements in reliability, performance, and developer experience.

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 compensation may not be representative for positions located outside of the California Bay Area.

The base salary range for this role is $217,000 and $275,000. The actual base salary a successful candidate will be offered within this range will vary based on factors relevant to the position.

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.

This role is categorized as hybrid. This means the selected candidate is expected to report to a specific location at least 3 times a week {or other frequency dictated by their manager}.

This job may be eligible for relocation benefits.

About GM

Our vision is a world with Zero Crashes, Zero Emissions and Zero Congestion and we embrace the responsibility to lead the change that will make our world better, safer and more equitable for all.

Why Join Us

We believe we all must make a choice every day – individually and collectively – to drive meaningful change through our words, our deeds and our culture. Every day, we want every employee to feel they belong to one General Motors team.

Benefits Overview

From day one, we're looking out for your well-being–at work and at home–so you can focus on realizing your ambitions. Learn how GM supports a rewarding career that rewards you personally by visiting Total Rewards resources.

Non-Discrimination and Equal Employment Opportunities (U.S.)

General Motors is committed to being a workplace that is not only free of unlawful discrimination, but one that genuinely fosters inclusion and belonging. We strongly believe that providing an inclusive workplace creates an environment in which our employees can thrive and develop better products for our customers.

All employment decisions are made on a non-discriminatory basis without regard to sex, race, color, national origin, citizenship status, religion, age, disability, pregnancy or maternity status, sexual orientation, gender identity, status as a veteran or protected veteran, or any other similarly protected status in accordance with federal, state and local laws.

We encourage interested candidates to review the key responsibilities and qualifications for each role and apply for any positions that match their skills and capabilities. Applicants in the recruitment process may be required, where applicable, to successfully complete a role-related assessment(s) and/or a pre-employment screening prior to beginning employment. To learn more, visit How we Hire.

Accommodations

General Motors offers opportunities to all job seekers including individuals with disabilities. If you need a reasonable accommodation to assist with your job search or application for employment, emailus or call us at 1-800-865-7580. In your email, please include a description of the specific accommodation you are requesting as well as the job title and requisition number of the position for which you are applying.