Research Software Engineer
University of ChicagoAbout the role
Department
PSD Data Science Staff
About the Department
Job Summary
This role involves designing, developing, testing, and maintaining software, with an emphasis on high-quality, reusable code. The ideal candidate will have experience working with substantial existing codebases, strong problem-solving skills, and a keen interest in data-driven applications, machine learning, and artificial intelligence.
This position is eligible for a partial remote work arrangement.
Responsibilities
- Design, develop, test, and debug complex software programs.
- Implement and optimize algorithms for data-intensive research.
- Deploy and maintain systems in both simulated environments and on physical hardware.
- Diagnose and resolve complex system and software issues.
- Execute feature requests independently, with guidance from the PI and project manager on goals and design.
- Collaborate with team members to improve software quality, testability, and fault tolerance.
- Manage multiple projects simultaneously, supporting faculty, postdoctoral researchers and students in achieving their research objectives.
- Designs new systems, features, and tools. Solves complex problems and identifies opportunities for technical improvement and performance optimization. Reviews and tests code to ensure appropriate standards are met.
- Acts as a technical consultant and resource for faculty research, teaching, and/or administrative projects.
- Performs other related work as needed.
Minimum Qualifications
Education:
Minimum requirements include a college or university degree in related field.
Work Experience:
Certifications:
---
Preferred Qualifications
Experience:
Strong experience with Linux, Python, and at least one additional programming language.
Experience working with large, existing codebases.
Experience in building web applications and APIs.
Technical Skills or Knowledge:
Knowledge of cloud computing platforms (AWS, GCP, Azure, etc.).
Proficiency in software development best practices, including version control (Git) and CI/CD pipelines.
Preferred Competencies
Strong project management, analytical, and problem-solving skills.
Excellent written and verbal communication skills in English.
Ability to work effectively in a dynamic, hybrid work environment, collaborating with faculty, staff, students, and the broader UChicago community.
Familiarity with virtualization and containerization (Docker, Kubernetes, etc.).
Expertise in at least one of the following:
Developing highly performant solutions to computational problems using Python, Rust, or Julia.
Modern frameworks for full-stack web development, including backend (Flask, Node.js), front-end (React, Angular), and/or GIS and spatial data visualization tools.
Building AI solutions, including chatbots, RAG, and other LLM-based tools.
Interest in and experience developing software to support data-driven research.
Application Documents
Resume/CV (required)
Cover Letter (preferred)
References (3 contacts) (preferred)
When applying, the document(s) MUST be uploaded via the My Experience page, in the section titled Application Documents of the application.
Job Family
Role Impact
Scheduled
Apply for this role
Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.
Apply Now →Generate Application KitFree account required — sign up in 30s