This job has expired

Research Software Engineer

Princeton University
Princeton, New Jersey

View more

Administrative Jobs
Academic Affairs, Research Staff & Technicians, Technology, Analysts & Programming
You need to sign in or create an account to save a job.

Job Details

Research Software Engineer


Job ID: 2021-12728
Type: Full-Time
# of Openings: 1
Category: Information Technology

Princeton University


Do you have a background in computational research and love to write code? Do you want to help enable and advance truly pioneering computational social science research? If so, the Initiative for Data-Driven Social Science (DDSS) at Princeton University is recruiting a Research Software Engineer (RSE) to join our growing team.

The DDSS is a new initiative that supports research at the technical forefront of quantitative inquiry in the social sciences. Because DDSS funds projects that span the social science disciplines, this position will require forward thinking and versatility in computational research expertise. Project requirements can vary from advanced applications of machine learning, the development of scalable and efficient research code, the creation of tailored software or APIs, the construction of queryable databases within a secure environment, and the versatile usage of algorithms to meet additional computational needs. Candidates must demonstrate the ability to help build a repository of advanced programming techniques that supports groundbreaking research at Princeton University.

Professional development opportunities include biweekly meetings with the Research Software Engineering (RSE) Group within Princeton University's Research Computing (RCS) department. The RSE Group is committed to building collaborative environments in which the best software engineering practices are valued, and to sharing and applying cross-disciplinary computational techniques in new and emerging areas.

If you have a strong background in scientific programming or high performance computing, academic research, along with a penchant for forward thinking and expanding the boundaries of computational social science, you have the right skill set to make an immediate impact on multiple high-profile research projects. You will be poised to grow and expand your programming and data analytics expertise through an evolving set of research problems.

The Research Software Engineer will be an integral team member, reporting to the DDSS Executive Director and working closely with the Senior Research Specialist. They will provide technical support for a variety of computational social science research projects for faculty, student/postdoctoral researchers, and technical staff to enable and accelerate their research computing efforts..



    Proactively pursue innovative solutions in and maintain current knowledge of software development tools and techniques, programming languages, and high-performance computing hardware to advance quantitative social science inquiry.Quickly understand underlying science, math, statistics, data analysis, and algorithms of computational research questions at a level sufficient to converse on social science topics with Princeton’s world-class researchers. This may consist of independent research (reading publications etc.) and/or studying existing code bases.Work independently, quickly translate research priorities into flexible software solutions that will meet potentially vague and nebulous requirements due to the inherent unpredictability of academic research.Continually keep abreast of a rapidly changing landscape of software engineering best practices, software development techniques, and computational research solutions.Regularly meet with, listen to, and ask questions of researchers to ensure that engineered solutions fit the research need.Communicate complex software engineering concepts with large project teams consisting of domain experts each with varying degrees of software engineering knowledge.Identify appropriate solutions for each project and develop a set of applicable best practices uniquely appropriate for that project (e.g., version control, continuous integration and continuous delivery, software design, programming model, annotation, etc.). Significantly contribute to the center’s repository of technical skills and ensure long term maintainability and sustainability of solutions, documenting projects in a descriptive and appropriately detailed manner that can be understood by both researchers and future Research Software Engineers.Provide technical expertise and guidance for improving the performance and quality of new and existing code bases.Lead the design and construction of increasingly complex research software systems in a way that ensures projects are usable, maintainable, and sustainable.Parallelize, debug, port, and tune existing research code to meet criteria set by the research needs.Develop software tools that allow researchers to interact in flexible ways with extremely large data sets.Understand and address software engineering questions that arise in research planning.



    Strong programming skills, particularly in the languages used in social science high-performance computing applications (e.g., C++, Python, R)Proficiency in database language and tools (e.g., SQL, MySQL, RSQLite.Knowledge of data structures, database storage, data aggregation, data mapping, and/or data architecture. This includes experience with large queryable databases.Ability to create independent software modules and software documentationAbility to learn new systems beyond area of core knowledgeExperience working in an academic environment and ability to communicate clearly with non-technical colleaguesAbility to work independentlyAbility to communicate effectively with a diverse user base having varied levels of technical proficiencies

Preferred Qualifications

    Experience tuning and optimizing research software and algorithmsExperience working with very large data setsExperience developing research software outside of core domain knowledgeBackground in quantitative social science helpful, but not required


A Bachelor’s degree is required. A graduate degree or equivalent experience in a research setting is preferred.

Princeton University is an Equal Opportunity/Affirmative Action 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. EEO IS THE LAW



Princeton entrance

Princeton University is a vibrant community of scholarship and learning that stands in the nation's service and the service of humanity. As a world-renowned research university, Princeton seeks to achieve the highest levels of distinction in the discovery and transmission of knowledge and understanding. At the same time, Princeton is distinctive among research universities in its commitment to undergraduate teaching.

Princeton University facultyOpportunity and Impact

At Princeton, every member of our community plays an important role in our mission of teaching and research. That mission provides every faculty and staff member with the opportunity to make an impact bigger than oneself. Learn about working at Princeton and meet some of our wonderful employees.


Services and Resources

When you make a commitment to our teaching and research mission, you will have access to the University’s world-renowned resources to help you succeed at work and in life. Discover the exceptional benefits and unique opportunities we offer as part of our commitment to you.

Work-Life Integration

Life is complicated. At Princeton, we recognize that and are sensitive and responsive to the challenges our employees face. The University offers a broad array of benefits and services that help our staff in a variety of ways.

Explore Our Job OpeningsPrinceton students and prof

Whether you’re already part of our community or just getting to know us for the first time, we invite you to imagine the meaningful difference you can make while working at Princeton. For faculty member and academic professional opportunities, visit the Dean of the Faculty website. For staff member job openings and to join our Talent Network, visit our Careers website.

Connect With Us

Find Us
United States
You need to sign in or create an account to save a job.

Get job alerts

Create a job alert and receive personalised job recommendations straight to your inbox.

Create alert