1

Embedded Linux Engineer Jobs in California (NOW HIRING)

Embedded Linux Engineer

Costa Mesa, CA ยท On-site

$166K - $220K/yr

Experience developing embedded Linux systems using Yocto, buildroot, or similar systems * Familiarity with packaging CUDA libraries and applications * Familiarity with functional programming ...

Embedded Linux Engineer

Costa Mesa, CA ยท On-site

$166K - $220K/yr

Experience developing embedded Linux systems using Yocto, buildroot, or similar systems * Familiarity with packaging CUDA libraries and applications * Familiarity with functional programming ...

Senior Embedded Linux Engineer

San Mateo, CA ยท On-site

$141K - $185K/yr

... Linux development as a Software Engineer. * Proficient in C/C++ * Preferred experience working with embedded Linux, cameras, and audio systems * Expertise with Yocto, Bash * Familiar with Linux ...

Embedded Linux Software Engineer

Irvine, CA ยท On-site

$100 - $150K/hr

Based in Irvine, CA, we are seeking highly passionate, skilled and experienced Embedded Software Engineers with expertise in Linux BSP, device driver development, and debugging to join our dynamic ...

next page

Showing results 1-20

Embedded Linux Engineer information

See California salary details

$82.9K

$133.1K

$187K

How much do embedded linux engineer jobs pay per year?

As of Jul 1, 2026, the average yearly pay for embedded linux engineer in California is $133,112.00, according to ZipRecruiter salary data. Most workers in this role earn between $107,600.00 and $158,400.00 per year, depending on experience, location, and employer.

What is the difference between Embedded Linux Engineer vs Firmware Engineer?

AspectEmbedded Linux EngineerFirmware Engineer
Required CredentialsBachelor's in Computer Engineering, Electrical Engineering, or related; Linux certifications beneficialBachelor's in Electrical Engineering, Computer Engineering, or related; embedded systems certifications helpful
Work EnvironmentDevelops and maintains Linux-based embedded systems, often in hardware labs or development teamsDesigns low-level firmware for microcontrollers or hardware, typically in hardware or R&D labs
Industry UsageUsed in IoT devices, consumer electronics, automotive, and industrial systemsCommon in consumer electronics, automotive, aerospace, and industrial equipment

Embedded Linux Engineers focus on developing and maintaining Linux-based embedded systems, while Firmware Engineers work on low-level firmware for microcontrollers. Both roles require embedded systems knowledge but differ in platform focus and complexity.

What does an Embedded Linux Engineer do?

An Embedded Linux Engineer is responsible for developing, configuring, and maintaining Linux-based operating systems for embedded devices such as routers, IoT gadgets, automotive systems, and industrial controllers. They work on customizing the Linux kernel, developing device drivers, optimizing system performance, and integrating software applications with hardware. Their role often includes troubleshooting system issues, ensuring security, and supporting cross-functional teams in bringing products from concept to production. Strong programming skills in C/C++, understanding of hardware interfaces, and experience with build systems like Yocto or Buildroot are essential for this position.

What are the key skills and qualifications needed to thrive as an Embedded Linux Engineer, and why are they important?

To thrive as an Embedded Linux Engineer, you need a strong background in computer science or electrical engineering, proficiency in C/C++ programming, and experience with Linux kernel and device driver development. Familiarity with tools like Git, Yocto, Buildroot, and debugging systems such as GDB is typically required, along with knowledge of real-time operating systems (RTOS). Excellent problem-solving abilities, collaboration, and effective communication are critical soft skills for success in this role. These skills and qualifications are essential for developing reliable embedded systems, ensuring robust product performance, and facilitating efficient teamwork in complex projects.

What are some common challenges faced by Embedded Linux Engineers when integrating new hardware components?

Embedded Linux Engineers often encounter challenges such as ensuring hardware compatibility, developing or modifying device drivers, and optimizing system performance when integrating new hardware components. Debugging hardware-software interactions can be complex due to limited diagnostic tools and varying documentation quality. Additionally, engineers must frequently collaborate with hardware teams to resolve timing or communication issues, making strong cross-functional communication skills essential for success in this role.

What Does an Embedded Linux Engineer Do?

The job duties of an embedded Linux engineer revolve around working to develop software and firmware for various devices and computer systems. In this career, you work on products like smart TVs, navigation devices, networking equipment, medical instruments, industrial systems, mobile phones, and other embedded systems that use Linux. In addition to writing and testing code for Linux-based device development, you may work to fix problems with existing systems that use a Linux platform or integrate new software into existing systems.

Infographic showing various Embedded Linux Engineer job openings in California as of June 2026, with employment types broken down into 78% Full Time, 13% Part Time, 3% Temporary, and 6% Contract. Highlights an 87% Physical, 5% Hybrid, and 8% Remote job distribution, with an average salary of $133,112 per year, or $64 per hour.
Staff Embedded Linux Engineer

Staff Embedded Linux Engineer

Aurora Innovation

Mountain View, CA โ€ข On-site

$189K - $303K/yr

Other

Posted 10 days ago


Job description

Aurora hires talented people with diverse backgrounds who are ready to help build a transportation ecosystem that will make our roads safer, get crucial goods where they need to go, and make mobility more efficient and accessible for all. We are seeking a seasoned Staff Embedded Linux Developer to architect, design, and implement system-level software for our next-generation embedded platforms. This high-impact role requires deep expertise in Linux kernel internals, BSP customization with the Yocto Project, and hands-on experience with hardware interfaces like PCIe, BIOS, and DDR RAM. The ideal candidate will lead complex debugging efforts, collaborate closely with hardware teams during board bring-up, and drive performance optimization across all system components.

In this role, you will

  • ย Lead the design, development, customization, and maintenance of Board Support Packages (BSPs) for various hardware platforms using the Yocto Project build system.
  • Configure, build, and optimize the Linux kernel, bootloaders (U-Boot), and root file systems for custom hardware, ensuring system stability and performance.
  • Develop, port, and debug Linux device drivers for a wide range of hardware interfaces, including PCIe, DDR, Ethernet, I2C, SPI, and USB.
  • Collaborate with hardware engineers during initial board bring-up, debugging issues at the register and schematic levels using tools such as JTAG, oscilloscopes, and logic analyzers.
  • Implement and enhance functionalities related to the PCIe subsystem, including DMA, memory management, and interrupt handling.
  • Work with BIOS/UEFI configurations and integrate them with the embedded Linux environment as required for specific platforms (e.g., x86 architectures).
  • Optimize system performance, boot time, memory footprint, and power consumption for embedded devices.
  • Develop and maintain robust CI/CD pipelines and automated testing workflows for the embedded software stack.
  • Create Requirements and Design, conduct code reviews, mentor junior engineers, and develop unit test plans.

Required Qualifications

  • Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
  • Minimum of 8+ years of hands-on experience in embedded Linux development, with a strong background in system-level programming and board bring-up.
  • Deep expertise in the Yocto Project, including custom layer development, recipes (BitBake), and image generation.
  • Strong proficiency in C/C++ programming for embedded and kernel-level development.
  • In-depth knowledge of the Linux kernel internals, memory management, scheduling, and device driver architecture.
  • Hands-on experience with debugging tools like GDB, JTAG, Lauterbach, and oscilloscopes.
  • Strong problem-solving, analytical, and communication skills, with the ability to work effectively in cross-functional teams.

ย Desirable Qualificationsย 

  • Familiarity with secure boot, OTA updates, and system security hardening.
  • Exposure to open-source contributions and community collaboration practices.
  • Knowledge of networking protocols (TCP/IP, UDP) and real-time operating system (RTOS) concepts.
  • Knowledge of Telecommunication and/or GNSS domain

The base salary range for this position is $189,000-$303,000ย per year. Aurora's pay ranges are determined by role, level, and location. Within the range, the successful candidate's starting base pay will be determined based on factors including job-related skills, experience, qualifications, relevant education or training, and market conditions. These ranges may be modified in the future. The successful candidate will also be eligible for an annual bonus, equity compensation, and benefits.

#LI-JH1

#Mid-Senior