Linux Software Engineer

DHI Group, Inc.
Littleton, United States of America
1 month ago

Role details

Contract type
Temporary contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Littleton, United States of America

Tech stack

Unit Testing
Bash
C++
Configuration Management
Software Debugging
Linux
Fortran
Graphical User Interface
Korn Shell
Performance Tuning
Software Engineering
Scripting (Bash/Python/Go/Ruby)
Modeling and Simulation
Software Coding
Multiplatform

Job description

  • Support HPC user workflows for modeling, simulation, and GUI-driven environments
  • Develop, debug, and enhance scientific and technical software in Linux environments
  • Assist users with modeling/simulation applications across heterogeneous, multi-platform systems
  • Troubleshoot Linux system issues and resolve end-user technical problems in an R&D lab environment
  • Maintain and improve existing code bases, ensuring performance, scalability, and reliability
  • Apply software development best practices, including coding standards, unit testing, and configuration management
  • Support distributed, scalable applications running within HPC environments
  • Mentor junior engineers and provide technical guidance
  • Develop and deliver training workshops, onboarding sessions, and tutorials for HPC users
  • Collaborate closely with scientists, engineers, and system staff to improve HPC user experience and workflow efficiency

Requirements

  • Bachelor's degree in a STEM discipline

  • Minimum 10 years of professional engineering or software development experience

  • Approximately 5 years of experience with modeling and simulation software in heterogeneous, multi-platform environments

  • Experience supporting HPC workflows and users in R&D environments

  • Proficiency with Fortran, C, and/or C++

  • Strong scripting skills with BASH and Korn

  • Linux OS proficiency, including troubleshooting and resolving end-user or system-level issues

  • Experience with software engineering standards, unit testing, and configuration management tools

  • Background in requirements analysis, design, documentation, and testing of Linux-based distributed applications

  • Ability to analyze, debug, and maintain complex code bases

  • Experience mentoring junior engineers or scientists

  • Experience designing or teaching technical training for HPC users

  • Strong communication skills, teamwork, and problem-solving ability Preferred Qualifications:

  • Experience supporting HPC in government, DoD, or national laboratory environments

  • Experience with performance optimization of scientific applications

  • Familiarity with large-scale modeling and simulation ecosystems

  • Experience working directly with researchers or scientific end-users

Apply for this position