Senior C Programmer

Software Engineering Institute | Carnegie Mellon University

Pittsburgh (Allegheny County)

On-site

USD 110,000 - 170,000

Full time

14 days+

Get more replies from employers

Send a job-specific resume in minutes.

Job summary

The Software Engineering Institute (SEI) at Carnegie Mellon University in Pittsburgh is seeking a Staff Software Engineer to advance the network data collection suite using C, Python, and Bash.

You will own full lifecycle development, collaborate with teams, write documentation, and contribute to high-performance security research tools. Travel to customer sites may be required; a willingness to obtain a DoD clearance is expected.

Qualifications

  • Education and experience requirements: BS in CS/related field with 10 years of applicable experience, or MS with 8 years, or PhD with 5 years.
  • Travel to customer sites, conferences, workshops, and stakeholder meetings.
  • Security clearance: ability to obtain/maintain DoD security clearance.

Responsibilities

  • Software Development (70%): Design, develop, and maintain high-performance tools for collecting, processing, and analyzing large-scale network data using C, Python, and Bash.
  • Customer Support (10%): Provide technical support by troubleshooting software issues, responding to user inquiries, and resolving defects.
  • Documentation/Publication (10%): Prepare technical docs, user guides, installation instructions, and developer docs.
  • Testing (10%): Develop unit/integration/regression tests and improve testing processes.

Skills

C programming
Bash scripting
Linux experience
Strong problem solving
Independent and team work

Education

BS degree in CS/related field
MS degree in related discipline
PhD in related discipline

Tools

Docker

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 ten (10) years of applicable experience, or equivalent experience and demonstrated expertise in C programming; or a MS degree in a relevant discipline with eight (8) years of applicable experience; or a PhD in a relevant discipline with five (5) 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.

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.

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:
Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Senior C Programmer
Senior C Programmer

Software Engineering Institute | Carnegie Mellon University • Arlington (VA)

On-site
USD 85,000 - 125,000
C Programmer
C Programmer

Carnegie Mellon University • Pittsburgh

On-site
USD 75,000 - 110,000
Comprehensive medical and dental insurance
Retirement savings program with contributions
Tuition benefits
+2
Associate C Programmer
Associate C Programmer

Carnegie Mellon University • Pittsburgh

On-site
USD 70,000 - 100,000
Senior C Programmer
Senior C Programmer

Carnegie Mellon University • Arlington (VA)

On-site
USD 120,000 - 150,000
Medical, dental, vision insurance
Retirement program
Tuition benefits
+1
Senior C Programmer
Senior C Programmer

Carnegie Mellon University • Pittsburgh

On-site
USD 75,000 - 95,000
Senior Network Security Researcher
Senior Network Security Researcher

Carnegie Mellon University • Pittsburgh

Hybrid
USD 140,000 - 190,000
Healthcare
Retirement plan
Tuition benefits
+4
Associate Network Security Researcher
Associate Network Security Researcher

Carnegie Mellon University • Arlington (VA)

On-site
USD 120,000 - 180,000
Medical insurance
Dental insurance
Vision insurance
+6
Network Security Researcher
Network Security Researcher

Carnegie Mellon University • Pittsburgh

Hybrid
USD 120,000 - 190,000
Tuition benefits
Paid time off
Life and AD&D insurance
+3
Network Security Researcher
Network Security Researcher

Carnegie Mellon University • Arlington (VA)

On-site
USD 120,000 - 160,000
Tuition benefits
Paid time off
Life insurance
+1
Cybersecurity Engineer
Cybersecurity Engineer

Carnegie Mellon University • Pittsburgh

On-site
USD 90,000 - 130,000
Equal Opportunity Employer
Professional Development Opportunities