Reasonable Accommodations for Applicants with Disabilities

CU Boulder is committed to making information and resources that are available via the web accessible for all users. The CU Boulder careers site used to apply for staff positions is currently not fully accessible for individuals who are using screen readers and other assistive technologies, however, we are working with the supplier to make this accessible to all. If you use assistive technology and need to access the CU Boulder staff careers site please contact the ADA coordinator by email at or call 303-492-9725 for assistance.

Skip to content

CSDMS Research Software Engineer

Requisition Number:



Boulder, Colorado

Employment Type:

Research Faculty



Job Summary

The CSDMS Integration Facility seeks a research software engineer (RSE) or hybrid RSE/Postdoc with at least 1 year of software development experience in one or more object-oriented programming languages, with an emphasis on Python.  The position is flexible to allow up to 50% time for research-related activities for a postdoc.  Postdocs will be expected to publish their research and to attend and present at scientific meetings.    

Who We Are

 The Community Surface Dynamics Modeling System (CSDMS) is an open-source, community-based modeling effort with primary funding from the National Science Foundation. CSDMS promotes earth surface process modeling by developing, supporting, and disseminating integrated software components that investigate earth surface changes, including the production, erosion, transport, and deposition of sediment and nutrients in landscapes, seascapes, and their sedimentary basins.  More information may be found online at: The CSDMS Integration Facility is a research center within the Institute of Arctic and Alpine Research (INSTAAR) located at the University of Colorado Boulder.

What Your Key Responsibilities Will Be

You will work on multiple earth surface process and geomorphology projects with the purpose of contributing to our community’s efforts in developing new modeling capabilities and to apply existing models that may involve carrying out simulations on high-performance computing and cloud platforms.  The successful applicant will work as part of a small team that is developing new code, modifying/maintaining existing code, and testing a plug-and-play framework that couples process-based numerical models, written by scientist-modelers for creation of simulation capabilities for new theories and concepts.  The Integration Facility’s software engineers work with multiple operating systems and computational platforms, ranging from desktops to high performance computers. This position will also have responsibility for user support: providing technical support to community members and students, investigating and providing timely responses to user questions, and working with users to troubleshoot problems. You will be responsible for creating documentation, examples, and online training materials.  In collaboration with other developers and scientists you will assist with organization and teaching at workshops and attend various meetings.

What You Should Know

This position offers an enriching work experience and an opportunity to work with scientists from around the world on open-source models.  You should thrive in an environment where you will collaborate with scientists from a wide range of backgrounds in numerical modeling and experimental/observational studies.  The CSDMS project is growing rapidly; currently there are about 1800 members from 70 countries.  

This position will be filled as a Research Associate, Professional Research Assistant, or Post-Doctoral Associate at the University of Colorado Boulder. 

What We Can Offer

Salary will range from $60,000.00 - $75,000.00 annually depending upon candidate factors such as experience, degree, etc. 


The University of Colorado offers excellent benefits, including medical, dental, retirement, paid time off, tuition benefit and ECO Pass. The University of Colorado Boulder is one of the largest employers in Boulder County and offers an inspiring higher education environment. Learn more about the University of Colorado Boulder.

Be Statements

Be Innovative. Be Supportive. Be Boulder.

What We Require

  • Bachelor’s degree with 3+ years of experience, Master’s degree with 2+ years of practical experience, or (for postdocs) PhD in geoscience, computer science or a related science or engineering discipline.
  • Software development experience with Python.
  • Experience with git and collaborative software development (e.g., using GitHub, Bitbucket, or similar).
  • Unix command line and shell scripting experience.

What You Will Need

  • Good communication skills (written and oral) and strong commitment to working in a team.
  • Demonstrated ability to work closely with diverse staff, developers, and end users.
  • Strong desire to continue learning new skills, tools, and concepts.


What We Would Like You To Have

  • Software development experience in C, C++, Fortran, R, Matlab or NetLogo.
  • Programming experience involving coupling of models.
  • Experience with Jupyter Notebook (creating and using).
  • Experience teaching, especially with Python and Jupyter Notebook.
  • Experience in mathematical and numerical model development and application.
  • Experience with geospatial data formats such as netCDF.

Special Instructions

To apply, please submit the following materials:
  1. Resume/CV
  2. Cover Letter
  3. Proof of Degree
During the application process you will need to enter contact information for 3 references and we will request letters of recommendation from them immediately after you complete your application. 

Review of applications will begin immediately and will continue until the position is filled.  

Posting Contact Name: Gregory Tucker

Posting Contact Email:

The University of Colorado is an Equal Opportunity/Affirmative Action employer