1

Embedded Linux Developer Jobs in North Carolina (NOW HIRING)

$134K - $176K/yr

Creates and executes designs for small sets of new functionalities as part of a software project using C, C++ on embedded Linux * Utilizes software engineering tools such as configuration management ...

Embedded Engineer - TS/SCI

Raleigh, NC · On-site

$125K - $225K/yr

Are you an innovative Embedded Software Engineer with expertise in C/C++ and Linux systems? Do you thrive in fast-paced environments where solving complex problems is the norm? Parsons is seeking ...

Embedded Software Engineer

Asheville, NC · On-site

$124K - $163K/yr

\n \n \n \n Embedded Software Engineer \n \n We are seeking an Embedded Software Engineer to join ... Linux terminal & command line tools\n \n * Algorithm & data structure knowledge\n \n * SPI, I2C ...

Experience with embedded systems and embedded Linux environments * Experience with Programming in C++ and Rust * Experience with Linux packaging, ideally for Debian * Experience with scripting ...

Skyeton Inc. is seeking a highly motivated Software Engineer to develop, integrate, and support ... Embedded Linux * Real-time operating systems (RTOS) * Robotics or autonomous systems * Flight ...

Showing results 21-40

Embedded Linux Developer information

See North Carolina salary details

$77.7K

$100.4K

$125K

How much do embedded linux developer jobs pay per year?

As of Sep 14, 2026, the average yearly pay for embedded linux developer in North Carolina is $100,368.00, according to ZipRecruiter salary data. Most workers in this role earn between $91,800.00 and $107,200.00 per year, depending on experience, location, and employer.

What is an embedded Linux developer?

Embedded Linux Developers are software engineers who specialize in designing, developing, and maintaining software for embedded systems that run on the Linux operating system. These professionals work on devices such as routers, IoT devices, automotive systems, and industrial machines, integrating Linux-based solutions tailored to hardware constraints. Their responsibilities include configuring the Linux kernel, developing device drivers, optimizing system performance, and ensuring reliable communication between hardware and software components. They must be proficient in C/C++, scripting, and have a strong understanding of Linux internals and embedded hardware.

What does an embedded Linux developer do?

As an embedded Linux developer, your duties and responsibilities are to design, test, implement, and integrate software solutions for specific pieces of hardware. Embedded technology often refers to hardware that is not commonly considered a computer, but is controlled by applications or an operating system, such as Linux. These include watches, car engines, and televisions, for example. As an embedded Linux developer, you work closely with programmers, optimization experts, quality assurance technicians, and product engineering designers, as well as all of your external customers.

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

To thrive as an Embedded Linux Developer, you need a solid understanding of Linux internals, C/C++ programming, and embedded systems architecture, typically supported by a degree in computer science or electrical engineering. Familiarity with build systems (like Yocto or Buildroot), version control (Git), and debugging tools (GDB, oscilloscope) is crucial. Strong problem-solving skills, attention to detail, and effective teamwork help set outstanding developers apart in this role. These abilities ensure reliable, efficient embedded solutions that meet complex technical requirements and integrate seamlessly into larger systems.

What are some common challenges faced by embedded Linux developers when integrating hardware and software components?

Embedded Linux Developers often encounter challenges such as managing hardware-software compatibility, optimizing system performance, and troubleshooting driver issues. Working closely with hardware engineers, they must ensure that the Linux kernel and device drivers are correctly configured to communicate with custom hardware. Debugging can be complex due to limited system resources and the need for real-time performance. Effective collaboration and strong problem-solving skills are essential for resolving these integration challenges.

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

AspectEmbedded Linux DeveloperFirmware Engineer
Required SkillsProficiency in Linux kernel, C/C++, embedded systems, device driversLow-level programming, C/C++, microcontrollers, hardware interfaces
Work EnvironmentEmbedded Linux systems, development boards, Linux-based OSMicrocontrollers, hardware prototyping, real-time systems
Industry UsageConsumer electronics, IoT devices, automotiveConsumer electronics, aerospace, industrial equipment

Embedded Linux Developers focus on developing software for Linux-based embedded systems, working with Linux kernels and device drivers. Firmware Engineers work on low-level hardware programming, often with microcontrollers and real-time systems. While both roles require C/C++ skills and embedded systems knowledge, Embedded Linux Developers typically work in Linux environments, whereas Firmware Engineers focus on hardware-level programming.

What job categories do people searching Embedded Linux Developer jobs in North Carolina look for?

The top searched job categories for Embedded Linux Developer jobs in North Carolina are:

Infographic showing various Embedded Linux Developer job openings in North Carolina as of September 2026, with employment types broken down into 87% Full Time, 4% Part Time, 1% Temporary, and 8% Contract. Highlights an 75% Physical, 5% Hybrid, and 20% Remote job distribution, with an average salary of $100,368 per year, or $48.3 per hour.

Embedded C /C++ Software Engineer 2 - Marine team

On-site

Garmin Ltd.
Electronics and Appliance Stores • 10K+ employees

$134K - $176K/yr

Other

Posted 25 days ago


Garmin rating

8.8

Company rating: 8.8 out of 10

Based on 45 frontline employees who took The Breakroom Quiz


Job description

Overview

We are seeking a full-time Embedded C/C++ Software Engineer 2 at our location in Cary, NC for our Marine Telematics Engineering team. We are seeking someone who is passionate about on-device technology and how it can be leveraged in a marine ecosystem to monitor and control essential data through varied communication protocols. In this role, you will contribute to Garmin marine products that utilize networking technologies to transport audio, video, messaging, and other data over Wi-Fi, LTE, global satellite, BLE, and CAN to implement communications services for remote operation of a vessel’s integrated systems, remote instrument sampling, and remote video monitoring. You will also work to enhance the overall marine ecosystem to ensure optimal performance and safety. You will also be responsible for developing moderately complex software and creating and executing designs for small sets of new functionalities for Garmin products and/or applications.

Essential Functions
  • Creates and executes designs for small sets of new functionalities as part of a software project using C, C++ on embedded Linux
  • Utilizes software engineering tools such as configuration management systems, build processes, and debuggers in the software development process
  • May perform as a technical leader or Lead Software Engineer for derivative software project
  • Collaborates and adds value through participation in peer code reviews, providing comments and suggestions
  • Provides reliable solutions to a variety of problems using sound problem solving techniques
  • Performs technical root cause analysis and outlines corrective action for given problemsContributes to technical research on new technologies
  • Estimates level of effort, evaluates new options of similar technology, offers suggestions to improve processes, and provides feedback on some electrical design aspects
  • Serves as a mentor to less experienced software engineers (Software Engineer 1)
Basic Qualifications
  • Bachelor’s Degree in Computer Science, Electrical Engineering, Computer Engineering, Software Engineering, Aerospace Engineering, Math, Physics or related field AND a minimum of 1 year relevant experience OR an equivalent combination of education and experience
  • Excellent academics (cumulative GPA greater than or equal to 3.0 as a general rule)
  • Demonstrated proficiency and experience necessary to develop moderately complex software in C and C++
  • Proficient knowledge, utilization and mastery of relevant software engineering tools (configuration management systems, build processes, debuggers, emulators, simulators and logic analyzers)
  • Must be positive, detail oriented, organized, team oriented and a driven problem solver, multi-tasker, and self-starter with the ability to prioritize and lead in a fast paced, deadline-driven environment
  • Demonstrated strong and effective verbal, written, and interpersonal communication skills
Desired Qualifications
  • Outstanding academics (cumulative GPA greater than or equal to 3.5)
  • Previous work or internship experience in design, particularly for consumer products
  • C, C++

Garmin International is an equal opportunity employer. Qualified applicants will receive consideration for employment without regard to race, religion, color, national origin, citizenship, sex, sexual orientation, gender identity, veteran’s status, age or disability.

This position is eligible for Garmin's benefit program. Details can be found here: Garmin Benefits

#J-18808-Ljbffr

What Garmin employees say

Pay

Benefits

Hours and flexibility

Workplace

Get the full story on Breakroom