Undergraduate Python Web Developer
Job Summary:
The Laboratory for Atmospheric and Space Physics (LASP) Data Systems Group is seeking a student to support Python web development for the newly awarded NASA ROSES-2023 HPOSS “Heliophysics Software Search Interface (HSSI)”. The HSSI improves upon Heliophysics software findability, discoverability, accessibility, citability, and searchability, starting with efforts pioneered by the Python in Heliophysics Community (PyHC). The HSSI will allow users to come to one landing page to search for software related to their scientific tasks, starting with software packages contained within PyHC, and eventually expanding out to Heliophysics code in other programming languages and software areas not covered yet in PyHC. Along with the easy search interface, we will also design and implement a software metadata structure for Heliophysics software registration, and add a REST API to each.
You will work under the direct mentorship of a scientific software engineer as part of a highly collaborative team and will contribute to the application of FAIR (Findability, Accessibility, Interoperability, Reusability) principles for NASA Heliophysics software. Through this work, you will gain practical hands-on experience in web development, Python, Git, and other tools commonly used in web development and software engineering. You will also gain an understanding of open-source software communities, FAIR at NASA, usability testing, and an opportunity to present your work at a scientific conference.
The commitment is for one (1) year, starting October 1st 2024, and ending September 30th 2025. This includes up to 20 hours/week during the Fall (2024 and 2025) and Spring (2025) semesters, and up to 40 hours/week for the Summer (2025) semester. LASP employs around 100 undergraduate students, and we are flexible around class schedules.
What Your Key Responsibilities Will Be:
Specific job functions may include, but are not limited to:
- Participate in “Agile-like” software development methodologies
- Create HSSI website design based on feedback from local software communities, leveraging existing open-source software from related scientific fields
- Develop code in Python (Django), as well as leverage database tools (MongoDB and Postgres) and Git (GitHub) for version control
- Test and validate changes to code
- Participate in usability testing for the HSSI
- Write documentation for HSSI
- Present work at the PyHC spring 2025 meeting (potential for ability to present at AGU 2025 as well)
What We Require:
- Full-time, degree seeking student (must not graduate until Fall 2025 semester) pursuing an undergraduate degree in a physics, astrophysics, computer science, engineering, math, or a related field with 3.0+ cumulative GPA in good academic standing
- Ability to commit to full-time summer employment and half-time fall and spring semesters during the project’s funded period
- Due to US Export Control restrictions, only US Citizens and Permanent Residents may apply.
What We'd Like You to Have:
- Knowledge of and experience working with the Django Python framework, MongoDB, Postgres, and REST APIs
- Experience with Agile software development methodologies
- Experience with CI/CD
- Experience with GitHub
- Experience with usability testing
- Familiarity with software metadata standards (e.g., DataCite, CodeMeta)
- Interest in web development and open-source software development
- Ability to both work independently and collaboratively
- Ability to provide written and verbal status reports
What You Should Know:
- This position is flexible in allowing on-site, hybrid, or remote work
- The appointment will be for 50% time during fall/spring semester periods and 100% time over the summer periods.
- Background check is required for this position
What You Will Need:
- Intermediate-to-advanced Python programming knowledge, version control software (git), and some experience with web development
- Curiosity, critical thinking skills, and willingness to learn new skills