1

Embedded C Jobs in Virginia (NOW HIRING)

Embedded Software Engineer

VA

$130K - $171K/yr

... C/C++), version control (Git/Github) and real-time operating environments (FreeRTOS, MQX). • ... with embedded debug tools such as JTAG debuggers, oscilloscopes, logic analyzers and serial ...

C/C++, Matlab, Python) * Development on embedded platforms (e.g. uBoot, IoT, drone firmware) * Successfully developed cutting edge end-to-end cyber solutions * Effective communication with customers ...

S. Government. * Proficiency in C/C++ for systems-level or embedded software development ... Proficiency in Python for tool development, automation, and integration * Familiarity with ...

S. Government. * Proficiency in C/C++ for systems-level or embedded software development ... Proficiency in Python for tool development, automation, and integration * Familiarity with ...

Embedded Software Engineer

Arlington, VA · On-site

$151K - $199K/yr

Embedded Software Engineer Apogee Research is at the forefront of a revolution in how the DoD ... High proficiency in C and C++. * Thorough understanding of the theory and practice of buffers ...

Embedded Software Engineer

Arlington, VA · On-site

$151K - $199K/yr

Embedded Software Engineer Apogee Research is at the forefront of a revolution in how the DoD ... High proficiency in C and C++. * Thorough understanding of the theory and practice of buffers ...

Embedded Software Engineer

Herndon, VA · On-site +1

$135K - $177K/yr

Develop the C++ applications that control our next generation of satellite terminals * Design, code ... Embedded development including hardware debug, device drivers, and real-time constraints in a ...

next page

Showing results 1-20

Embedded C information

See Virginia salary details

$69.4K

$152.1K

$172.5K

How much do embedded c jobs pay per year?

As of Jul 14, 2026, the average yearly pay for embedded c in Virginia is $152,068.00, according to ZipRecruiter salary data. Most workers in this role earn between $130,400.00 and $171,500.00 per year, depending on experience, location, and employer.

What is Embedded C and what do Embedded C developers do?

Embedded C is a programming language extension of the C language, specifically designed for programming embedded systems such as microcontrollers, IoT devices, and real-time systems. Embedded C developers write code that directly interacts with hardware to control devices, optimize performance, and ensure reliable operation. Their responsibilities often include writing firmware, debugging hardware-software integration, and ensuring the efficient use of system resources.

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

To thrive as an Embedded C Engineer, you need a solid background in C programming, embedded systems concepts, and a degree in electronics, computer engineering, or a related field. Familiarity with microcontrollers, RTOS, debugging tools like JTAG, and industry certifications such as ARM or Embedded Systems certification are typically required. Strong problem-solving, attention to detail, and effective teamwork skills help you excel in developing reliable and efficient embedded solutions. These competencies are critical because they ensure the creation of robust, high-performance embedded products that meet both technical and market requirements.

What is the difference between Embedded C vs Microcontroller Firmware Developer?

AspectEmbedded C

Skill FocusProgramming language used for embedded systems development
Work EnvironmentEmbedded systems, microcontroller programming, hardware integration
CertificationsKnowledge of C programming, embedded systems certifications
Industry UsageElectronics, automotive, consumer devices, IoT

Embedded C is a programming language used to develop software for embedded systems, including microcontrollers. A Microcontroller Firmware Developer writes the actual firmware that runs on microcontrollers, often using Embedded C. While Embedded C refers to the language, the Firmware Developer role involves applying that language to create functional firmware. Both roles require similar skills and certifications, and they are often used interchangeably in industry contexts.

What are some common challenges faced by Embedded C developers when working on cross-functional teams?

Embedded C developers often collaborate closely with hardware engineers, firmware teams, and product managers. A common challenge is ensuring smooth communication between disciplines, especially when translating hardware requirements into efficient software solutions. Additionally, balancing resource constraints—such as memory and processing power—while meeting project deadlines requires strong problem-solving skills. Being proactive in documenting code and discussing technical limitations helps foster effective teamwork and successful project outcomes.

Embedded Software Engineer III

Iridium Satellite, LLC

Mclean, VA • On-site

$132K - $174K/yr

Full-time

Medical, Dental, Vision, Retirement, PTO

Posted 6 days ago


Job description

Iridium is an award-winning and innovative satellite communications company with bragging rights to the only network that offers voice and data connectivity anywhere in the world. For over 20 years, Iridium’s unique network and services have supported critical communications needs for individuals, businesses, and the evolving Internet of Things.

At Iridium, we understand the importance of staying connected and the limitations of traditional communications networks. People across the globe, including first responders, humanitarians, global militaries, scientific researchers, and lone workers, as well as ships, aircraft and remote operations all rely on Iridium to stay connected. We take our responsibility for providing these essential communications very seriously and pride ourselves on offering a reliable lifeline when needed. Likewise, Iridium is committed to providing an exciting and innovative workplace, where employees are challenged to think outside the box and collaborate on new, bold ideas and solutions. Our talented teams are passionate about their work and the impact our company makes around the world. Iridium fosters an empowering and inclusive culture that allows employees to genuinely be their best selves. We are looking for others who want to join this truly unique company that celebrates our employees and provides the opportunity to truly make a difference in the world.


What We’re Looking For:

Iridium is seeking an Embedded Software Engineer III to join our Mobile Product Software Engineering Team!  As an Embedded Software Engineer, you will be responsible for enhancing and sustaining the source code used in our mobile products and associated engineering tools. In this role, you’ll gain valuable experience working on software for Iridium’s transceivers while contributing to the development of high-quality products for our customers. If you are passionate about creating reliable and robust products, committed to the long-term success of your work, and highly self reliant, you’ll thrive in this position.

 

What You’ll Do:

  • Design and develop embedded software for microcontrollers ensuring high-quality, performance, and reliability
  • Implement and optimize real-time operating systems, device drivers, and communication protocols
  • Debug and troubleshoot reported firmware issues, ensuring timely resolution
  • Reproduce, isolate and debug complex low-level problems that may span between hardware and software interfaces
  • Integrate, build, and manage embedded software configuration
  • Write and maintain unit, regression and pairwise test suites for mobile product software
  • Create and maintain documentation, including software requirements, ICDs, test plans and procedures
  • Review work products created by other team members
  • Collaborate with software, hardware, and system development engineers
  • Work cross functionally to instill a strong culture of product quality within the organization

What You’ll Need to Succeed:

  • Bachelor’s degree in electrical engineering, computer engineering, or a related technical field with 5+ years of relative software experience, including:
    • 3+ years’ experience developing embedded software, preferably for microcontrollers
    • 4+ years’ experience developing software in C; solid understanding of ANSI C, common data structures and memory management techniques
  • Familiarity with asynchronous event driven paradigms
  • Proven experience in embedded systems design with preemptive, multitasking, real-time operating systems
  • Excellent knowledge of OSI model, networking protocols, interfaces, and hardware subsystems
  • Solid understanding of communication protocols such as UART, SPI, and I2C
  • Adequate knowledge of reading schematics and data sheets for components
  • Experience with benchmarking algorithm performance on embedded systems using software and hardware techniques
  • Strong communication skills, with the ability to confidently present products, deliverables, analyses, and/or issues
  • Possess an analytical mindset, with the ability to understand a situation or problem and think critically to make decisions or come up with solutions
  • Be comfortable managing upward, including being a proactive communicator and asking for help when needed
  • Have confidence and be able to establish valuable relationships with others
  • Must be able to prioritize key tasks and have a strong sense of ownership over your work
  • Be active in seeking out ways to continuously improve yourself and gain new knowledge

 

Things That Would be Great if You Brought to the Table:

  • 1+ years of experience in developing ancillary tools in Python
  • Experience developing software for ARM M series microcontrollers
  • Experience using Linux command-line interfaces
  • Familiarity with multi-threading/multi-tasking
  • Familiarity with signal analysis tools such as Wireshark
  • Demonstrated embedded systems troubleshooting experience
  • 1+ years of experience working with agile methods & environment using the Atlassian suite.
  • Demonstrated understanding of software production via continuous integration
  • Demonstrated understanding of best practices for software version control (Git, SVN etc)
  • Knowledge of RF communication systems and protocols
  • Working knowledge of bash, make and similar programming languages

 

We’ll also need you to:

  • Be able to travel to meetings with geographically remote teams, as needed (typically once per quarter).
  • Be able to work a hybrid schedule that includes at least one week in office (located in McLean, VA) and as needed.
  • US Citizenship required

 


Work environment:

This position primarily works in an office setting and is largely sedentary with the majority of the position working with a computer. The role typically requires the use of basic office equipment such as a phone, video, computer, keyboard, mouse, and printer.

Additional Information

This job description outlines the general nature and level of work for this role and is not a comprehensive list of duties, responsibilities, or qualifications. Employees may be assigned additional responsibilities as needed.

Base Pay Range: $100,000 - $130,000 USD

Actual compensation will be determined based on a variety of factors and this range represents an estimate of compensation at the time of posting. Base salary is only one part of our compensation package for this role. You may also be eligible for company stock and annual bonus. Employee benefits also include medical, dental, and vision insurance coverage; 401(k) retirement plan options; paid time off and paid holidays; paid parental leave; and other discounts and perks.  

Iridium is an Equal Opportunity Employer, including individuals with disabilities and protected veterans.