Carnegie Mellon University

Senior C Programmer

Carnegie Mellon University$100K — $130K *
Information Technology
5 - 7 years of experience
Job Overview by Ladders

Qualifications

  • Expert programming skills in C
  • Proficient in scripting with Bash
  • Strong problem-solving capabilities
  • Quick learner of new programming languages
  • Ability to manage multiple projects independently and collaboratively

Responsibilities

  • Design, develop, and maintain software tools for processing network data
  • Provide technical support by troubleshooting software issues
  • Prepare and maintain technical documentation and user guides
  • Develop and execute tests to ensure software quality
  • Gather feedback from users to recommend improvements

Benefits

  • Opportunity for independence in software tool development
  • Collaborative work environment with experienced developers
  • Exposure to full software development lifecycle
  • Periodic travel for professional development and collaboration
  • Support for gaining domain expertise in network security
Full Job Description

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 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.
  • 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.

Location

Arlington, VA, Pittsburgh, PA

Job Function

Software/Applications Development/Engineering

Position Type

Staff – Regular

Full time/Part time

Full time

Pay Basis

Salary

About Carnegie Mellon University

Carnegie Mellon University is a private research university that was founded in 1900. The university is located in Pittsburgh, Pennsylvania and is known for its programs in computer science, engineering, and the arts. Carnegie Mellon has a diverse student body and offers undergraduate and graduate programs in a variety of fields. The university has a strong focus on research and has partnerships with a number of companies and organizations. Carnegie Mellon is consistently ranked among the top universities in the United States.
Learn more about Carnegie Mellon University
Size
14,000 employees
Industry

Similar Jobs

More Jobs at Carnegie Mellon University

More Information Technology Jobs

Find similar Senior C Programmer jobs: