• Research Software Engineer

    Requisition # 2018-8753
    Date Posted 1 month ago(5/9/2018 9:15 AM)
    Department
    Applied and Computational Math
    Category
    Information Technology
    Full-Time / Part-Time
    Full-Time
  • Overview

    The Research Software Engineer will lead the development and dissemination of the ASPIRE software package for three-dimensional structure determination of biological molecules from cryo-electron microscopy, a technology that won the 2017 Nobel Prize in Chemistry.


    The Research Software Engineer will be involved in all software life cycle stages (development, optimization, testing, documentation, releasing) of the ASPIRE package and advancing its efficiency, scalability, and functionality to address the evolving needs of structural biologists on campus and beyond.  The ideal candidate will have a strong background in scientific programming, academic research, and an interest in computational imaging.

    Responsibilities

    • New code development and code review.
    • Provide technical expertise and guidance for improving ASPIRE's overall performance.
    • Develop a user friendly interface such as a Jupyter notebook interface.
    • Refine ASPIRE to easily interact with other existing packages.
    • Algorithmic improvements and adding functionality to existing code, including new visualization tools.
    • Speed optimization, such as using GPU and cluster computing.
    • Scale functions to handle increasingly large data sets.
    • Establish coding standards for future development and refactor existing code to be consistent with new standards.
    • Keep documentation up to date and complete.
    • Port existing code from Matlab to Python.
    • Provide support infrastructure and manage ASPIRE’s “Discussion Forum”.
    • Provide hands-on help to and receive feedback from users of ASPIRE on campus (e.g., the Yan Lab in Molecular Biology).
    • Design, implement, and run automated tests before releases.
    • Mentor undergraduate students, graduate students, and postdocs in the research group on modern software development practices and coding standards.
    • Hold open office hours and training sessions.

    Qualifications

    Bachelors Degree and 4+  years of related experience

    Proficiency in all software life cycle stages (development, testing, documentation, releasing)
    Strong programming skills, particularly in the languages used in high-performance computing applications: C/C++, FORTRAN, Matlab, and Python.
    Experience with GPU programming.
    Parallel programming experience on computational clusters.
    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.

     

     

     

    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

    36.25

    Eligible for Overtime

    No

    Benefits Eligible

    Yes

    Essential Services Personnel (see policy for detail)

    No

    Estimated Appointment End Date

    6/30/2022

    Physical Capacity Exam Required

    No

    Valid Driver’s License Required

    Yes

    Options

    Sorry the Share function is not working properly at this moment. Please refresh the page and try again later.
    Share on your newsfeed

    Connect With Us!

    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. The type and extent of background check, reference checks, and pre-employment screening may vary depending on the requirements and/or functions of the job and the candidate’s current employment status with Princeton University.


    If you have questions or comments regarding the iCIMS Privacy Policy or iCIMS FAQs, please contact accounts@icims.com.


    Go to our careers site.