Riverside Research is an independent national security nonprofit committed to research and development in the national interest. We offer high-quality technical services, research and development, and prototype solutions to some of the country's most significant technical challenges.
Job Number: 1445
In today's digital age, nearly every aspect of our lives relies on a computer system. Most of these computer systems use "systems software" to manage specific tasks and bridge the gap between hardware and higher-level software. This can be an embedded system using a tightly coupled FPGA fabric to offload performance or security critical tasks or a server using a hypervisor to manage co-resident guests. It is this lower-level code that creates a reliable and well-structured world for higher-level code to operate in. At Riverside Research, our Secure and Resilient Systems group aims to reinforce this code to provide our customers with secure foundations for their mission-critical software stacks. We often use computers to analyze and implement protections on these software layers through program analysis and compiler-based security mechanisms.
Riverside Research is looking for a mid-career or senior research scientist to support the development of innovative compiler and program analysis security technologies. This scientist will play a front-line role in our Secure and Resilient Systems team, leading efforts to prototype new features in open-source compilers like LLVM and program analysis tools and frameworks. We require strong software development skills, understanding of the system software stack and the software/hardware interface, and a robust background in computer science fundamentals.
The research scientist will also be a part of a team that develops new compiler technologies and program analyses to enhance the security of system software like Linux or Xen. The scientist will develop and document prototypes and launch the research process by helping the team design solutions to new problems. The scientist will also contribute to technical marketing and proposal writing in their research area.
The ideal candidate should have experience in "systems" (e.g., C/C++, at least one assembly language, Python, Rust) and has worked on tools for program analysis. They should also be able to explain why programming language fundamentals from C to Haskell to various domain-specific languages are relevant to this role.
All Riverside Research opportunities require US citizenship.
Job Responsibilities:
- Help the group design innovative solutions to systems software problems
- Prototype and evaluate features within significant software projects like LLVM or angr
- Develop new tools and/or capabilities in relevant programming languages
- Document findings and designs, communicate technical challenges, and progress to internal and external stakeholders
- Work with team members on debugging programs, pair programming, reviewing papers/proposals, etc.
- Attend relevant internal and customer-focused meetings
- Guide the technical direction of internal and on-contract research
Required Qualifications:
- Masters or Bachelors degree with 5+ years’ relevant experience in disciplines such as computer science, computer engineering, electrical engineering, or cybersecurity.
- Ability to develop, organize, and execute significant programs
- Must be eligible to obtain a Top Secret security clearance
- Ability to develop, prototype, benchmark, and document significant security features
- Fluent in various programming languages and a strong background in programming languages, algorithms, and data structures.
Desired Qualifications:
- PhD in Computer Science or related field
- Strong grasp in the research process
- Balanced tech and business oriented approach
- Ability to operate independently and establish solid working relationships with technical staff, division managers, peers inside and outside Riverside Research
- Excellent written and verbal communication skills
Riverside Research aims to be one of America's leading providers of independent, trusted technical and scientific expertise.