1

Research Software Engineer Jobs (NOW HIRING)

Research Software Engineer

Houston, TX · On-site

$195K/yr

Research Software Engineer Engineer III ADV000CPX NASA Johnson Space Center Houston, Texas HX5 is an award-winning provider of engineering, research and development, and technical services to clients ...

Research Software Engineer

Houston, TX · On-site

$195K/yr

They are currently seeking an HPC Research Software Engineer to join the team at NASA Johnson Space Center in Houston, TX, focusing on software development practices for flight software and guidance ...

Research Software Engineer

Mountain View, CA · On-site

$241K/yr

As a software engineer, you will work on a specific project critical to Google's needs with ... As a part of the AI and Research Accelerator, a specialized team within the newly formed AI ...

Senior Research Software Engineer

Redmond, WA · On-site

$229K/yr

The Microsoft Research Americas Engineering team supports several MSR labs (Redmond, New England, New York City, and Montreal) and seeks an innovative and experienced Senior Research Software ...

Proactively identify opportunities to make R&D software more accessible, scalable, and self-service for scientists. Requirements: * Bachelor's degree in Computer Science, Engineering, or a related ...

next page

Showing results 1-20

Research Software Engineer information

See salary details

$111.5K

$206K

How much do research software engineer jobs pay per year?

As of Jun 24, 2026, the average yearly pay for research software engineer in the United States is $200,510.00, according to ZipRecruiter salary data. Most workers in this role earn between $205,000.00 and $205,000.00 per year, depending on experience, location, and employer.

Can I make 200k a year as a software engineer?

Research Software Engineers working in high-demand industries, such as tech or finance, can potentially earn $200,000 or more annually, especially with extensive experience, specialized skills, or advanced degrees. Salaries vary based on location, company size, and expertise, with senior roles and those involving machine learning, data science, or leadership often reaching or exceeding this level.

What engineers make $300,000 a year?

Senior research software engineers with extensive experience, specialized skills in areas like machine learning or high-performance computing, and often advanced degrees can earn $300,000 or more annually. Compensation varies based on industry, location, and company size, with some roles in tech, finance, or biotech reaching this level through bonuses and stock options.

What are the key skills and qualifications needed to thrive in the Research Software Engineer position, and why are they important?

To thrive as a Research Software Engineer, you need strong programming skills (often in Python, C++, or Java), a solid understanding of algorithms, and an academic or industry background in computer science or a related field. Familiarity with version control systems like Git, cloud platforms, and experience using scientific computing libraries and frameworks are valuable, while a master's or Ph.D. can be advantageous for specialized roles. Excellent problem-solving, communication, and collaborative skills help in working closely with researchers and multidisciplinary teams. These capabilities are crucial for successfully translating complex research problems into robust, reproducible software solutions that advance scientific inquiry.

What does a research software engineer do?

A research software engineer develops, maintains, and optimizes software tools and systems to support scientific research. They often collaborate with researchers to implement algorithms, analyze data, and ensure software reliability, frequently using programming languages like Python, C++, or Java. Their work enables efficient data processing and reproducibility in research projects.

What are some typical daily responsibilities for a Research Software Engineer?

As a Research Software Engineer, your daily work often involves designing and implementing software to support cutting-edge research projects, collaborating with scientists to understand their computational needs, and ensuring code reliability and reproducibility. You may spend time optimizing algorithms, writing unit tests, documenting software, and participating in code reviews within a collaborative team environment. Additionally, you might help deploy research applications on high-performance or cloud computing platforms and contribute to research publications. Balancing independent programming tasks with ongoing communication is key to making meaningful contributions to both the research and software development processes.

What is a Research Software Engineer job?

A Research Software Engineer (RSE) combines expertise in software development and research to create, maintain, and optimize software used in scientific or academic projects. They work closely with researchers to develop efficient, reliable, and reproducible software solutions for data analysis, simulations, or machine learning. RSEs bridge the gap between research and software engineering, ensuring that computational tools meet the needs of scientific investigations. Their role may involve coding, performance optimization, software sustainability, and deploying applications on high-performance computing or cloud platforms.

What engineers make $500,000?

Senior research software engineers with extensive experience, specialized skills in machine learning or data science, and leadership roles can earn $500,000 or more annually, especially in high-cost-of-living areas or large tech companies. Compensation often includes base salary, bonuses, and stock options, reflecting their advanced expertise and impact on projects.
What cities are hiring for Research Software Engineer jobs? Cities with the most Research Software Engineer job openings:
What are the most commonly searched types of Research Software Engineer jobs? The most popular types of Research Software Engineer jobs are:
Who are the top companies hiring for Research Software Engineer jobs? The top employers for Research Software Engineer jobs are:
What states have the most Research Software Engineer jobs? States with the most job openings for Research Software Engineer jobs include:
Infographic showing various Research Software Engineer job openings in the United States as of June 2026, with employment types broken down into 1% As Needed, 86% Full Time, 11% Part Time, 1% Temporary, and 1% Contract. Highlights an 87% Physical, 5% Hybrid, and 8% Remote job distribution, with an average salary of $200,510 per year, or $96.4 per hour.

Research Software Engineer II

Princeton University

Princeton, NJ

$216K/yr

Full-time

Posted 3 days ago


Princeton University rating

9.0

Company rating: 9.0 out of 10

Based on 26 frontline employees who took The Breakroom Quiz

21st of 539 rated colleges and universities


Job description

Overview

Princeton Laboratory for Artificial Intelligence (the "AI Lab") invites applications for a full-time Research Software Engineer (RSE). As an RSE joining the AI Lab, you will contribute to the current research that the AI Lab supports across the university. Candidates can read more about the AI Lab on the website.

In this position, you will be both a member of Princeton's RSE team, as well as an integral member of the AI Lab and the research community it supports. You will work with a diverse group of faculty, postdocs, and students from multiple disciplines. If you are passionate about advancing AI research, working alongside leading researchers, and contributing to impactful open-source projects, we encourage you to apply for this position.

This is a full-time position located in Princeton, NJ and will follow a hybrid work schedule. This is a 3-year term position, with a possibility of reappointment. The position is up to a 3-year term, with a possibility of reappointment.

Responsibilities

Application of Domain Expertise:

  • Initiate and maintain open collaboration with researchers across Princeton University. Regularly meet with, listen to, and ask questions of researchers to ensure the engineered solutions fit the research need.
  • Apply AI and machine learning algorithms to software engineering projects in the researcher's specific domain.

Research Software Engineering

  • Working independently with minimal guidance to understand and translate research priorities into flexible software solutions.
  • Collaborate with a team to develop comprehensive open source software solutions and models based on researcher-provided requirements and desired outcomes. Conduct independent or team research to identify and solve problems, and provide detailed documentation for the research team.
  • Contribute to software solutions by establishing project-specific best practices, including version control, continuous integration and delivery, software design, and programming models.
  • Ensure long-term maintainability, sustainability and open access by thoroughly documenting projects. Provide support for the use of software libraries, including detailed documentation that is accessible to both researchers and future Research Software Engineers.
  • Provide technical expertise and improve the performance and quality of new and existing code bases through hands-on work with ongoing research.
  • Collaborate with researchers to ensure solutions meet their needs, addressing software engineering questions during research planning. Communicate software engineering concepts to project teams with varying levels of expertise. Serve as a liaison with Princeton Research Computing staff on GPU cluster-related issues.

Professional Development

  • Learn the underlying science, mathematics, statistics, data analysis, and algorithms of computational research questions through independent research, studying existing code bases, and staying current with publications.
  • Build awareness of software development tools and techniques, best practices in software engineering, programming languages, high-performance computing hardware, and computational research solutions.
  • Participate in a community of research software engineers and engage in continued professional development opportunities at Princeton Research Computing.
Qualifications

Essential Qualifications:

  • Bachelor's degree or equivalent in computer science, engineering, applied math, sciences, or related computational field.
  • A minimum of 4 years as a Research Software Engineer or equivalent experience (e.g. graduate school, industry experience, open-source software development, etc.).
  • Proficiency in programming languages used in AI and computational research (e.g. Python, C++, R, MATLAB, Julia).
  • Expertise in machine learning algorithms and techniques. Familiarity with AI frameworks like TensorFlow, PyTorch, or Scikit-learn.
  • Experience working with large datasets and familiarity with GPU computing environments.
  • Demonstrated success:Consistently using conventional and readable coding style.Creating comprehensive and well-written documentation. Using version control systems.
  • Demonstrated successes contributing to a collaborative research team.
  • Ability to work independently.
  • Strong written and oral technical communication skills with the ability to present complex research findings to technical and non-technical audiences.

Preferred Qualifications:

  • Expertise in conducting research in Artificial Intelligence and Machine Learning. Contributions to open-source libraries and publications in relevant journals or conferences are highly valued.
  • Experience participating in multiple software development projects simultaneously, ensuring timely delivery and adherence to quality standards. An eagerness to take on more responsibility and develop project management skills.
  • A Masters/Ph.D. in computer science, applied science, or other related field with a strong computational focus or equivalent experience in a research setting preferred.

Princeton University is an Equal Opportunity Employer and all qualified applicants will receive consideration for employment without regard to age, race, color, religion, sex, sexual orientation, gender identity or expression, national origin, disability status, protected veteran status, or any other characteristic protected by law.

The University considers factors such as (but not limited to) scope and responsibilities of the position, candidate's qualifications, work experience, education/training, key skills, market, collective bargaining agreements as applicable, and organizational considerations when extending an offer. The posted salary range represents the University's good faith and reasonable estimate for a full-time position; salaries for part-time positions are pro-rated accordingly.

If the salary range on the posted position shows an hourly rate, this is the baseline; the actual hourly rate may be higher, depending on the position and factors listed above.

The University also offers a comprehensive benefit program to eligible employees. Please see this link for more information.

Standard Weekly Hours36.25Eligible for OvertimeNoBenefits EligibleYesProbationary Period180 daysEssential Services Personnel (see policy for detail)NoPhysical Capacity Exam RequiredNoValid Driver's License RequiredNo Experience LevelMid-Senior Level#Ll-DP1Salary Range$125,000 to $140,000Employment Type: FULL_TIME

What Princeton University employees say

Pay

Benefits

Hours and flexibility

Workplace

Get the full story on Breakroom