Jobs and Careers
RI

Senior Research Scientist - Operating Systems Security (some Hybrid schedule available)

Riverside Research
Beavercreek, United Statesfull_timeVerifiedPosted 31 Jul 2023

About the role

Riverside Research is an independent National Security Nonprofit dedicated to research and development in the national interest. We provide high-end technical services, research and development, and prototype solutions to some of the country’s most challenging technical problems.

 

Job Number: 1356

Senior Research Scientist – System Software Security (some Hybrid schedule available)

For better or worse, there is almost no facet of our modern world that works without a computer system. Virtually all of those computer systems rely on “systems software” to manage distinct tasks and bridge the gap between hardware and higher-level software. Whether it is an embedded system using tightly-coupled FPGA fabric to offload performance- or security-critical tasks or a server using a hypervisor to manage co-resident guests, there is low-level code making sure that higher-level code can see a sane and well-ordered world. That lower-level code is full of complexity as it works to bridge the gap from the realities of diverse hardware ISAs to higher-level abstractions. It is also foundational to the security story of all of our systems. At Riverside Research, the Secure and Resilient Systems group works to strengthen that code to provide our customers with secure foundations for their mission-critical software stacks. This is essential to getting ahead of the attacker rather than playing whack-a-mole with bug fixes.

Riverside Research is seeking a senior systems software research scientist to support research and development of cutting-edge systems security technologies. As a key member of our Secure and Resilient Systems team, the research scientist will lead efforts to prototype new features in core operating system or hypervisor subsystems such as virtual memory management, booting/linking/loading, scheduling, filesystems, and more. Strong fundamentals in software development practices for large projects (version control, debugging techniques, etc) and an understanding of the system software stack and the software/hardware interface will be critical for efficiently designing and prototyping dramatic features that advance the state of the art in operating system organization and security.

The research scientist will contribute to a diverse team responsible for developing security features in operating system design. They will be expected to prototype and push both code and accompanying documentation/design documents. Additionally, they will jumpstart the research process by leading the team to design solutions to new challenges, break problems into subtasks, contribute to and oversee implementation, and evaluate the resulting prototypes. The research scientist should have the writing skills necessary to communicate their ideas and results to internal and external stakeholders. As a mid-career or senior level contributor, the research scientist will be expected to, with support, pursue and grow funded R&D programs with government research organizations (e.g. DARPA, IARPA, service labs, etc.), lead existing R&D contracts, and transition technology into our other business units. The research scientist will also contribute to technical marketing and proposal writing in their research area. The research scientist will interface with team members across Riverside Research locations.

The research scientist should have experience in C/C++, at least one assembly language, Python, and, for bonus points, Rust. The research scientist should also have strong skills in technical and proposal writing and management. An ideal candidate for this position will have experience leading teams working at the software/hardware interface and be able to explain strategies they’ve used to generate successful deliverables and contract execution.

All Riverside Research opportunities require US citizenship.

 

Job Responsibilities:

  • Help the group design innovative solutions to customer problems related to systems software
  • Prototype and evaluate features within large system software projects like Linux or Xen
  • Build new tools and/or capabilities in languages like C/C++, Python, Rust, Assembly, etc.
  • Write whitepapers and/or published papers that document innovative work performed.
  • Document and communicate design decisions, technical challenges, and progress to technical and non-technical internal and external stakeholders
  • Collaborate with team members on debugging programs, pair programming, reviewing papers/proposals, etc.
  • Participate in relevant internal and customer meetings
  • Influence technical direction of internal and/or on-contract research and development efforts

Required Qualifications:

  • MS degree and 5+ years’ experience preferred in related technical field, such as computer science, computer engine

Apply for this role

Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.

Apply Now →Generate Application Kit

Free account required — sign up in 30s

Company

Riverside Research

View company profile →