The Software Developer (C++) – Senior is responsible for designing, developing, integrating, testing, and maintaining advanced software applications that support modeling, simulation, and training environments. This role focuses on C++ software development, system integration, code review, debugging, software enhancements, and collaboration with engineering teams to deliver high-quality software solutions.
Duties and Responsibilities
Develop and maintain advanced C++ software applications.
Design software for synthetic training and simulation environments.
Integrate software with flight simulators and related systems.
Support software development, integration, customer demonstrations, and training.
Review, evaluate, and improve C++ source code.
Design and implement object-oriented software solutions.
Develop interfaces using distributed simulation communication protocols.
Create parallel processing, multithreading, and inter-process communication solutions.
Troubleshoot, debug, and resolve software issues.
Maintain and enhance existing software applications.
Participate in software design, architecture, and future system enhancements.
Follow software development lifecycle (SDLC) processes.
Work within Agile, Scrum, and Waterfall development methodologies.
Collaborate with software engineers and technical teams to deliver high-quality solutions.
Requirements
Bachelor's degree in Computer Science, Engineering, or a related field.
Minimum 10 years of software development experience.
Minimum 10 years of professional C++ programming experience.
Expert knowledge of C++11 or later versions.
Strong understanding of object-oriented programming and software design patterns.
Experience with software troubleshooting, debugging, and maintenance.
Experience with the Software Development Life Cycle (SDLC).
Experience using Agile, Scrum, and Waterfall methodologies.
Experience with distributed simulation protocols (DIS/HLA) is preferred.
Experience with real-time distributed simulation systems is preferred.
Experience working with large-scale software systems is preferred.
Ability to obtain and maintain a DoD Top Secret Security Clearance.