High Performance Computing Software Analyst Job at Idaho National Laboratory in
Idaho National Laboratory, Idaho Falls, ID, US
Job Description
High Performance Computing Software Analyst Idaho National Laboratory is hiring a High Performance Computing Software Analyst to work in our High Performance Computing department. Our team works a 9x80 schedule located out of our Research Education Campus with every other Friday off. You will report to the manager of the High Performance Computing department. Responsibilities Include: Provide software support for high performance computing users. Analyze documentation and software builds for multiple high performance computing software while also answering service requests and tickets. Key duties include: * HPC leadership at INL including understanding mission requirements and providing solutions for users * Function as a interface between the High Performance Computing and Advanced Scientific Computing directorate organizations and the Lab * Responsible for designing, installing, configuring, debugging, troubleshooting, improving software to support the High Performance Computing systems and supporting infrastructure. Specific tasks include: * Provide software support for machine learning models * Support Science Gateway development and deployment * Research, configure deployed software * Research, install 3rd party embedded systems applications * Research and diagnose system operational problems * Coordinate with vendors to resolve hardware and software problems * Define and document procedures and tasks * Participate in a 24-hour, 7-day on-call support rotation and off-hours maintenance activities. * Implement new systems * Perform system performance analysis and tuning * Support laboratory wide training and outreach activities with the purpose of increasing HPC adoption at INL * Support university training and outreach activities with the purpose of building HPC and computational science skills * Contribute to the enhanced reputation of HPC both at INL and regionally * Coordinate with HPC staff for HPC maintenance/outages * Support python programming language and modern web development frameworks, content management systems, relational databases, graphical toolkits, version control systems, and OS X/Linux system administration * Take direction from other team members and peers, and also provide input in a constructive manner to others while maintaining a positive and professional relationship * Monitor application usage so availability of resources is constant and adjusted to meet demands.Qualifications: Minimum Requirements:
- Bachelor's degree of Science in Computer Science or related field and 2+ years of applicable experience, or advanced degree in scientific computing and 1+ years of applicable experience
- Demonstrated user support in high performance and/or scientific computing
- Proficiency with the UNIX/Linux command line and SSH
- Intermediate programming ability with multiple computer software languages and information systems
- Proficiency with C and C++ programming languages
- Experience compiling applications on Linux systems (e.g. Makefiles, configure, and make)
- Proficiency with Python and Bash scripting and Python package managers such as pip and Conda
- Proficiency with parallel programming paradigms including MPI, OpenMP, and OpenACC
- Proficiency with HPC workload managers such Slurm, PBS/Torque, and Flux
- Familiarity with Git or other version control systems
- Demonstrated ability to work as part of a team and directly with end users
- This position requires access to export control data which requires US citizenship
- Expertise supporting parallel applications built on MPI and OpenMP
- Familiarity with the Fortran programming language
- Knowledge of and familiarity with GPU programming such as CUDA and ROCm/HIP
- Familiarity with package managers such as rpm, dnf/yum, and Spack
- Experience building and using Apptainer or Podman containers
- Experience administering HPC workload management and scheduling systems such as Slurm and OpenPBS
- Experience with FlexNet or other network license management software
- Experience with machine learning frameworks such as TensorFlow, PyTorch, Keras, and Scikit-Learn
- Familiarity with the CMake build tool
- Familiarity with Perl, Awk, and Sed
- Familiarity with LaTeX and LaTeX editors such as Overleaf
- Familiarity with various modeling and simulation frameworks and software packages such as MOOSE, VASP, LAMMPS, Star-CCM+, Abaqus, Ansys, Matlab, and NCRC codes (see https://inl.gov/ncrc/code-descriptions )
- The pay range for this position is: Level #440 ($75,804.00 - $155,496.00) / Level #450 ($91,008.00 - $186,588.00). At Idaho National Laboratory compensation decisions are determined using factors such as education, relevant experience, and other credentials.
- You are required to show a demonstrated commitment to valuing diversity and contributing to an inclusive working environment.
- Medical, Dental, Vision, and Flexible Spending Accounts
- 401(k) with a 4.2% employer contribution and up to 4.8% match
- Paid time off (personal leave)
- Employee Education Program (tuition assistance)
- Comprehensive Relocation Package
- Benefit eligibility subject multiple factors, including employment status and position classification.