HPC Scientific Applications Programmer
- College Park, MD, USA
- Information Technology
- Full-Time
- Remote
Job Description:
RedLine Performance Solutions (RedLine) has been in the HPC solutions engineering services business for over 26 years and is consistently determined to keep the "bar of excellence" quite high for new hires. This enables RedLine to accomplish what other firms cannot and promotes a high level of staff retention. We offer services ranging from full life cycle HPC systems engineering to remote managed services to HPC program analysis.
Work Environment
The Office of Model Development (OMD) is part of the National Weather Service (NWS) and is responsible for developing complex earth system models with its research partners that are then deployed in operations to provide weather forecast guidance that allows the NWS to issue weather forecasts. OMD, with its development partners, have been developing the Unified Forecast System (UFS) weather model, which is the fully coupled core model that drives the global, regional and hurricane applications for NWS. OMD is involved in all phases of scientific application development including data ingest, data assimilation, model integration and post processing.
What you will do
OMD modeling systems use complex workflows to drive the systems from start to end. This position is to help modernize the workflows that drive the UFS applications. The HPC Scientific Applications Programmer will work with a team of developers that include other engineers as well as the scientists to develop new tools that can be used with the workflows.
U.S. citizenship and the ability to obtain a Public Trust security clearance are mandatory requirements for this position. Although working a hybrid schedule at the customer site in College Park, MD is ideal, this position can be remote. There will be requirements to work Eastern Time zone business hours as the customer site (College Park, MD).
This full-time (W-2) position offers a full benefits package including paid time off, 401k match, and health care benefits.
Job Responsibilities:
- Develop modern configuration managers that can make workflows more flexible and provide easy ways to connect to standard scientific workflow systems such as Rocoto, ecFlow, and Cylc
- Incorporate modern software management techniques like unit testing, continuous integration, and other agile development techniques
- Develop utilities and tools that integrate into the workflows for specific applications
- Use modern code management principles (e.g., GitFlow and code repositories)
- Develop Graphical User Interfaces that allow scientists to easily set up experiments that run parts or the full workflow
- Make the workflows modular so that experiments can be easily run with different earth system components coupled together (e.g., atmosphere, ocean, ice, waves)
- Develop and/or support modular capabilities in coupled system configurations, mediators, and components as necessary
- Provide support to science teams developing different aspects of applications
- Maintain documentation standards that are utilized in community model development.
Required Skills:
- Strong experience of working with shell scripting and Python, including object-oriented Python
- Experience in working with HPC platforms (e.g., MPI, OpenMP)
- Background in physical sciences and/or mathematics with numerical modeling experience
- Experience in working with and running earth system models
- Modern software engineering practices (requirements gathering, design, prototyping, version control, integration, testing and documentation)
- Developing software in a Linux environment
- Build and testing mechanisms (e.g., cmake, ctest, pytest)
- Knowledge of package managers, especially spack
- Good communication skills in English
- Ability to work as part of a diverse team that includes software engineers and scientists across different agencies
- Good understanding of modern languages like C++ and newer versions of Fortran (Fortran 95 and later) is highly preferred.