Join our Talent Network >

Application Programmer - NOAA

This job posting is no longer active.

Job ID: 2119585
Location: PRINCETON, NJ, United States
Date Posted: Feb 24, 2022
Category: Software
Subcategory: SW Engineer
Schedule: Full-time
Shift: Day Job
Travel: No
Minimum Clearance Required: None
Clearance Level Must Be Able to Obtain: Public Trust
Potential for Remote Work:
Benefits: Click here

Share: mail

Job Description


SAIC is recruiting for an FMS Engineer for our NOAA GFDL program. This individual will be supporting climate code and algorithm transitions to new computing architectures and paradigms, in a structured team environment. The programmer will also participate in various algorithm improvements and code optimization initiatives, as well as serving as a Model Support liaison between Scientists and the Modeling Services team for the purposes of scientific code development. Attending code reviews, planning development meetings, Running Computer Climate Models for the purposes of regression testing and Documentation of production software are other roles included in this position. 

The Flexible Modeling System (FMS) is the Earth System Modeling (ESM) framework used at GFDL. The framework supports the multi-physics model components (e.g. atmosphere dynamical core, atmospheric physics, ocean dynamical core and physics, land model, ice model, etc). The FMS core is written primarily in modern Fortran with some elements in C and C++. The core supplies various services that enable grid based domain decomposition, MPI and OpenMP based inter-processor communication, parallel I/O, model diagnostics generation, etc. Importantly, various grids are employed within a single model across the model component space (e.g. “cubed-sphere” for the atmosphere and “tripolar” for the ocean). Ongoing development of the core infrastructure is essential to meet the ever increasing demands for model fidelity.

This position requires writing, editing, and maintaining computer programs that solve scientific problems. Gathering requirements from scientists, preparing flow charts, developing/writing code, testing and debugging programs, and writing associated documentation.

Such current developments include:

·  Support for moving, nested grids (i.e. moving subdomains of enhanced resolution)

·  Enhancing support for ensembles (e.g. running concurrent instances of the atmosphere and/or ocean with slightly varying initial conditions within a single model execution)

·  Adding various in-line techniques for writing out reduced resolution model diagnostics


Specific responsibilities :

·         Support Modeling Systems FMS outreach activities to the User Community

o    Repository management on GitHub

o    Respond to and manage pull requests

o    Track bugs and issues

·         Develop robust unit tests to be used in a continuous integration environment

·         Provide software documentation, preferably using UMLs

·         Explore cloud computing for Continuous Integration

·         Work collaboratively to design and develop enhancements to FMS infrastructure

·         Support integration of source code developed by scientific teams for periodic modeling software releases

o    Participate in comprehensive software release testing

o    Support efforts required for community software development of the GFDL model components (e.g. the FV3 atmosphere dynamical core, the MOM6 ocean modeling framework, etc)

·         Work collaboratively to design and develop enhancements to FMS infrastructure

o    Focus on infrastructure details such as gridding, the component coupling and boundary exchange, domain decomposition techniques, support for parallel and concurrent runtime techniques, etc

o    Focus on modeling infrastructure support for exascale class technologies (e.g. GPUs, enhanced threading, etc)

o    Develop higher-order interpolation algorithms


  • B.S. in Math, Computer Science, Engineering or Physical Science e.g. (Meteorology, Physics) and 2+ years of related experience (advanced degree can be substituted for degree)
  • Proficiency in Linux and basic Linux administration - Proficiency in Modern Programming Languages e.g. (C, C++)
  • Candidate must be willing to learn other languages e.g. FORTRAN - Demonstrated ability to learn new programming languages and technical skills
  • Professional knowledge in one or more physical science fields
  • Technical Writing Experience
  • Good communication skills
  • Independent self-starter
  • US Citizenship required with the ability to obtain and maintain a clearance

COVID Policy: Prospective and/or new employees are required to adhere with SAIC's vaccination policy. All SAIC employees must be fully vaccinated and they must submit proof of vaccination on their first day of employment. Prospective or new employees may seek an exemption to the vaccination requirement at Contact Us and must have an approved exemption prior to the start of their employment. Where work is performed strictly at a customer site, customer site vaccination requirements preempt SAIC's vaccination policy.


SAIC® is a premier Fortune 500® technology integrator driving our nation's technology transformation. Our robust portfolio of offerings across the defense, space, civilian, and intelligence markets includes secure high-end solutions in engineering, digital, artificial intelligence, and mission solutions. Using our expertise and understanding of existing and emerging technologies, we integrate the best components from our own portfolio and our partner ecosystem to deliver innovative, effective, and efficient solutions that are critical to achieving our customers' missions.

We are more than 26,500 strong; driven by mission, united by purpose, and inspired by opportunities. SAIC is an Equal Opportunity Employer, fostering a respectful work culture based on diversity, equity, and inclusion that values all contributors. Headquartered in Reston, Virginia, SAIC has annual revenues of approximately $7.1 billion. For more information, visit

Share: mail