Software Engineer, SME

Simulation Technologies, Inc.

$108K — $130K *
Information Technology
11 - 15 years of experience
Job Overview by Ladders

Qualifications

  • Bachelor's or Graduate Degree in Computer Science, Engineering, Math, or Physics.
  • 12+ years of software development experience, particularly in Modeling & Simulation environments.
  • 3-5 years of hands-on experience with C++, Python, and GPU programming.
  • Proficiency in CUDA and parallel processing technologies.
  • Experience in developing and validating complex software applications and analytical models.
  • Strong knowledge of Linux development environments and software configuration management.
  • U.S. Citizenship with an Active Secret Security clearance.

Responsibilities

  • Develop and integrate software using C++ and Python for model and tool development.
  • Design complex software solutions as per architecture specifications for efficiency and scalability.
  • Maintain data integrity and optimize software for parallel processing environments.
  • Implement advanced mathematical algorithms and analytical models based on specifications.
  • Use subject matter expertise to oversee software development and validation processes.
  • Evaluate engineering objectives and apply appropriate programming techniques to solve problems.

Benefits

  • Opportunities for mentoring and technical leadership within multidisciplinary teams.
  • Engagement in advanced mathematical and analytical problem solving.
  • Access to cutting-edge technologies in high-performance computing and software engineering.
  • Possibility of telework and flexible hours to accommodate project demands.
  • Support of Department of Defense projects and contributing to national defense efforts.
Full Job Description
Software Engineer, SME

Overview

The Software Engineer, SME is responsible for developing, integrating, testing, and validating software applications. This role supports the design and implementation of scalable, high-performance solutions, including advanced mathematical and analytical algorithms, while ensuring code quality, data integrity, and maintainability.

Responsibilities

Provide software development for C++ and Python in the areas of model and tool development, integration, execution, test, analysis and V&V.

Design and implement complex software in C++, CUDA, and Python as defined from an architectural definition, ensuring efficiency, scalability, and maintainability.

Maintain data integrity and optimize code for distributive and/or parallel processing.

Implement advanced mathematical and analytical solutions required for calculations, transformations, and processes defined by specifications.

Apply subject matter expertise in software engineering to support design, development, testing, and deployment of assets.

Evaluate objectives and assignments, select appropriate engineering and programming techniques, and demonstrate sound judgment in adapting solutions.

Other responsibilities as assigned.

Minimum Qualifications & Education Requirements and Desired Skillsets

Bachelor of Science Degree or Graduate Science Degree in Computer Science, Computer Engineering, Math, Physics or Engineering.

Minimum of 12 years of professional experience in software development, software design, and Modeling & Simulation (M&S) environments.

3-5 years demonstrated relevant experience and development with C++, Python, and real-time graphics processor unit (GPU) programming experience>.

Experience with GPU programming and parallel processing technologies, including CUDA.

Demonstrated experience developing, integrating, testing, and validating software applications and tools.

Experience implementing complex mathematical algorithms, analytical models, and data processing solutions.

Proficiency working in Linux-based development environments.

Experience with software configuration management, version control systems, and collaborative development processes.

Strong understanding of software architecture, object-oriented design principles, and software development life cycle (SDLC) methodologies.

Experience supporting Department of Defense (DoD), Missile Defense Agency (MDA), aerospace, or defense-related programs.

Experience developing high-performance computing (HPC) applications and optimizing software for distributed and parallel processing environments.

Strong analytical, problem-solving, and troubleshooting skills.

Excellent written and verbal communication skills with the ability to work effectively in multidisciplinary teams.

Experience mentoring junior engineers and providing technical leadership on software development efforts.

U.S. Citizenship with Active Secret Security clearance and ability to maintain the designated security clearance level is required.

Physical Description

Employees in these positions will function in a general office/cubicle setting environment, and laboratory/testing setting using standard office equipment and various electronic testing equipment, including a computer, telephone, printers, video equipment, computer software, and testing equipment. Will interact in a general office setting environment with various personnel; participate in meetings and contribute to team success; deliver timely results and produce reports; receive and communicate information; may include telework. May function in a specialized laboratory/testing environment using electronic testing equipment, computer software, and complex systems. May move and test equipment of various weights. Laboratory environment may require use of protective equipment (PPE) including but not limited to safety glasses and protective hearing and footwear. May be expected to work varying shifts and hours to ensure successful operation of activities in the organization due to business demands; travel occasionally for assigned work.

Similar Jobs

More Jobs at Simulation Technologies, Inc.

More Information Technology Jobs

Find similar Software Engineer, SME jobs: