Logo
Riverside Research

Research Scientist - Systems/Compilers

Riverside Research, Lexington, Massachusetts, United States, 02173


Research Scientist - Systems/CompilersLocation:

US-MA-LexingtonID:

2024-3445Category:

Research & DevelopmentPosition Type:

Full Time SalaryRiverside Overview

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.All Riverside Research opportunities require U.S. Citizenship.Position Overview

Riverside Research is seeking an entry-level research scientist to support research and development of cutting-edge systems software, compiler and program analysis security technologies. As a key member of our Secure and Resilient Systems team, the research scientist will prototype new features in open-source operating systems (e.g., Linux), hypervisors (e.g., Xen), compilers (e.g., LLVM) and program analysis tools (e.g., AFL++). Strong fundamentals in software development practices for large projects (version control, debugging techniques, etc.), an understanding of the system software stack and the software/hardware interface, and a strong background in computer science fundamentals (e.g., algorithms, data structures, programming languages) will be critical for efficiently designing and prototyping dramatic features that advance the state of the art in systems, compilers, and program analysis.The research scientist will contribute to a diverse team responsible for developing new approaches to increase the security of system software and language runtimes. They will be expected to prototype and push both code and accompanying documentation/design documents. Additionally, they will engage in the research process by assisting the team to design solutions to new challenges, break problems into subtasks, implement features, 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.The research scientist should have experience in C/C++, at least one assembly language, Python, and, for bonus points, Rust. A good candidate should be able to explain why BOTH C and Rust are on this list and why Python is on this list (even though no system software is written in Python). An ideal candidate for this position would have experience writing code that interacts directly with hardware and be able to explain the challenges of working at the software/hardware interface and how they've overcome those challenges in the past. Experience with tools for program analysis (these may be written in higher-level languages and leverage DSLs or DSL interpreters/compilers) is also desirable. A good candidate research scientist should be able to explain why programming language fundamentals from C to Haskell to different flavors of domain-specific languages are relevant to this role.Responsibilities

Help the group design innovative solutions to customer problems related to systems software and/or compilersPrototype and evaluate features within large software projects like Linux or LLVMBuild new tools and/or capabilities in a range of relevant programming languagesContribute to whitepapers and/or published papers that document innovative work performedDocument and communicate design decisions, technical challenges, and progress to technical program managementCollaborate with team members on debugging programs, pair programming, reviewing papers/proposals, etc.Participate in relevant internal and customer meetingsQualifications

Required Qualifications:Bachelor's degree, preferred in related technical field, such as computer science, computer engineering, electrical engineering, or cybersecurityStrong software development fundamentals for working inside a large project (e.g., submitting PRs, interacting with open-source communities and mailing lists, git branches/merges/rebasing, build systems, etc.)Must be eligible to obtain a Top Secret security clearance.Communication and creative skills to develop, prototype, benchmark, and document significant security features integrated into existing systems security technologiesFluency in various programming languages, and background in at least some of operating systems, computer architecture, programming languages, algorithms, and data structures fundamentalsDesired Qualifications:2+ years work experience or MS degree in Computer Science or related fieldStrong grasp on the research process (e.g., reading & writing academic papers, ideation for inventing solutions to hard problems)Healthy balance between technical orientation and business acumenAbility to operate independently with limited supervision and feedback, and establish a solid working relationship with peers in the group and across Riverside ResearchSelf-starter and ability to manage time and technical tasks independently without direct supervisionSuperior written and verbal communications skillsExperience with both defensive and offensive cyber toolsFamiliarity with Rust or other cutting-edge system software languages and toolsGlobal Compensation

$75,000 - 125,000 This represents the typical compensation range for this position based on experience, location and other factors.Closing Statement

Riverside Research Institute is a not-for-profit, technology-oriented defense company, where service to our customers and support of our staff is our overall mission. Riverside is an affirmative action-equal opportunity employer and complies with all applicable federal, state, and local laws regarding recruitment and hiring. Riverside offers comprehensive compensation and benefit packages to our employees.Riverside bases its employment decisions solely on technical experience, qualifications and other job-related criteria related to our organizational purpose as a not-for-profit company, and without regard to race, color, religion, age, sex marital status, sexual orientation, national origin, physical or mental disability, veteran's status or any other status legally protected by applicable federal, state, and local law.

#J-18808-Ljbffr