Senior Research Software Engineer

Updated: 21 days ago
Location: Princeton, NEW JERSEY
Job Type: FullTime

The Princeton Language and Intelligence Initiative at Princeton University invites applications for a Senior Research Software Engineer (RSE). This multidisciplinary initiative has three Research thrusts: (a) Better design, evaluation, safety and understanding of large AI models (especially language models); (b) Applications of large AI models to many academic disciplines; and (c) Studying impact of large AI models on society and the world. The Initiative will produce open-source software and models.

 

In this position, you will be an integral member of dynamic research teams focused on building innovative and complete software solutions for cutting-edge AI research and making fundamental contributions to AI projects with Princeton’s world class researchers. As a Senior RSE you will bring your advanced technical knowledge, raise the computational capability of multiple projects, and translate key PLI priorities into engineering solutions.

 

The term of this appointment is 3 years, with the possibility of renewal based upon satisfactory performance and funding. 

The position is located in Princeton, NJ with the possibility for some flexible work arrangements. This is not a remote position.



 

Application of AI Software Expertise

  • Have strong command of modern AI approaches and proficient understanding of the underlying algorithms of AI research questions at a level sufficient to converse on projects with Princeton’s world-class researchers to consistently contribute to the ongoing work. This may consist of keeping abreast of advances in the AI space, independent research (reading publications etc) and/or studying existing code bases.
  • Working independently, initiate open collaboration with researchers. Regularly meet with, listen to, and ask questions of researchers to ensure that engineered solutions fit the research need. Understand and address software engineering questions that arise in research planning.
  • Apply appropriate AI-specific algorithms, frameworks, and software engineering techniques to advance research on large AI models.

Software Development

  • Working independently guided by high level objectives, to quickly translate research priorities into flexible software solutions that consistently contribute to ongoing research project(s).  Collaborate with our diverse team to help develop and improve large AI models, help conduct experiments, analyze results, and co-author research publications.
  • Develop, maintain, and improve our shared infrastructure for training / fine-tuning and prompting large AI models.
  • Maintain software libraries/environment/Github repositories and support model use.
  • Provide support for use of these libraries in the core AI models group as well as for interdisciplinary work. This includes documentation of projects in a descriptive and appropriately detailed manner that can be understood by both researchers and future Research Software Engineers.
  • Serve as liaison with Princeton High Performance Research Computing (HPRC) staff on GPU cluster related issues.

 

Technical Leadership

  • Provide technical expertise and guidance for improving the performance and quality of new and existing code bases through hands-on work with ongoing research.
  • Mentor, instruct and educate less experienced RSEs, researchers, and other team members in research software engineering approaches and AI-specific topics.
  • Contribute to professional development and professional growth activities
  • Lead and participate in code reviews
  • Create an inclusive atmosphere and environment in which best engineering practices are valued, shared, and prioritized

 

We prioritize professional development for RSEs and offer the following opportunities:

  • Build awareness of software development tools and techniques, software engineering best practices, programming languages, high-performance computing hardware, and computational research solutions.
  • Access to a community of about two dozen research software engineers as well as continued professional development opportunities at Princeton Research Computing.


  • A Bachelor/Masters degree in computer science, engineering, sciences, or related computational field is required.
  • 7+ years’ relevant experience
  • Solid coding skills and extensive experience with large AI models.
  • Experience multiple independent software projects
  • Expertise with GPU computing environments and ML frameworks and libraries (e.g,, DeepSpeed, HuggingFace).
  • Prior research experience in AI/ML and/or contributions to open-source libraries.
  • Strong written and oral technical communication skills.

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. KNOW YOUR RIGHTS



36.25

No

Yes

180 days

No

No

No

Mid-Senior Level

#Ll-DP1

Join our Talent Network to receive updates about working at Princeton.
Princeton University job offers are contingent upon the candidate’s successful completion of a background check, reference checks, and pre-employment screening, as applicable.
If you have questions or comments regarding the iCIMS Privacy Policy or iCIMS FAQs , please contact [email protected] .
Go to our careers site.

Similar Positions