Share this Job

Computer Scientist in HPC Programming Systems

Apply now »

Date: Jul 29, 2019

Location: Oak Ridge, TN, US, 37831

Company: Oak Ridge National Laboratory

Requisition Id 771 


We are seeking early career research scientist who will focus on research into programming systems for high-performance parallel computers.  The position resides in the Computer Science Research Group in the Computer Science and Mathematics Division (CSMD) at Oak Ridge National Laboratory (ORNL). 

The Computer Science Research (CSR) Group addresses challenges in technical computing at the largest scales, especially scientific and engineering modeling and simulation, from a computer science perspective.  We research, develop, and deploy solutions in parallel and distribute programming environments, system software, and the engineering of scientific software with the goal of making current and future high-end computer systems more productive and more usable.  Our work is motivated and validated by close collaboration with scientific application teams.

The CSR Group’s work in programming systems includes programming languages and compilers, programming models and runtimes, performance and correctness tools, and approaches to support the evolution of technical applications in the face of revolutionary changes in computer architectures. We have a particular interest in accelerated-node architectures, with a near-term focus on GPU accelerators, expanding over longer time horizons to include additional types of accelerators and generally more heterogeneous systems. Our work spans exploratory research to supporting the production environment of the Oak Ridge Leadership Computing Facility, currently home to Summit, the world’s most powerful supercomputer. 

The successful candidate will become part of a team of researchers working on current- and next-generation (exascale) systems, engaging deeply with application software teams, vendors, and the broader community to design and develop responses to important challenges.  Opportunities are available which may accommodate different backgrounds and interests.

Major Duties/Responsibilities:

  • Rapid design, prototyping and evaluation of programming language and runtime environments, and tools.
  • Working with computational scientists and others to understand their needs in HPC programming languages, runtimes, and tools, co-developing prototypes and production solutions to address these needs, and objectively evaluating their efficacy in application settings.
  • Maintaining an up-to-date understanding of other work in the field.
  • Working with standards bodies, vendors of programming environment tools, and others to embody useful capabilities in accepted standards and their implementations.
  • Actively collaborating with industry, academia, government labs, and applications developers in a variety of venues.
  • Conduct research and report results in open literature journals, technical reports, and at relevant conferences.


 Basic Qualifications:

  • A PhD in Computer Science, or a closely related discipline.
  • At least two years of full-time work experience after the PhD (which may include postdoctoral research)
  • Previous research experience in ONE or more of the following areas:
    • Design and implementation of node-level programming language environments, including but not limited to C, C++, and Fortran, in conjunction with CUDA, OpenACC, OpenCL, OpenMP and others;
    • Design and implementation of node-level runtime environments characterized by high levels of concurrency, task-based asynchrony, or otherwise focused on HPC;
    • Design and implementation of HPC performance portability strategies, including but not limited to Kokkos, RAJA, efforts within the ISO C++ and Fortran committees, and others;
    • Design and implementation of distributed programming models, languages, and runtimes, including but not limited to Chapel, GASNet, HiHAT, MPI, or OpenSHMEM;
    • Design and implementation of tools to help developers debug and reason about the correctness of their code;
    • Design and implementation of tools to help developers analyze, understand, and improve the performance of their code.
  • Demonstrated proficiency in developing complex software systems, like an operating system, compiler, adaptive runtime system, or scalable performance tools.


Preferred Qualifications:

  • Demonstrated experience working at the largest scales of computing.
  • Prior research experience with complex and heterogeneous node architectures, particularly with GPU accelerators.
  • Prior experience with development in compiler toolchains (e.g., LLVM or GCC).
  • Familiarity with low-level communication APIs such as PAMI, UCX, libfabrics, etc.
  • Prior experience participating in industry/community standards organizations relevant to HPC
  • An excellent record of productive and creative research as demonstrated by publications in peer-reviewed journals
  • Excellent written and oral communication skills and the ability to communicate in English to a scientific audience
  • Motivated self-starter with the ability to work independently and to participate creatively in collaborative and multi-disciplinary teams of researchers 
  • Ability to function well in a fast-paced research environment, set priorities to accomplish multiple tasks within deadlines, and adapt to ever changing needs


ORNL Ethics and Conduct:

As a member of the ORNL scientific community, you will be expected to commit to ORNL's Research Code of Conduct. Our full code of conduct, and a statement by the Lab Director's office can be found here:


Benefits at ORNL: 

UT Battelle offers an exceptional benefits package to include matching 401K, Pension Plan, Paid Vacation and Medical / Dental plan. Onsite amenities include Credit Union, Medical Clinic and free Fitness facilities.  



UT Battelle offers a wide range of relocation benefits for individuals and families to make it easier to come and work here. If you are invited to interview, please ask your Recruiter about relocating with ORNL.



This position will remain open for a minimum of 5 days after which it will close when a qualified candidate is identified and/or hired.

We accept Word (.doc, .docx), Adobe (unsecured .pdf), Rich Text Format (.rtf), and HTML (.htm, .html) up to 5MB in size. Resumes from third party vendors will not be accepted; these resumes will be deleted and the candidates submitted will not be considered for employment.

If you have trouble applying for a position, please email

ORNL is an equal opportunity employer. All qualified applicants, including individuals with disabilities and protected veterans, are encouraged to apply.  UT-Battelle is an E-Verify employer.

Nearest Major Market: Knoxville

Find similar jobs: