About The Position

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.

Requirements

  • 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.

Nice To Haves

  • 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.

Responsibilities

  • 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.

Benefits

  • This job may be eligible for relocation benefits.
  • 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.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service