Bachelor's or Master's degree in meteorology, atmospheric science, physical sciences, mathematics, computer science, software engineering, scientific computing, or a related field.
Experience in high-performance computing (HPC) and software optimization for large-scale parallel applications.
Proficiency in C, C++, and/or Fortran, along with MPI.
Familiarity with GPU programming and portability frameworks like CUDA and OpenMP.
Knowledge of profiling tools such as gprof and TAU.
Experience with Linux/Unix shell scripting and automation.
Proficiency with Git or similar version control tools.
Responsibilities
Identify and resolve performance bottlenecks in the UFS Weather Model.
Optimize model performance through code enhancements and configuration adjustments.
Implement code profiling for large parallel applications, focusing on CPU and GPU performance.
Integrate optimized components into the UFS build system, including compiler and package configuration.
Port and test accelerated code on various computing hardware, ensuring portability and reproducibility.
Investigate reproducibility in CPU and GPU optimizations and implement relevant tests.
Contribute to documentation on profiling, optimization, and GPU programming.
Collaborate with teams to deliver optimized code and provide technical guidance on profiling and optimization.
Benefits
Comprehensive medical, dental, and life insurance.
Matching 401(k) contributions.
Full Job Description
Axiom is seeking a Scientific Developer
Responsibilities:
Identify and resolve performance bottlenecks in the UFS Weather Model with the newly integrated MPAS atmospheric dynamic core and coupled components.
Identify opportunities for model performance improvement, including through code optimization, build configuration, and heterogeneous and portable computing, especially with CPU and GPU.
Implement code run-time profiling for large parallel applications, including profiling of CPU & GPU performance, memory usage, cache usage, and disk I/O. Develop configurable, reproducible frameworks/workflows for doing so.
Enable the integration of optimized, GPU/accelerator-enabled and profiling-enabled components into the UFS build system, including configuration of compilers, packages, and profiling/instrumentation.
Identify available computing hardware resources and port and test accelerated code on appropriate systems, ensuring robust portability and reproducibility within acceptable tolerance.
Investigate bit-for-bit reproducibility in the context of CPU and GPU optimizations, and propose and implement appropriate reproducibility tests.
Contribute to strategic, technical, and other documentation regarding profiling/instrumentation, optimization, and GPU/portable programming .
Collaborate with other teams to support models, forecast workflows, and other functions through the delivery of optimized code and profiling/instrumentation frameworks. Provide technical guidance and mentoring to colleagues on profiling/instrumentation, optimization, and GPU/portable code development.
Explore and validate the use of Generative AI (GenAI)/Large Language Models (LLMs) to improve the quality of code and the efficiency of code development process.
Qualifications:
Bachelor's or Master's degree in meteorology, atmospheric science, physical sciences, mathematics, computer science, software engineering, scientific computing, or a closely related field with demonstrated numerical modeling or closely related scientific computing experience.
Demonstrated experience in high-performance computing (HPC), software optimization, and building, running, debugging, and profiling large-scale parallel applications.
Proficiency in C, C++, and/or Fortran, as well as MPI.
Familiarity with profiling concepts and/or tools (e.g., gprof, TAU, Scalasca)
Experience with Linux/Unix shell scripting and automation.
Demonstrated experience with build systems (e.g., CMake, Meson, autotools, make) is strongly preferred, however, strong proficiency in configurable scripting and automation is acceptable.
Demonstrated proficiency with Git or similar tools for code collaboration and management.
Demonstrated ability to apply the concepts of software engineering and best practices.
Preferred Qualifications:
D. in a quantitative field with research computing experience.
Direct experience with the Unified Forecast System (UFS), MPAS, or other atmospheric modeling systems. Familiarity with NWP forecast workflows is beneficial.
Experience with workflow (ecFlow, Rocoto, Cylc) and package (Spack, pip) management tools in HPC environments.
Familiarity with leveraging GenAI/LLM tools to optimize and assist software development workflows.
Familiarity with continuous integration (CI) workflows and frameworks.
Axiom offers competitive compensation packages including comprehensive medical/dental/life insurance and matching 401(k) contribution.
About Axiom Space
Axiom Space is a private space exploration company that aims to build the world's first commercial space station. The company was founded in 2016 by Michael Suffredini, who previously served as the manager of the International Space Station program at NASA. Axiom Space plans to launch its first module to the International Space Station in 2020, and eventually detach it to form the core of its own space station. The company has partnerships with major aerospace companies such as Boeing and SpaceX.