Software Engineer/Programmer II/III
Role details
Job location
Tech stack
Job description
-
Collaborates closely with a team of atmospheric scientists to develop a sophisticated computer program that accepts satellite and necessary ancillary data, produces a higher- level data product, and functions as an essential step in the value chain.
-
Conducts product testing to confirm integrity and validity.
-
Engages in regular team meetings and provides consistent updates on project progress.
-
Articulates technical details clearly and presents findings to diverse audiences.
-
Develops code that ensures seamless integration into a larger processing system, adhering to all agreed-upon initiation sequences and exit codes.
-
Tests programs extensively to ensure reliable function under a wide range of conditions, including corrupted or incomplete input data.
-
Writes code with predictable failure modes to enable efficient troubleshooting and debugging.
-
Designs a test plan for the software.
-
Obtains ongoing professional development and the acquisition of new skills.
-
Exemplifies UCAR/NCAR's institutional values of scientific excellence and integrity as well as mutual respect, providing an example for colleagues to aspire to.
-
Maintains all required employee certifications and training.
-
While remaining an employee, the certifications and trainings required of all employees should be expected., * Collaborates closely with a team of atmospheric scientists to develop a sophisticated computer program that accepts satellite and necessary ancillary data, produces a higher- level data product, and functions as an essential step in the value chain.
-
Conducts comprehensive product testing to confirm integrity and validity.
-
Engages in regular team meetings and provides consistent updates on project progress.
-
Articulates technical details clearly and presents findings to diverse audiences.
-
Develops code that ensures seamless integration into a larger processing system, adhering to all agreed-upon initiation sequences and exit codes.
-
Tests programs extensively to ensure reliable function under a wide range of conditions, including corrupted or incomplete input data.
-
Writes code with predictable failure modes to enable efficient troubleshooting and debugging.
-
Develops a comprehensive software test plan, including the design and creation of automated testing tools that integrate with the development platform.
-
Designs and creates automated testing tools for the software and how it can integrate into the development platform.
-
Creates tools that read the log files and pinpoint failure conditions.
-
Generates performance diagnostics for each component of the system and identifies opportunities to optimize the codebase.
-
Obtains ongoing professional development and the acquisition of new skills.
-
Exemplifies UCAR/NCAR's institutional values of scientific excellence and integrity as well as mutual respect, providing an example for colleagues to aspire to.
-
Maintains all required employee certifications and training.
Requirements
The ideal candidate must be an expert in a scientific Object-Oriented programming language and a scripting language, possessing expertise in LINUX and software testing at the unit and integration levels. The candidate must have clear written and oral communication skills and experience working collaboratively with a team of atmospheric scientists to develop a sophisticated computer program that processes satellite data to produce a higher-level data product. A thorough grasp of metadata concepts, working competency with cybersecurity protocols, and knowledge of cloud computing are required. Candidate should have facility with modern software libraries, compilation skills, and makefiles, along with experience in the graphical display of data. Experience with GitHub or a comparable version control system, databases and SQL, and a working understanding of atmospheric radiative transfer and atmospheric physics is desirable., Bachelor's degree in a computer-related field and progressive relevant experience, 4-8 years OR Equivalent combination of education and experience, * Skill in a scientific Object-Oriented programming language and a scripting language
- Expertise in LINUX and software testing at the unit and integration levels
- Experience working collaboratively
- A thorough grasp of metadata concepts
- Complete understanding of cybersecurity protocols and cloud computing
- Demonstrated experience with modern software libraries, compilation skills, and makefiles
- Experience in the graphical display of data
- Clear written and oral communication skills
- Expertise with a scripting language
- Software testing expertise at the unit and integration levels
- Ability to create graphical displays of data
- Working competency with cybersecurity protocols
- Cloud computing
- Occasional travel to team meetings and workshops may be required.
Desired, but not Required:
- Experience with Github or a comparable version control system
- Comfortable working in a development environment using modern software platforms
- Experience of satellite data processing
- Working understanding of atmospheric radiative transfer
- Atmospheric physics and scientific literacy
- Statistics and other mathematical concepts
- Working knowledge of satellite dynamics and terminology
- Experience working in the context of structured project management
- Familiarity with netCDF or a comparable scientific data format
- Knowledge of code optimization techniques and parallel processing.
- Hold a balanced approach to the use of AI in the modern workplace
- Working understanding of atmospheric radiative transfer and atmospheric physics, Bachelor's degree in a computer-related field and progressive relevant experience, 8-12 years or Equivalent combination of education and experience, * Skill in a scientific Object-Oriented programming language and a scripting language
- Expertise in LINUX and software testing at the unit and integration levels.
- Experience working collaboratively
- In-depth understanding of metadata concepts
- Extensive technical expertise and competency with cybersecurity protocols and cloud computing
- Experience with modern software libraries, compilation skills, and makefiles, along with experience in the graphical display of data.
- Clear written and oral communication skills
- Expertise with a scripting language
- Software testing expertise at the unit and integration levels
- Ability to create graphical displays of data
- Thorough grasp of metadata concepts
- Working competency with cybersecurity protocols
- Cloud computing
- Occasional travel to team meetings and workshops may be required.
Desired, but not Required:
- Experience with Github or a comparable version control system
- Comfortable working in a development environment using modern software platforms
- Experience of satellite data processing
- Working understanding of atmospheric radiative transfer
- Atmospheric physics and scientific literacy
- Statistics and other mathematical concepts
- Working knowledge of satellite dynamics and terminology
- Experience working in the context of structured project management
- Familiarity with netCDF or a comparable scientific data format
- Knowledge of code optimization techniques and parallel processing
- Hold a balanced approach to the use of AI in the modern workplace
- Ability to create a GUI for data visualization at timescales useful for software debugging
- Working understanding of atmospheric radiative transfer and atmospheric physics
Benefits & conditions
- Tuition Assistance, time off allowance to attend classes, and other professional development opportunities.
- UCAR contributes 10% of your eligible pay into your retirement account; 100% fully vested on day one.
- Starting minimum accrual of 20 days of personal time off each year (prorated for less than full-time positions).
- 10 paid holidays.
- 12 weeks of paid parental leave.
- Short-term medical leave paid at 100% of your regular salary.
- EcoPass for local Colorado residents to use the Denver and Boulder-area transit system at no cost.