Jobs · Engineering · Alabama

1242 - Mid/Senior Software Engineer

Monte Sano Research Corporation · Huntsville, AL · 1 wk ago
EngineeringFull-time

About the role

Monte Sano Research Corporation (MSRC) is a Huntsville-based Small Business specializing in full-spectrum defense system engineering, research, design, development, integration, test, evaluation, and planning services for the U.S. Government. As an ESOP company, our employee-owners are personally invested in the success of our customers, programs, and one another. We seek a Mid/Senior Software Engineer to support core survivability analysis of emerging Army missile technologies, filling a specific and essential need on the team: strong, hands-on software engineering capability.

The successful candidate will serve as the team's primary software engineering resource in their area of expertise, with the independence and technical judgment to take difficult problems from concept to working, maintainable software. This work will contribute directly to the development of a long-term, AvMC-owned Modeling & Simulation (M&S) capability supporting Army test, acquisition, and research efforts—an opportunity to have a meaningful role in building a capability intended to support the Army for years to come.

We are looking for someone who can demonstrate the ability to do the work, not just accumulate years in the field. A candidate with significant experience and deep technical expertise may be an excellent fit, but we are also open to an exceptionally capable early-career software engineer ready to take on greater responsibility and operate with a high degree of independence.

Responsibilities

  • Analyze existing MATLAB and Simulink models and translate their algorithms, data structures, interfaces, and numerical behavior into C++.
  • Integrate C++ models into a Kubernetes-based distributed simulation environment.
  • Develop and maintain C++ 14/17 software interfaces between simulation components, including message publishers/subscribers, APIs, data exchange formats, and inter-process communication.
  • Develop automated regression tests to verify that C++ implementations reproduce MATLAB/Simulink model behavior within defined numerical tolerances.
  • Profile and debug simulation software for correctness, memory usage, concurrency, timing, and performance.
  • Apply standard software engineering practices including source control, branching and merge workflows, code reviews, issue tracking, automated testing, documentation, and continuous integration.

Requirements

  • B.S. in a STEM field.
  • Significant experience with MATLAB and Simulink, including understanding and translating MATLAB algorithms into production software.
  • Experience converting mathematical, engineering, or scientific models from MATLAB/Simulink into C++ implementations.
  • Experience developing clean, modular, reusable, and maintainable C++ software.
  • Understanding of C++ memory management, object lifetime, RAII, interfaces, libraries, and DLL/shared-library development.
  • Experience with distributed or component-based simulation frameworks and software APIs.
  • Experience implementing or integrating publisher/subscriber messaging architectures.
  • Experience with Git or equivalent version-control systems, including branching, merging, pull/merge requests, and collaborative code-review workflows.
  • U.S. citizenship and ability to maintain an active security clearance.

Qualifications

We are particularly interested in candidates who can demonstrate strong technical capability and independent problem-solving, regardless of where they fall on the traditional career-experience spectrum. The level of this position will be determined based on the candidate's demonstrated technical capability, independence, and depth of expertise. We encourage both highly capable early-career professionals ready for their next level of responsibility and experienced software engineers seeking an opportunity to apply their expertise to a meaningful mission.

Similar jobs