Research Software Engineer

University of ChicagoChicago, IL
$110,000 - $135,000Hybrid

About The Position

The Research Software Engineer (RSE) will develop software to support DSI’s research priorities and specific initiatives related to data science for social good including resilient food systems, climate, and human rights. The RSE will collaborate with the software team and interdisciplinary research groups across the University of Chicago to develop new software products and build robust, scalable solutions for computational research and public impact projects. 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.

Requirements

  • Minimum requirements include a college or university degree in related field.
  • Minimum requirements include knowledge and skills developed through 5-7 years of work experience in a related job discipline.

Nice To Haves

  • Professional experience in software engineering or a related programming field.
  • 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.
  • Knowledge of cloud computing platforms (AWS, GCP, Azure, etc.).
  • Proficiency in software development best practices, including version control (Git) and CI/CD pipelines.
  • 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; 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.

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.
  • Develops, tests, debugs, and maintains new and existing application software.
  • Works independently to define and document project requirements and provides overall technical guidance in design, architecture and implementation of software solutions.
  • Performs other related work as needed.

Benefits

  • health
  • retirement
  • paid time off
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service