Research Software Engineer

Princeton, NJ
Mar 29, 2017
Institution Type
Four-Year Institution

Requisition # 2017-7180
Department Research Computing
Category Information Technology
Date Posted 2/21/2017
Full-Time / Part-Time Full-Time
Application Deadline ..


The Research Software Engineer will be an integral member of multiple research teams focused on cutting-edge computational neuroscience research. The Research Software Engineer will work with researchers associated with Princeton Neuroscience Institute (PNI) to provide domain-centric computational expertise in algorithm development and selection, code development, and optimization to create efficient and scalable research code.

The ideal candidate will have a strong background in scientific programming, academic research, and an interest in computational Neuroscience.

The Research Software Engineer will be one of a team of high performance computing software engineers, which will collectively provide computational research expertise to multiple divisions within the University.

The position requires one to work closely with colleagues in the Office of Information Technology (OIT) as well as with faculty researchers, student/postdoctoral researchers, and technical staff in the Princeton Neuroscience Institute to enable and accelerate high performance computing efforts within PNI.


  • Parallelize, debug, port, and tune existing research computing codes.
  • Lead and co-lead the design and construction of increasingly complex research software systems.
  • Provide technical expertise and guidance for improving the performance and quality of existing neuroscience code bases.
  • Understand and address software engineering questions that arise in research planning.
  • Maintain knowledge of current and future software development tools and techniques, programming languages, and high-performance computing hardware.


Essential Qualifications
  • Strong programming skills, particularly in the languages used in high-performance computing applications: C/C++, FORTRAN, and Python.
  • Parallel programming experience on computational clusters and supercomputer platforms.
  • Demonstrated successes working in a collaborative environment as well as independently.
  • Ability to learn new systems beyond area of core knowledge.
  • Ability to communicate effectively with a diverse user base having varied levels of technical proficiencies.

Preferred Qualifications
  • Machine learning, signal processing, or image analysis programming experience.
  • Academic research experience.
  • Background in neuroscience or a related field.


Bachelor's degree, or equivalent experience in a related field. A Ph.D. in a related field 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

Salary Grade

AIT, 030

Standard Weekly Hours


Eligible for Overtime


Benefits Eligible


Essential Services Personnel (see policy for detail)


Physical Capacity Exam Required


Connect With Us! Join our Talent Network to receive updates about working at Princeton.

Princeton University requires all candidates to complete a background check successfully prior to the start of employment. The type and extent of background checks may vary depending on job requirements and/or functions.

If you have questions or comments regarding the iCIMS Privacy Policy or iCIMS FAQs, please contact

Go to our careers site.


Similar jobs

Similar jobs