Modeling & Simulation Software Engineer - C++

Introduction: The Johns Hopkins University Applied Physics Laboratory (APL), a national leader in scientific research and development, located midway between Baltimore and Washington, DC is seeking a Software Engineer.

Job Summary: Develop software solutions for Air & Missile Defense (AMD) modeling and simulation (M&S) activities.


  1. Participate in a team environment to design, develop, enhance, and execute M&S software tools for the AMD domain, including providing full life cycle support (requirements, design, implementation, testing, and debugging). Apply object-oriented design and development techniques primarily in the C++ programming language.
  2. Define and develop creative and innovative software architectures and solutions to address emerging department challenges in systems-of-systems simulation integration. Support the development and integration of large-scale simulation frameworks for system-level modeling.
  3. Analyze M&S results to support simulation verification & validation, regression testing, formal test events, and concept/feasibility studies.
  4. Produce documentation to capture requirements, technical concepts, software design, and user information. Deliver presentations to peers and customers internal and external to APL.

Note: This job summary and listing of duties is for the purpose of describing the position and its essential functions at time of hire and may change over time.


Required Qualifications:

  • BS degree or higher in Computer Science, Computer Engineering, or equivalent.
  • 3+ years of experience with strong object-oriented software design and development skills with programming proficiency in C++.
  • Experience developing software in a GNU/Linux environment.
  • Experience working in a team setting, and collaborating on software design and implementation.
  • Excellent written and verbal communication skills.
  • Familiarity with software revision control systems (e.g., Mercurial, Subversion) and issue tracking systems (e.g., JIRA, Trac).

Desired Qualifications: MS degree in Computer Science, Computer Engineering, or equivalent. Three or more years of software development experience. Experience developing M&S applications and a working knowledge of M&S concepts. Familiarity with distributed M&S execution environments such as the High Level Architecture (HLA). Experience with other programming languages, including C, Java and Python, as well as with integrated development environments (e.g, Eclipse), modern build tools (e.g., Maven, waf), and continuous integration tools (e.g., Jenkins). Familiarity with software development processes and standards such as the Unified Modeling Language (UML) and the eXtensible Markup Language (XML). Experience with cross-platform software development. Experience with MATLAB programming and M&S tools such as Simulink and Real-Time Workshop. Experience developing software using multi-threaded and parallel processing techniques (e.g., grid computing, virtual computing), as well as third-party software libraries(e.g., Boost, Xerces, Guava). Exposure to, or experience with, software and systems of systems integration. Working knowledge of AMD domain.

Special Working Conditions: May require occasional travel.

Security: Applicant selected will be subject to a government security clearance investigation and must meet the requirements for access to classified information. Eligibility requirements include U.S. citizenship.

Benefits: APL offers a comprehensive benefits package including a liberal vacation plan, a matching retirement program, significant educational assistance, a scholarship tuition program for staff with dependents, and competitive salaries commensurate with skills and experience. For more information about our organization, please visit our web site at

Equal Employment Opportunity: Johns Hopkins University/Applied Physics Laboratory (APL) is an Equal Opportunity/Affirmative Action employer that complies with Title IX of the Education Amendments Acts of 1972, as well as other applicable laws. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, disability, or protected Veteran status.

Back to top