Hiring.Camp

Scientific Developer for Model Optimization

Axiom Consultants

·
Salary
$70k – $100k/yr
Location
College Park, MD
Type
Full-time
Department
IT
Education
Master
Source
ApplicantPro

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 GPU/heterogenous programming and/or portability frameworks (e.g., CUDA, OpenACC, OpenMP target offloading, Kokkos, RAJA, PyTorch, JAX).
  • 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.


Equal Opportunity Employer/Protected Veterans/Individuals with Disabilities

The contractor will not discharge or in any other manner discriminate against employees or applicants because they have inquired about, discussed, or disclosed their own pay or the pay of another employee or applicant. However, employees who have access to the compensation information of other employees or applicants as a part of their essential job functions cannot disclose the pay of other employees or applicants to individuals who do not otherwise have access to compensation information, unless the disclosure is (a) in response to a formal complaint or charge, (b) in furtherance of an investigation, proceeding, hearing, or action, including an investigation conducted by the employer, or (c) consistent with the contractor's legal duty to furnish information. 41 CFR 60-1.35(c)

 

Skills

LinuxPyTorchGit

Similar Jobs

2

Scientific Developer for UFS In-Core Data Assimilation

Lynker·College, Alaska·Remote

2w ago

Scientific Software Developer for MPAS Infrastructure

Lynker·College, Alaska·Remote

1w ago