Linux Software Engineer Jobs
Linux Software Engineer jobs are open across enterprise technology, cloud infrastructure, defense, and embedded systems, from new-grad to principal and staff levels, with specializations in kernel development, device drivers, and systems programming. Find a role that fits from the openings below and apply directly.
Find Linux Software Engineer JobsOverview
Showing 5 of 47+ Linux Software Engineer jobs











About the Team
The Sensors and System Software team is crucial to autonomous driving, developing the core software that allows our vehicles to perceive and understand the world around them. Join our team and directly contribute to groundbreaking autonomous driving technology, revolutionizing transportation. Work with state-of-the-art sensors and technologies, pushing the boundaries of perception. Learn from top engineers, tackle complex challenges, and expand your expertise in real-time systems, embedded software, and sensor fusion. Thrive in a dynamic team of experts, fostering innovation and intellectual stimulation.
About the Role
We are seeking a highly experienced Embedded Linux Software Engineer responsible for building and maintaining the custom Linux-based systems that power our cutting-edge embedded devices. You'll work closely with hardware and sensor team colleagues to develop and optimize the low-level software that drives our core technologies.
- Perform initial board bring-up on new hardware revisions, working closely with hardware engineers to debug and validate system functionality.
- Working closely with other teams to build and maintain our custom Linux distributions to enable testing, manufacturing and production operations for various embedded devices.
- Write, port, and debug complex Linux device drivers for a wide array of vehicle-critical peripherals, including: GMSL/FPD-Link cameras, automotive Ethernet and various peripherals: I2C, SPI, PCIe, GPIO, and UART.
- Support the users by providing technical support and debugging cross disciplinary software and hardware-related problems.
- Develop, optimize and maintain low-latency, robust low-level userspace software for Camera, LiDAR, Radar, IMU, GNSS, Microphones, and other autonomous vehicle sensors and actuators using C++/Python.
- Bachelor's or Master's degree in Computer Science, Robotics, Electrical Engineering and related fields.
- Minimum of 5 years of experience in embedded software development.
- Strong proficiency in C/C++ programming for real-time embedded systems, including working in an asynchronous environment with multiple real-time, low-latency, safety-critical systems processes.
- Strong skills in Python and Bash for automation, testing and supporting tasks.
- Proven, hands-on experience with embedded Linux kernel, including preempt_rt, device drivers and system services development for ARM-based platforms.
- Demonstrable experience with board bring-up on custom hardware.
- Understanding the electrical engineering fundamentals to be able to perform schematics and designs reviews and hardware debugging using oscilloscope, logic analyzers, etc.
- Experience with common automotive hardware interfaces like CAN, SPI, I2C, PCIe, Ethernet.
- Experience with Linux networking and debugging network-related issues.
Nice to Have
- 5+ years of experience in software engineering, preferably in self-driving cars or other autonomous vehicles or robotic systems.
- Experience with the Nvidia embedded platforms, including the video processing subsystem - ISP, SerDes, Hardware encoding.
- Understanding fundamentals of Camera, LiDAR, Radar, IMU, GNSS, and other sensor technologies, including their principles of operation, pros/cons and limitations.
- Familiarity with ROS or similar frameworks and related communication protocols.
See All 47+ Linux Software Engineer Jobs
Jump back to the full list of openings and apply to any linux software engineer role that fits.
Find Linux Software Engineer JobsLinux Software Engineer Job Market
A snapshot from current openings nationwide, updated as new roles post.
Who's Hiring
- Arista Networks4

- Qualcomm4

- Investigo3

- Aurora2

- Intel2

Top Industries Hiring
- Technology & Software27
- Electronics & Hardware9
- Manufacturing4
- Staffing & Recruiting4
- Automotive3
What Employers Look For
The qualifications that appear most often in linux software engineer jobs.
- Proficiency in C and C++ with direct experience writing or debugging Linux kernel code
- Experience with embedded Linux platforms, device drivers, or board support package development
- Familiarity with version control using Git, including patch-based workflows and code review
- Understanding of operating system internals including scheduling, memory management, and file systems
- Experience with debugging tools such as GDB, perf, strace, and kernel tracing frameworks
- Bachelor's degree in computer science, computer engineering, electrical engineering, or a related field
Tips for Your Linux Software Engineer Job Search
Tailor your resume for kernel work
Hiring managers for linux software engineer roles scan for kernel version familiarity, patch submission history, and low-level debugging tools like GDB and perf. List the specific subsystems you've worked in, such as networking, storage, or memory management, rather than just writing 'Linux kernel development'.
Show your open-source contributions clearly
Employers weight upstream contributions heavily for linux software engineer candidates. Link directly to merged patches, mailing list threads, or repositories in your resume header. A single accepted kernel patch to a mainline subsystem carries more signal than a list of personal projects.
Apply early to roles that fit
Migrate Mate lists linux software engineer openings from across the United States in one place, so you can find roles that match your specialization and apply directly to each listing.
Filter by stack depth, not just title
Linux software engineer postings vary widely, from pure userspace to bare-metal firmware. Read the job description for mentions of toolchains like Yocto or Buildroot, RTOS integration, or syscall-level work to confirm the role matches your depth before you spend time on a cover letter.
Prepare for live debugging interviews
Technical interviews for linux software engineer positions frequently include a live kernel trace or system call analysis exercise. Practice reproducing race conditions, interpreting strace output, and explaining memory map behavior out loud, since interviewers assess both your reasoning process and your command-line fluency.
Negotiate using scope, not just title
When you reach the offer stage, ask about the scope of kernel ownership, number of target architectures, and release cadence. These details signal actual seniority and workload, and they give you concrete grounds to discuss leveling if the initial offer doesn't reflect your depth of experience.
Linux Software Engineer Jobs: Frequently Asked Questions
Which companies are hiring the most linux software engineers?
The companies hiring the most linux software engineers right now include Arista Networks, Qualcomm, and Investigo, with the largest share of openings in California, Texas, and Oregon, based on current listings on Migrate Mate as of June 2026. Demand is concentrated in sectors that rely on custom hardware integration and cloud infrastructure at scale.
How many linux software engineer jobs are remote?
About 32% of linux software engineer openings are fully remote or hybrid as of June 2026, though availability depends strongly on the specialization. Userspace and cloud-adjacent roles are more likely to support remote work, while positions involving hardware bring-up, lab access, or classified systems typically require on-site presence.
How do you become a linux software engineer?
Start by building a strong foundation in C programming and operating system concepts through coursework or self-study using open resources. Set up your own Linux development environment, compile a custom kernel, and write a basic loadable kernel module. Contributing patches to an open-source Linux project, even small bug fixes, demonstrates practical skill to employers. From there, target entry-level roles focused on embedded systems, device drivers, or platform tooling.
Can you get hired as a linux software engineer with little experience?
Yes, entry-level linux software engineer roles exist, particularly in embedded systems and platform tooling teams that expect to train new engineers on company-specific hardware. The strongest way to compensate for limited professional experience is a GitHub profile that shows real kernel or driver work, even if it is coursework-based. Referencing the O*NET occupation profile can also help you align your skills language with what employers actually list.
What does the linux software engineer interview process look like?
Most linux software engineer interviews begin with a recruiter screen focused on background and specialization, followed by a technical phone interview covering C programming, memory management, and OS fundamentals. On-site or virtual loops typically include a system design round, a live debugging exercise using tools like strace or gdb, and a code review or patch analysis session. Final rounds often involve a conversation with a senior engineer or engineering manager about architecture decisions.
Where can I find and apply to linux software engineer jobs?
You can find and apply to linux software engineer jobs on Migrate Mate, which lists current openings from across the United States in one place. Search for roles that match your specialization, whether that is kernel development, embedded systems, or platform engineering, and apply directly to each listing that fits.
See All 47+ Linux Software Engineer Jobs
Jump back to the full list of openings and apply to any linux software engineer role that fits.
Find Linux Software Engineer Jobs