Jobs · Engineering · Wisconsin

Research Software Engineer

Morgridge Institute for Research · Madison, WI · 4 days ago
EngineeringFull-time

Primary Responsibilities

  • Interact with scientific group leaders and the Research Computing leads to identify pressing software engineering challenges and scoping / architecting / implementing / supporting a program of work to solve them.
  • Develop distributed systems code bases (typically languages include Go but C++ and Python are also used) to make them more robust or implement new functionality.
  • Assist the operations team in debugging distributed systems and to deploy newly-developed features.
  • As aligned with experience, lead student software engineering interns on specific semester-long projects.
  • Provide assistance with other projects, as necessary to support the overall mission and goals of the Morgridge Institute for Research

Requirements

  • A Bachelor’s degree in Computer Science, Mathematics, Physics, or biological sciences; Master’s degree preferred.
  • 1+ years of working with software engineering, preferably in a research environment; 3+ years preferred.
  • Programming experience in either Go, Python or C++; Go preferred.
  • Experience in utilizing large-scale computing environments such as batch or cloud is preferred.

Knowledge, Skills and Abilities Required

  • Strong systems design and programming skills.
  • Experience in writing design documents as part of feature design
  • Ability to keep projects organized in a project management / issuer tracker system such as JIRA.
  • Familiarity of software development environments like GitHub and modern CI/CD tooling such as GitHub Actions or Jenkins.
  • Knowledge of working with the following technologies and environments is desired: HTCondor, Containers/Kubernetes, Pelican, or federally-funded cyberinfrastructure.

Similar jobs