1

Embedded C Programming Jobs in Virginia (NOW HIRING)

Embedded Software Engineer II

Richmond, VA ยท On-site

$130K - $171K/yr

... embedded SW development experience with Bachelor's degree ... Proficiency in programming languages such as Java, C++, or Python. Experience with software ...

Design , implement, and test embedded software solutions in C/C++ for microcontrollers, real time operating systems (RTOS), or Linux based embedded systems. * Develop firmware and low-level drivers ...

Design , implement, and test embedded software solutions in C/C++ for microcontrollers, real time operating systems (RTOS), or Linux based embedded systems. * Develop firmware and low-level drivers ...

next page

Showing results 1-20

Embedded C Programming information

What is an Embedded C Programming job?

An Embedded C Programming job involves writing and optimizing C code for microcontrollers and embedded systems. Engineers in this role develop firmware to control hardware devices like IoT gadgets, automotive systems, or industrial machines. They work with low-level hardware interactions, real-time operating systems (RTOS), and peripheral drivers. Strong knowledge of memory management, debugging, and performance optimization is essential for this role.

What are the key skills and qualifications needed to thrive in the Embedded C Programming position, and why are they important?

To thrive in Embedded C Programming, you need a solid understanding of C language, microcontroller architectures, real-time operating systems (RTOS), and low-level hardware-software integration, typically supported by a degree in Computer Engineering or related fields. Experience with embedded development environments, debugging tools like JTAG, and version control systems such as Git is commonly required, and certifications like ARM Accredited Engineer can be advantageous. Strong analytical skills, attention to detail, effective problem solving, and the ability to communicate technical concepts clearly are highly valued soft skills. These skills ensure reliable, efficient firmware development and enable seamless collaboration within multidisciplinary engineering teams.

What are the typical daily responsibilities of someone working in Embedded C Programming?

A professional in Embedded C Programming typically works on writing, testing, and optimizing code that runs on microcontrollers or embedded systems within electronic products. Day-to-day tasks often include debugging hardware-software interactions, integrating different device drivers, performing code reviews, and collaborating closely with hardware engineers and QA teams to meet project requirements. Additionally, you may be responsible for documenting software designs and participating in team meetings to discuss system architecture or project milestones. This role requires both independent problem-solving and teamwork, as successful project delivery depends on effective communication and close coordination with other engineering specialists.

What are the most commonly searched types of Embedded C Programming jobs in Virginia? The most popular types of Embedded C Programming jobs in Virginia are:
What job categories do people searching Embedded C Programming jobs in Virginia look for? The top searched job categories for Embedded C Programming jobs in Virginia are:
Infographic showing various Embedded C Programming job openings in Virginia as of June 2026, with employment types broken down into 1% As Needed, 66% Full Time, 23% Part Time, 2% Temporary, 7% Contract, and 1% Nights. Highlights an 93% Physical, 2% Hybrid, and 5% Remote job distribution.

Embedded Android Software Engineer

Riverside Research Institute

Fairfax, VA โ€ข On-site

$115K - $190K/yr

Full-time

Posted 28 days ago


Job description

Riverside Research is an independent National Security Nonprofit dedicated to research and development in the national interest. We provide high-end technical services, research and development, and prototype solutions to some of the countrys most challenging technical problems.
All Riverside Research opportunities require U.S. Citizenship.

Riverside Research Institute is currently seeking an Embedded Android Software Engineer to support and execute cutting-edge firmware development in embedded and mobile network security hardware on behalf of the Riverside Research Open Innovation Center (OIC).  The OIC executes research and development in several broad areas including the development of secure and resilient systems.

The ideal candidate will have experience working in dynamic research and development (R&D) environments, from ideation through execution, and designing and delivering innovative secure networking and cryptographic solutions to national security customers. As a principal technical contributor, the candidate will be responsible for developing new techniques and technology to address complex and open-ended problems. The candidate should have a track record of outside-the-box problem-solving, interdisciplinary collaboration, and ability to brief stakeholders on technical results.


Works on problems of diverse scope where analysis of information requires evaluation of identifiable factors. Devises solutions based on limited information and precedent and adapts existing approaches to resolve issues. Uses evaluation, judgment, and interpretation to select right course of action. Work is done independently and is reviewed at critical points. Enhances relationships and networks with senior internal/external partners who are not familiar with the subject matter often requiring persuasion. Adapts style to differing audiences and often advises others on difficult matters.

The selected candidates will be responsible for:

  • Developing C/C++, Kotlin/Java code in Android, Linux-based, or embedded systems
  • Collaborating on systems-level projects (e.g. networking, device interfaces, or low-level services)
  • Algorithm/protocol analysis, architecture review, system engineering, implementation, verification, and delivery.
  • Creating and managing embedded system build processes, including AOSP.
  • Duties involve all aspects of Embedded Software development, including documentation, implementation, emulation, integration, and test.

Required:

  • Bachelorโ€™s degree or higher in computer engineering, computer science or equivalent
  • 3+ yearsโ€™ experience developing Linux embedded platforms (e.g. Yocto, Buildroot)
  • Understanding of git/repo version management in Android build process
  • General understanding of Android architecture, AOSP Telephony experience
  • Experience working on systems-level projects (e.g. networking, device interfaces, or low-level services)
  • Understanding of networking fundamentals - basic networking and firewall experience on Android/Linux (IP, routing, TCP/UDP)
  • Ability to debug issues across system layers (baseband, application, OS, network)
  • 3+ years of cross-platform development using C/C++ and embedded Linux
    • Firmware development, analysis, and reverse-engineering
    • Device bring-up starting with the root filesystem
    • Experience building software using Make, CMake, or Cargo
    • Familiarity with debugging tools: tcpdump, strace, dmesg, ip, ss
  • Eligibility for a SECRET clearance and ultimately a TS/SCI

Additional/Desired:

  • Eligible for a TS/SCI Clearance
  • Experience with Rust programming language
  • Familiarity with: iptables, NAT, or VPN concepts
  • Familiarity with Linux device management (udev)
  • Exposure to USB device/gadget frameworks
  • Exposure to /dev, sysfs, or procfs interfaces
  • Experience with ARM-based systems (e.g., Raspberry Pi)
  • Exposure to performance tuning in low-level or embedded C software

$100,000 - $180,000 This represents the typical compensation range for this position based on experience, location and other factors.
Riverside Research Institute is a not-for-profit, technology-oriented defense company, where service to our customers and support of our staff is our overall mission. Riverside is an affirmative action-equal opportunity employer and complies with all applicable federal, state, and local laws regarding recruitment and hiring. Riverside offers comprehensive compensation and benefit packages to our employees.
Riverside bases its employment decisions solely on technical experience, qualifications and other job-related criteria related to our organizational purpose as a not-for-profit company, and without regard to race, color, religion, age, sex marital status, sexual orientation, national origin, physical or mental disability, veterans status or any other status legally protected by applicable federal, state, and local law.