Bachelor's or Master's degree in meteorology, atmospheric science, physical sciences, mathematics, computer science, software engineering, or related field with numerical modeling experience.
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 frameworks like CUDA and OpenACC.
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.
Develop reproducible frameworks for performance evaluation.
Integrate optimized components into the UFS build system, including compiler configurations.
Port and test accelerated code on various computing hardware.
Investigate reproducibility in CPU and GPU optimizations and implement tests.
Collaborate with teams to deliver optimized code and provide technical mentoring.
Explore the use of Generative AI to enhance code quality and development efficiency.
Benefits
Comprehensive healthcare for employees at no monthly cost.
Coverage includes medical, prescription drug, dental, and vision.
Personal Time Off (PTO) plus paid holidays.
401(k) retirement plan with company matching.
Employee Stock Ownership Plan (ESOP) for all employees.
Flexible spending accounts available.
Employee assistance program (EAP) offered.
Short- and long-term disability insurance provided.
Life and accident insurance included.
Tuition assistance and training reimbursement available.
Spot bonuses for exceptional performance.
Annual Employee Recognition Awards with bonuses.
Employee Referral Program incentives.
Access to a free, self-directed Learning Management System.
Personalized career growth plans for every employee.
Full Job Description
Responsibilities
Duties of the Scientific Developer for Model Optimization will include the following:
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
The Scientific Developer for Model Optimization selected should have the following:
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.
The Ideal Scientific Developer for Model Optimization will have the following:
Ph.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.
Lynker offers a team-oriented work environment, and the opportunity to work in a culture of exceptionally skilled professionals who embrace sound science and creative solutions. Lynker's benefits include the following:
Comprehensive healthcare for the employee at no monthly cost
Healthcare benefit covers medical, prescription drug, dental, and vision
Personal Time Off (PTO) Policy plus paid holidays
Highly competitive compensation plan regularly calibrated against industry and location benchmarks
401(k) retirement plan with company-matching
Employee Stock Ownership Plan (ESOP) - we're all company owners!
Flexible spending accounts
Employee assistance program (EAP)
Short- and long-term disability insurance
Life and accident insurance
Tuition assistance/Training/Workforce improvement reimbursement per year
Spot bonuses for exceptional performance
Annual Employee Recognition Awards with bonuses
Employee Referral Program
Free centralized, self-directed Learning Management System to learn at your own pace
Personalized career growth plans for every employee