> Markdown version of [/jobs/ext/1732980-staff-software-engineer-linux-kernel-driver](https://www.wearedevelopers.com/jobs/ext/1732980-staff-software-engineer-linux-kernel-driver). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Staff Software Engineer, Linux Kernel & Driver... - **Company:** General Motors - **Location:** Austin, TX, United States - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** Board Bringup, Wireless LAN, Computing Platforms, Bluetooth, Booting (BIOS), Communications Protocols, Computer Programming, Software Debugging, Device Drivers, File Systems, Memory Management, Linux on Embedded Systems, Embedded Software, Ethernet, Firmware, Joint Test Action (IEEE Standards), Linux Kernel, Linux System Administration, Network Connections, Network Protocols, Open Source Technology, PCI Express, Systems Integration, USB, Serial Peripheral Interface, Hardware Testing, Reliability of Systems, Perf (Linux), Hardware Infrastructure, U-Boot - **Published:** July 28, 2026 - **Apply:** https://www.juju.com/job/00000000gk6rkx ## About the Role * Bachelor's degree in electrical engineering or a related field, or Work equivalent experience * 8+ years of experience in embedded Linux kernel development, device driver programming, and board bring-up. * Expertise in Linux kernel internals, including memory management, scheduling, file systems, and IPC mechanisms. * Experience in camera bring-up, including MIPI-CSI, ISP tuning, V4L2 framework, and image processing pipelines. * Strong experience with BSP development, bootloaders (e.g., U-Boot), and firmware integration. * Deep knowledge of communication protocols such as USB, PCIe, I2C, SPI, and MIPI-CSI. * Experience with Ethernet interfaces (WLAN, LAN) and network protocols (BLE, Bluetooth 5.0). * Proficiency in diagnostics, health monitoring, and fault detection for embedded systems. * Familiarity with manufacturing and production support, including hardware validation, firmware flashing, and end-of-line testing. * Proficiency in low-level debugging tools (e.g., JTAG, GDB, ftrace, kdump, perf). * Experience with SoC architectures and hardware interaction at the register level. * Knowledge of power management techniques, security frameworks, and real-time optimizations in Linux-based systems. * Strong problem-solving skills and the ability to analyze complex system issues across software and hardware domains. * Excellent communication skills with the ability to work effectively in cross-functional teams. _Preferred Qualifications_ * Bachelor's degree in electrical engineering or a related field. Advanced degree preferred. * 8+ years of experience in embedded Linux kernel development, device driver programming, and board bring-up. * Expertise in Linux kernel internals, including memory management, scheduling, file systems, and IPC mechanisms. * Experience in camera bring-up, including MIPI-CSI, ISP tuning, V4L2 framework, and image processing pipelines. * Strong experience with BSP development, bootloaders (e.g., U-Boot), and firmware integration. * Deep knowledge of communication protocols such as USB, PCIe, I2C, SPI, and MIPI-CSI. * Experience with Ethernet interfaces (WLAN, LAN) and network protocols (BLE, Bluetooth 5.0). * Proficiency in diagnostics, health monitoring, and fault detection for embedded systems. * Familiarity with manufacturing and production support, including hardware validation, firmware flashing, and end-of-line testing. * Proficiency in low-level debugging tools (e.g., JTAG, GDB, ftrace, kdump, perf). * Experience with SoC architectures and hardware interaction at the register level. * Knowledge of power management techniques, security frameworks, and real-time optimizations in Linux-based systems. * Strong problem-solving skills and the ability to analyze complex system issues across software and hardware domains. * Excellent communication skills with the ability to work effectively in cross-functional teams. ## Description _Hybrid: This role is categorized as hybrid. This means the successful candidate is expected to report to [Austin, TX] three times per week, at minimum [or other frequency dictated by the business_ _if more than 3 days_ _]._, General Motors is seeking a highly skilled and experienced professional to join our team as a **Staff Software Engineer, Linux Kernel & Driver Development** . As a global leader in the automotive industry, General Motors is committed to delivering high-quality vehicles that exceed customer expectations. This role will be instrumental in the bring-up of next-generation automotive computing platforms, focusing on Linux kernel development, device drivers, low-level system integration, diagnostics, and health monitoring for our in-vehicle infotainment and embedded systems. _Specific job responsibilities include:_ * Develop and enhance Linux kernel and device drivers, including those for camera sensors, display interfaces, multimedia subsystems, and networking (WLAN, LAN, BLE, BT5.0). * Lead system bring-up activities, including bootloader configuration, camera pipeline initialization, board support package (BSP) development, and low-level debugging. * Integrate and optimize hardware components, including USB, PCIe, I2C-connected peripherals, and Ethernet interfaces to ensure seamless operation within our embedded software stack. * Develop and implement diagnostics and health monitoring solutions, ensuring system reliability, predictive maintenance, and fault detection in critical automotive systems. * Analyze and troubleshoot low-level system issues, particularly in camera interfaces (MIPI-CSI, ISP bring-up), high-speed data buses, and network connectivity. * Support manufacturing and production processes, including hardware validation, firmware flashing, and end-of-line testing to ensure smooth integration of software into production vehicles. * Work closely with hardware teams to validate and debug platform issues, ensuring optimal hardware-software interaction. * Contribute to upstream Linux kernel development and work with open-source communities where applicable. * Define Objectives and Key Results (OKRs) and work towards continuously improving software stability, performance, and maintainability. ## Related Videos - [The best of two worlds - Bringing enterprise-grade Linux to the vehicle](https://www.wearedevelopers.com/videos/67-the-best-of-two-worlds-bringing-enterprise-grade-linux-to-the-vehicle) - [Prototyping with Hardware and the Web](https://www.wearedevelopers.com/videos/651-prototyping-with-hardware-and-the-web) - [Playing Pong on a shoulder press machine](https://www.wearedevelopers.com/videos/100140-playing-pong-on-a-shoulder-press-machine) - [For the Cars and the Curious: Android Drift](https://www.wearedevelopers.com/videos/499-for-the-cars-and-the-curious-android-drift) - [Project Fugu: Extending the web](https://www.wearedevelopers.com/videos/832-project-fugu-extending-the-web) - [Agent Smith Gets Hardware: Autonomous IoT Hacking From Debug Port to Cloud API](https://www.wearedevelopers.com/videos/100258-agent-smith-gets-hardware-autonomous-iot-hacking-from-debug-port-to-cloud-api) ## Related Articles - [How software is steering vehicle technology](https://www.wearedevelopers.com/magazine/515-how-software-is-steering-vehicle-technology) - [Top Characteristics of a Software Engineer](https://www.wearedevelopers.com/magazine/166-top-characteristics-of-a-software-engineer) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated) - [Where To Find Software Engineering Jobs](https://www.wearedevelopers.com/magazine/396-where-to-find-software-engineering-jobs)