Research Software Engineer II | Princeton University Job at Princeton University, Princeton, NJ

L3BaN3Nvckw4Yko4bzZaekZ0U3RDVm9wamc9PQ==
  • Princeton University
  • Princeton, NJ

Job Description



Research Software Engineer II


US-NJ-Princeton



Job ID: 2025-20505

Type: Full-Time

# of Openings: 1

Category: Information Technology



Overview



Do you have a background in computational research and love to write code? Do you want to help enable and advance groundbreaking computational research? If so, Princeton University's Research Computing department is recruiting a Research Software Engineer to join the fast growing Research Software Engineering (RSE) Group.

In the RSE Group, we collectively provide computational research expertise to multiple divisions within the University. As a central team of software experts, we are focused on improving the quality, performance, and sustainability of Princeton's computational research software. Our 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.

In this position, you will be an integral member of the Princeton Quantum Initiative (PQI), a vibrant community at Princeton University working on quantum science and engineering across many departments. You will drive forward quantum research by partnering with experimental research teams to build low-latency, real-time control stacks for qubit hardware. A central part of the role will be contributing to open-source efforts, such as the Quantum Instrumentation Control Kit (QICK) collaboration led by Fermi National Accelerator Laboratory. This work will accelerate the development of features tailored to specific experimental needs and help to set the standard for modular, reusable development of open firmware.

If you have a strong background in FPGA development, system-on-chip architectures, digital signal processing, and an interest in quantum computing research, you have the right skill set to make an immediate impact on multiple high-profile research projects.

This role functions within a dynamic, supportive team environment that permits diverse backgrounds to thrive, including those wanting to make a career change and those with non-traditional career tracks, educational paths, or life experiences. If this environment sounds like a strong match or even an exciting challenge, we encourage you to apply and use your cover letter to explain why you would be a good fit for the role.

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





Responsibilities



Application of Domain Expertise

  • Fully understands the role within the research domain and working towardadvanced proficiency in the underlying science, math, statistics, data analysis, and algorithms of computational research questions at a level sufficient to converse with Princeton's world-class researchers to support the ongoing work. This will consist of independent research (reading publications etc) and/or studying existing code bases.
  • Working independently or in collaboration with a team, initiate and/or maintain 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 domain specific algorithms, techniques and code to advance software engineering in the research field.

Research Software Engineering

  • Working independently with minimal guidance to understand and translate research priorities into flexible software solutions.
  • Independently or in collaboration with a team, use researcher-provided requirements and desired end state to build complete software solutions. To achieve this, RSEs are expected to figure out the problem through independent or team research, build complete software solutions, and provide full documentation for usage by the research team.
  • Identify solutions for each project, establish a set of applicable best practices uniquely appropriate for that project (e.g version control, continuous integration and continuous delivery, software design, programming model, etc.), and enable long term maintainability and sustainability by documenting the projects in a descriptive and appropriately detailed manner. Independently or in collaboration with a team, provide technical expertise and guidance for improving the performance and quality of new and existing code bases through hands-on work with ongoing research.
  • Responding to evolving research needs, apply research software engineering experience to develop robust software solutions to solve challenging research problems. Port, debug, tune and potentially parallelize existing research code to meet criteria set by the research needs.
  • Provide support for the use of developed software for researchers both within and outside of Princeton University. This includes documentation of projects in a descriptive and appropriately detailed manner that can be understood by both researchers and future Research Software Engineers.
  • Co-teach classes on embedded systems programming.

Professional Development

  • Learn the underlying science, mathematics, statistics, data analysis, and algorithms of computational research questions. This may involve independent research, studying existing code bases, and keeping up-to-date with publications.
  • 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 over two dozen research software engineers as well as continued professional development opportunities at Princeton Research Computing.




Qualifications



Essential Qualifications:

  • Bachelor's degree or equivalent in computer science, engineering, 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.).

  • Exhibits programming skills, particularly in the languages used for application layer development of experimental control and data analysis applications (e.g. Python, C/C++).

  • Consistently using conventional and readable coding style.
  • Creating comprehensive and well-written documentation
  • Using version control systems.
  • Strong written and oral technical communication skills.

Preferred Qualifications:

  • Experience with Xilinx FPGA development tools (Vivado) and Hardware Description Languages such as Verilog and/or VHDL.
  • Experience with using instrumentation to test, characterize, and debug high-speed analog and digital electronics, including FPGAs and RF.
  • Familiarity with digital signal processing
  • Experience managing multi-institution collaborative software projects, including defining roadmaps, managing implementation of new features, and coordinating multiple developers.
  • Experience working in an academic research environment, particularly quantum computing research.
  • Experience contributing to open-source software libraries.
  • A Masters/Ph.D. (or equivalent) 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 - 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 -









PI262346243

About Princeton University

Princeton University is a vibrant community of scholarship and learning that stands in the nation's service and in the service of all nations. Chartered in 1746, Princeton is the fourth-oldest college in the United States. Princeton is an independent, coeducational, nondenominational institution that provides undergraduate and graduate instruction in the humanities, social sciences, natural sciences and engineering.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.Today, more than 1,100 faculty members instruct approximately 5,200 undergraduate students and 2,600 graduate students. The University's generous financial aid program ensures that talented students from all economic backgrounds can afford a Princeton education.

Connections working at Princeton University

Job Tags

Full time, Immediate start, Flexible hours,

Similar Jobs

VDart Inc

React JS Developer Job at VDart Inc

 ...Job Title: React JS Developer Location: Illinois - Onsite Duration: 6+ months Contract Job Description: Responsible for implementing user interface components for web site solutions built with Adobe Experience Manager. The implementation... 

S D D Travel

Remote Honeymoon Travel Planner Job at S D D Travel

 ...As a Honeymoon Travel Coordinator, you'll design memorable travel experiences tailored to each client's unique desires. You will work closely with clients to understand their goals and preferences, offering customized travel packages and dedicated support throughout their... 

One World Global Services

Spanish Freelance US-Based Interpreter Job at One World Global Services

 ...LANGUAGE : Spanish US-Based Interpreter As a remote interpreter, you play a significant role in facilitating communication...  ...Additional information: Remote position, interpreter works from his/her home office Ongoing training and competency opportunities... 

Guardian Life Insurance Company

Policy development analyst Job at Guardian Life Insurance Company

 ...We Do the Right Thing, and We Hold Ourselves to Very High Standards important to you? If so, Guardian is seeking a Policy Form Development Analyst who will work with the Policy Form Development Lead to perform product development and filing activities for new Life and... 

Frazier Farms Market

Meat Regional Manager Job at Frazier Farms Market

 ...regions Placing orders, purchase orders, pricing confirmations and managing inventory. Supplier program negotiations that support...  ...occasional late-night calls) and willing to travel. Stay ahead of meat trends and share that info with the regions Vendor paperwork....