Full-Time

Research Software Engineer 1

Posted on 5/15/2026

Deadline 5/15/27
Princeton University

Princeton University

Compensation Overview

$103k - $115k/yr

Princeton, NJ, USA

In Person

Category
Software Engineering (1)
Required Skills
Python
Git
NumPy
DevOps
Requirements
  • Strong programming skills, particularly in Python used in scientific computing applications.
  • 2-5 years’ experience as a Research Software Engineer or in a similar field (including graduate level and postdoctoral work).
  • Experience with Python libraries (especially NumPy) and the Python ecosystem of tools for managing environments and code testing, linting, dependency management and packaging (e.g., Poetry).
  • Demonstrated success: using conventional and readable coding style; creating comprehensive and well-written documentation; using version control systems; using CI/CD pipelines.
  • Demonstrated successes contributing to a collaborative research team.
  • Ability to learn new programming languages and technologies beyond area of core knowledge.
  • Ability to communicate effectively with a diverse user base having varied levels of technical proficiencies.
  • Ability to manage code bases with agility in a fast-paced, collaborative environment.
  • Bachelor's degree in computer science, engineering, sciences, or related computational field preferred as a minimum educational requirement.
Responsibilities
  • Application of Domain Expertise: Working toward understanding the role within the research domain and practical understanding of the underlying science, math, statistics, data analysis, and algorithms of computational research questions; may include researching with the team or independent research and studying existing code bases; maintain open collaboration with researchers; regularly meet with researchers to ensure engineered solutions fit the research need; understand and address software engineering questions in research planning; apply domain specific algorithms, techniques and code to advance software engineering in the research field.
  • RSE: Working in a team or independently to understand and translate research priorities into flexible software solutions; with guidance from a team, use researcher-provided requirements and desired end state to build elements of software solutions; figure out problems through independent or team research, develop elements of a solution, and provide full documentation for usage by the research team; contribute elements to software solutions following best practices (version control, CI/CD, software design, programming model, etc.); enable long term maintainability and sustainability by documenting projects; contribute technical expertise to improve performance and quality of new and existing code; port, debug, tune and potentially parallelize existing research code; develop software tools to interact with extremely large data sets; follow project management plans, provide feedback on timelines, manage milestones, and communicate with broader team; communicate software engineering concepts with project teams of varied software engineering knowledge.
Desired Qualifications
  • Experience in an academic research environment.
  • Ability to work independently.
  • Experience tuning and optimizing research software and algorithms.
  • Experience developing research software outside core domain knowledge.
  • Background in a related domain is helpful but not required.
  • Experience working with cloud computing platforms (especially Amazon Web Services).
  • Experience with Docker and Node.js.
  • Experience building, executing, and maintaining complex data analysis pipelines.
  • Experience packaging and publishing data deliverables in accordance with NASA’s Data Publication Process.
  • Master's or Doctoral degree in computer science, applied science, or related field with strong computational focus or equivalent experience in a research setting.

Company Size

N/A

Company Stage

N/A

Total Funding

N/A

Headquarters

N/A

Founded

N/A