1

C Programmer Jobs in Virginia (NOW HIRING)

Polished to expert programming skills in C. * Proficient scripting skills with bash. * Strong problem-solving skills. * Ability to learn a new programming language or development environment given ...

Polished to expert programming skills in C. * Proficient scripting skills with bash. * Strong problem-solving skills. * Ability to learn a new programming language or development environment given ...

Polished to expert programming skills in C. * Proficient scripting skills with bash. * Strong problem-solving skills. * Ability to learn a new programming language or development environment given ...

C / C++ / Java Software Developer

Chantilly, VA ยท On-site

$50.75 - $68.25/hr

C / C++ / Java Software Developer LOCATION Chantilly, VA 20151 CLEARANCE TS/SCI Full Poly (Please note this position requires full U.S. Citizenship) KEY SUMMARY We are seeking a talented and ...

C / C++ / Java Software Developer

Reston, VA ยท On-site

$51 - $68.75/hr

C / C++ / Java Software Developer LOCATION Reston, VA 20190 CLEARANCE TS/SCI Full Poly (Please note this position requires full U.S. Citizenship) KEY SUMMARY We are seeking a talented and versatile C ...

C / C++ / Java Software Developer

Tysons, VA ยท On-site

$49.25 - $66.25/hr

C / C++ / Java Software Developer LOCATION Tysons, VA 22182 CLEARANCE TS/SCI Full Poly (Please note this position requires full U.S. Citizenship) KEY SUMMARY We are seeking a talented and versatile C ...

next page

Showing results 1-20

C Programmer information

See Virginia salary details

$11

$39

$68

How much do c programmer jobs pay per hour?

As of Aug 22, 2026, the average hourly pay for c programmer in Virginia is $39.20, according to ZipRecruiter salary data. Most workers in this role earn between $25.48 and $51.01 per hour, depending on experience, location, and employer.

What is a C programmer?

C Programmers are software developers who specialize in writing, testing, and maintaining code using the C programming language. They typically work on system-level software, embedded systems, operating systems, and application development where performance and efficiency are critical. C Programmers need a strong understanding of computer architecture, memory management, and low-level programming concepts. Their work is fundamental in industries such as technology, automotive, telecommunications, and more.

What does a C programmer do?

A C Programmer is someone responsible for developing the code that integrates into an operating system, as well as other operating system modules, low-level libraries for other high-level languages, and embedded systems. C is a versatile and flexible programming language that is used for a wide range of purposes. C Programmers are tasked with designing, building, and maintaining efficient, reliable, and reusable C++ code, suggesting and implementing new solutions, creating high-level designs, and supporting the team in maintaining a code's quality. Also, they assist with analysis, design, implementation, and testing. You typically need to earn a degree from post-secondary education to be a qualified candidate for a C Programmer role.

What are the key skills and qualifications needed to thrive as a C programmer, and why are they important?

To thrive as a C Programmer, you need a strong understanding of C programming language fundamentals, data structures, algorithms, and typically a degree in computer science or a related field. Experience with development environments like GCC or Visual Studio, version control systems such as Git, and familiarity with debugging tools are commonly required. Analytical thinking, attention to detail, and effective problem-solving abilities help C Programmers stand out in this role. These skills and qualities are vital for writing efficient, reliable code and ensuring robust software performance in diverse technical environments.

How do C programmers typically collaborate with other team members during software development projects?

C Programmers often work closely with other developers, software engineers, and quality assurance teams throughout the development cycle. They participate in code reviews, contribute to design discussions, and integrate their code with modules written in other languages or by other team members. Effective communication and documentation are key, as C code frequently interacts with hardware or low-level components that require coordination with system architects or embedded engineers. This collaborative environment helps ensure robust, efficient, and maintainable software solutions.

What is the difference between C Programmer vs C Developer?

AspectC ProgrammerC Developer
Required CredentialsProficiency in C language, often with a degree in Computer Science or related fieldSimilar credentials, with additional emphasis on software development experience
Work EnvironmentTypically in embedded systems, firmware, or low-level programmingOften in software applications, system software, or embedded systems
Employer & Industry UsageTech companies, manufacturing, automotive, embedded device firmsSoftware firms, tech startups, hardware companies

The main difference between a C Programmer and a C Developer lies in their scope of work. C Programmers focus primarily on writing and debugging C code, often in embedded or low-level environments. C Developers may have a broader role, including designing, testing, and maintaining C-based applications. Both roles require similar skills and credentials, but their typical work environments and responsibilities can differ slightly.

Are C programmers still in demand?

C programmers are still in demand, especially in industries such as embedded systems, operating systems, and hardware development, where low-level programming and performance optimization are critical. Knowledge of C remains valuable for maintaining legacy systems and working with hardware interfaces, and proficiency with related tools like compilers and debugging is often required.

What can I do with C programming?

A C programmer can develop system software, embedded systems, operating systems, and performance-critical applications. They often work with low-level hardware interfaces, use tools like compilers and debuggers, and require knowledge of algorithms and data structures. C programming skills are valuable in industries such as technology, automotive, and telecommunications.

What is the salary of a C programmer?

The salary of a C programmer varies based on experience, location, and industry, but typically ranges from $60,000 to $110,000 annually in many regions. Entry-level positions may start lower, while experienced programmers with skills in embedded systems or real-time programming can earn higher salaries.

Which companies hire C programmers?

Many technology, automotive, aerospace, and embedded systems companies hire C programmers for developing firmware, operating systems, and performance-critical applications. Notable employers include Intel, Microsoft, NASA, and various startups and manufacturing firms that require low-level programming skills and experience with tools like compilers and debugging environments.

What are popular job titles related to C Programmer jobs in Virginia?

For C Programmer jobs in Virginia, the most frequently searched job titles are:

What job categories do people searching C Programmer jobs in Virginia look for?

The top searched job categories for C Programmer jobs in Virginia are:

What cities in Virginia are hiring for C Programmer jobs?

Cities in Virginia with the most C Programmer job openings:

Infographic showing various C Programmer job openings in Virginia as of August 2026, with employment types broken down into 78% Full Time, 14% Part Time, 7% Contract, and 1% Nights. Highlights an 91% Physical, 2% Hybrid, and 7% Remote job distribution, with an average salary of $81,529 per year, or $39.2 per hour.

Full-time

Medical, Dental, Vision, Life, Retirement, PTO

This job post hasย expired today.ย Applications are no longer accepted.


Job description

What We Do:

Our team in the Cyber Risk and Resilience Directorate researches and develops software tools capable of collecting, storing, and analyzing organizational network data to provide security analysts insights into what is traversing their network. We provide both the core network tools to facilitate this capability, and prototypes of new ways to present the data effectively. We deal with a scale of network data generally unseen by most organizations, handling record counts in the tens of billions per day.

Developing security insights at this scale requires creativity, efficiency, and staying up to date with modern computing platforms. In some cases, the computing has outpaced the methods, and it is incumbent upon us to generate novel views of both the entire data collection, and of focused datasets tailored to specific analyst needs.

Our network situational awareness security tools are published here: https://tools.netsa.cert.org/

Position Summary:

You'll be responsible for developing software within our network data collection suite and pushing the bounds of the uses of those tools. Much of the software is written in C, and some in Python. We are responsible for the entire life-cycle of the tools: requirements gathering/generation, development, testing, documentation, and user support.

There is room for independence for new tools or projects to make our software suite more complete. Making the tools easy to integrate and deploy, along with writing documentation are additional tasks for the position. You will work on existing projects with more senior developers until you have a grasp of the tool suite and gain domain expertise to take command of new or current tools.

You bring the design and software skills, and we'll bring the domain knowledge to solve the hard network security data problems.

Knowledge, Skills and Abilities:

  • Polished to expert programming skills in C.
  • Proficient scripting skills with bash.
  • Strong problem-solving skills.
  • Ability to learn a new programming language or development environment given appropriate time and resources.
  • Ability to work both independently and with teams, manage multiple projects, and elicit technical requirements from management and staff.

Requirements:

  • Education and Experience:BS degree in Computer Science, Statistics, Engineering, Mathematics, Economics, Data Science, or a related highly quantitative discipline with eight (8) years of applicable experience; or a MS degree in a relevant discipline with five (5) years of applicable experience; or a PhD in a relevant discipline with two (2) years of applicable experience.
  • Travel:Periodic travel to customer sites, conferences, workshops, and stakeholder meetings is required to support the SEI's mission and research activities.
  • Security Clearance:You will be subject to a background investigation and must have the ability to obtain and maintain a Department of War security clearance.
  • Applicants for this position must be currently legally authorized to work for CMU in the United States. CMU will not sponsor or take over sponsorship of an employment visa for this opportunity.

Duties:

  • Software Development (70%): Design, develop, and maintain high-performance software tools for collecting, processing, and analyzing large-scale network data using C, Python, and Bash. Participate in the full software development lifecycle, including requirements analysis, implementation, testing, deployment, and ongoing enhancement of cybersecurity research tools.
  • Customer Support (10%): Provide technical support by troubleshooting software issues, responding to user inquiries, and resolving reported defects. Collaborate with customers and stakeholders to gather feedback and recommend improvements to existing tools.
  • Documentation/Publication (10%):Prepare and maintain technical documentation, including user guides, installation instructions, and developer documentation. Contribute to technical reports, presentations, and publications that communicate software capabilities and research outcomes.
  • Testing (10%):Develop and execute unit, integration, and regression tests to ensure software quality, reliability, and performance. Identify, troubleshoot, and resolve software defects while supporting continuous improvement of testing processes.

Desired Experience:

  • Primary developer / project lead for a completed software project. Exposure to all phases of software development from requirements gathering to delivery. The feeling of ownership of the project.
  • An understanding of software / systems development lifecycle, QA testing, revision control, and change management practices
  • Experience developing software on Linux is preferred but not a requirement.
  • Experience working with containerization tools such as Docker is preferred.
  • Experience with network data collection or flow data, or awareness of network cyber threats is a plus, but not a requirement. It is our responsibility to transfer domain knowledge.

Joining the CMU team opens the door to an array of exceptional benefits.

Benefits eligible employees enjoy a wide array of benefits including comprehensive medical, prescription, dental, and vision insurance as well as a generous retirement savings program with employer contributions. Unlock your potential with tuition benefits, take well-deserved breaks with ample paid time off and observed holidays, and rest easy with life and accidental death and disability insurance.

Additional perks include a free Pittsburgh Regional Transit bus pass, access to our Family Concierge Team to help navigate childcare needs, fitness center access, and much more!

For a comprehensive overview of the benefits available, explore our Benefits page.

At Carnegie Mellon, we value the whole package when extending offers of employment. Beyond credentials, we evaluate the role and responsibilities, your valuable work experience, and the knowledge gained through education and training. We appreciate your unique skills and the perspective you bring. Your journey with us is about more than just a job; it's about finding the perfect fit for your professional growth and personal aspirations.

Are you interested in an exciting opportunity with an exceptional organization?! Apply today!

Location

Arlington, VA, Pittsburgh, PA

Job Function

Software/Applications Development/Engineering

Position Type

Staff - Regular

Full Time/Part time

Full time

Pay Basis

Salary

More Information:

  • Please visit "Why Carnegie Mellon" to learn more about becoming part of an institution inspiring innovations that change the world.

  • Click here to view a listing of employee benefits

  • Carnegie Mellon University is an Equal Opportunity Employer/Disability/Veteran.

  • Statement of Assurance