Data Systems Software Engineer II/III
Role details
Job location
Tech stack
Job description
LASP is seeking talented individuals with experience in scientific software engineering and data processing. Join our team of professionals and students developing and operating software systems for NASA space missions' data processing and analysis. Every day, we innovate and problem-solve to tackle exciting challenges. As a team member, you'll contribute your skills and experiences to implement scientific processing algorithms, maintain and improve existing systems, and develop new data processing and visualization capabilities. We cultivate a culture that values creativity, empathy, work-life balance, critical thinking, problem-solving, and diversity of thought., * Develop, implement, and maintain software systems for processing, analyzing, and visualizing scientific and engineering data from space science missions on Linux-based platforms.
- Write, debug, and improve code to process raw science and housekeeping data into scientific data products.
- Collaborate with scientists to develop algorithms and produce and analyze data products.
- Work in collaboration with engineers, students, and scientists to define software requirements that align with project goals.
- Effectively communicate solutions through the creation of documentation, flowcharts, diagrams, and clean, well-documented code.
- Apply software engineering best practices throughout the development process.
- Engage in peer/code review with teammates, assessing techniques, procedures, and technical approaches to promote collective improvement.
- Other duties as assigned., * The final round of candidates will be asked to participate in a "take-home" coding exercise and will be invited for an in-person interview.
- Occasional limited travel may be necessary for this position, to support remote instrument/project activities lasting up to 1 week at a time.
- A flexible hybrid remote/on-site work schedule is possible, to include in-person support of significant project meetings and activities.
- Due to requirements to access export-controlled data and information, only U.S. citizens, lawful permanent residents (green card holders), or other protected individuals (i.e., persons designated as an asylee, refugee, or temporary resident under amnesty provisions) may apply.
Requirements
The level (II or III) will be determined based on the selected candidate's education, experience, technical depth, and demonstrated ability to perform work at the defined scope., * BS/BA in computer or physical sciences, or related field.
- Experience with scientific programming, software development, or data processing:
- Data Systems Software Engineer II: 2-4 years
- Data Systems Software Engineer III: 5-8 years, * Experience in scientific programming
- Experience with Command Line Interfaces (CLIs)/Application Programming Interfaces (APIs)
- Experience using source code version control systems and interfaces (e.g., Git, GitHub, Bitbucket, GitLab)
- Experience interacting with relational databases (e.g., Amazon RDS, PostgreSQL, MySQL, SQLite)
- Familiarity with Agile-based software development workflows
- Familiarity with Continuous Integration/Continuous Deployment (CI/CD) pipelines
- Experience contributing to open-source software projects
Benefits & conditions
At the University of Colorado Boulder, we are committed to supporting the holistic health and well-being of our employees. Our comprehensive benefits package includes medical, dental, and retirement plans; generous paid time off; tuition assistance for you and your dependents; and an ECO Pass for local transit. As one of Boulder County's largest employers, CU Boulder offers an inspiring academic community and access to world-class outdoor recreation. Explore additional perks and programs through the CU Advantage program.