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 96+ Linux Software Engineer jobs











Senior Embedded Linux Software Engineer
Small Description
We are looking for a Senior Embedded Linux Software Engineer to join an R&D team developing next-generation embedded software solutions for critical communication and safety systems.
In this role, you will contribute to the full software development lifecycle, from architecture and design to development, debugging, testing and deployment. You will work on embedded Linux-based systems and collaborate with multidisciplinary teams across different locations.
This is a hybrid position requiring 3 days per week onsite.
Mission
As a Senior Embedded Linux Software Engineer, you will contribute to the design and development of reliable, high-performance embedded applications.
Your main responsibilities will include:
Participate in all phases of the embedded software development lifecycle, from requirements analysis and design through development, testing and deployment.
Design, develop and maintain embedded applications running on Yocto-based Linux systems.
Develop multithreaded, multiprocess and real-time applications in C and C++.
Analyze technical requirements and contribute to software architecture and design decisions.
Develop and optimize software features with a focus on performance, reliability and maintainability.
Work closely with software, hardware, systems and other engineering teams to deliver integrated solutions.
Debug and troubleshoot software and hardware-related issues using appropriate development and test tools.
Perform code reviews and contribute to software quality and development best practices.
Participate in software integration, verification and validation activities.
Work with Azure IoT and connected embedded systems.
Contribute to continuous improvement of development processes, tools and software solutions.
Support the identification and remediation of software security vulnerabilities, including CVE remediation.
Collaborate with teams located across different departments, organizations and international locations.
Contribute technical expertise and provide support and knowledge sharing to other team members.
Plan and estimate development activities and contribute to project planning.
Prepare and maintain technical documentation related to software design, development and testing.
Profile
Bachelor’s degree in Software Engineering, Electrical Engineering, Computer Science or a related technical field.
7+ years of experience in embedded software development.
Strong experience developing software for embedded Yocto Linux-based systems.
Strong programming skills in C and C++.
Experience developing multithreaded, multiprocess and real-time embedded applications.
Experience with Yocto / BitBake.
Experience with Azure IoT or similar IoT platforms.
Good understanding of formal software development methodologies and engineering practices.
Ability to plan, estimate and manage software development activities.
Strong debugging and troubleshooting skills.
Hands-on experience with development and test tools such as GDB, I2C debuggers, oscilloscopes and logic analyzers.
Ability to work independently while collaborating effectively with multidisciplinary and international teams.
Strong analytical and problem-solving skills.
Excellent communication and teamwork skills.
Assets
Knowledge of network programming and communication protocols.
Experience with software security and CVE remediation.
Experience working with rigorous product approval or certification standards such as UL / ULc.
Experience with Git or other version control systems.
Experience with artifact management tools such as Artifactory.
Experience with issue tracking tools such as JIRA or Integrity.
Experience with scripting and build tools such as Bash, Make and Python.
Experience with Atlassian tools, including Confluence.
Experience working on safety-critical, industrial, IoT or connected embedded systems is an asset.
Work Arrangement
Hybrid – 3 days per week onsite in Westford.
Why choose us
- An international community bringing together more than 110 different nationalities
- An environment where trust is central: 70% of our leaders started their careers at the entry level
- A strong training system with our internal Academy and more than 250 modules available
- A dynamic work environment that frequently comes together for internal events (afterworks, team buildings, etc.)
Amaris Consulting promotes equal opportunities. We are committed to bringing together people from diverse backgrounds and creating an inclusive work environment. In this regard, we welcome applications from all qualified individuals, regardless of sex, sexual orientation, race, ethnicity, beliefs, age, marital status, disability, or other characteristics.
Who are we?
Amaris Consulting is an independent technology consulting firm providing guidance and solutions to businesses. With more than 1000 clients across the globe, we have been rolling out solutions in major projects for over a decade – this is made possible by an international team of 7,600 people spread across 5 continents and more than 60 countries. Our solutions focus on four different Business Lines: Information System & Digital, Telecom, Life Sciences and Engineering. We’re focused on building and nurturing a top talent community where all our team members can achieve their full potential. Amaris is your steppingstone to cross rivers of change, meet challenges and achieve all your projects with success.At Amaris, we strive to provide our candidates with the best possible recruitment experience. We like to get to know our candidates, challenge them, and be able to give them proper feedback as quickly as possible. Here's what our recruitment process looks like:
Brief Call: Our process typically begins with a brief virtual/phone conversation to get to know you! The objective? Learn about you, understand your motivations, and make sure we have the right job for you!
Interviews (the average number of interviews is 3 - the number may vary depending on the level of seniority required for the position). During the interviews, you will meet people from our team: your line manager of course, but also other people related to your future role. We will talk in depth about you, your experience, and skills, but also about the position and what will be expected of you. Of course, you will also get to know Amaris: our culture, our roots, our teams, and your career opportunities!
Case study: Depending on the position, we may ask you to take a test. This could be a role play, a technical assessment, a problem-solving scenario, etc.
As you know, every person is different and so is every role in a company. That is why we have to adapt accordingly, and the process may differ slightly at times. However, please know that we always put ourselves in the candidate's shoes to ensure they have the best possible experience.
We look forward to meeting you!
Linux Software Engineer Jobs by Experience Level
See All 96 Linux Software Engineer Jobs
Find roles that match your experience and apply in just a few clicks.
Find Linux Software Engineer JobsLinux Software Engineer Job Market
Who's Hiring
- Akina10

- Arista Networks6

- NVIDIA5

- Tesla4

- Collins Aerospace4

Top Industries Hiring
- Technology & Software13
- Insurance3
- Electronics & Hardware3
- Automotive1
- Science & Research1
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 Akina, Arista Networks, and NVIDIA, with the largest share of openings in California, Maryland, and Texas, based on current listings on Migrate Mate as of September 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 33% of linux software engineer openings are fully remote or hybrid as of September 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 96 Linux Software Engineer Jobs
Find roles that match your experience and apply in just a few clicks.
Find Linux Software Engineer Jobs