Research Scientist – Formal Methods
Riverside Research Institute- Location
- Lexington, MA, United States
- Workplace
- —
- Employment
- —
- Salary
- USD 62,000–116,000
Posted yesterday
Riverside 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
The Secure and Resilient Systems group seeks a Research Scientist – Formal Methods to support research and development of cutting-edge formal methods applied to software systems. The Research Scientist will support a team that invents, prototypes, and evaluates new formal methods and software security approaches throughout the systems software stack.
Topics of interest for strong candidates may include theorem provers (e.g., Rocq, Lean, Isabelle), SMT solvers, programming language theory (e.g., type theory, operational semantics), functional programming, compilers (e.g., frontends, IR & optimization, backends), automated program analysis and software testing. Interest in systems software (e.g., operating systems including RTOS, hypervisors), computer architecture (e.g., tagged architectures), and peripheral hardware (e.g., custom device drivers, FPGA development, bus protocols) is a plus.
The role requires a strong background in computer science fundamentals (e.g., programming languages, algorithms, data structures, theory of computation), experience with software development practices for large projects (e.g., version control, debugging techniques), an understanding of the system software stack and the software/hardware interface (e.g., at least one ISA, assembly code), and propensity for the research process (e.g., breaking big problems down, designing experiments, analyzing data).
If you have taken programming languages theory, formal methods, compilers, computer architecture and/or operating systems courses, you should apply for this position. If you have experience implementing and proving systems using a theorem prover such as Rocq or Lean, you definitely should apply for this position. If you have hacked on seL4, have proved the correctness of a crypto protocol implemented in Rust, or know the pros and cons of omnisemantics then you need to apply for this position!
Responsibilities
- Contribute to the design of innovative solutions to customer problems related to formal methods and systems software
- Prototype and evaluate features within large software projects such as LLVM or CompCert
- Build new tools and capabilities in a range of relevant programming languages
- Contribute to whitepapers/published papers that document innovative work performed
- Document and communicate design decisions, technical challenges, and progress to technical leadership
- Collaborate with team members on debugging programs, pair programming, reviewing papers/proposals, etc.
Qualifications
Required Qualifications
- Bachelor’s degree in computer science, computer engineering, electrical engineering, cybsersecurity, or a related field
- Ability to work collaboratively on speculative research projects
- Familiarity with formal methods
- Experience with functional and imperative programming, including C and assembly code
- Exposure to programming language concepts, definitions, and implementations (type systems, operational semantics, interpreters, compilers, etc.)
- Software development fundamentals for working inside a large project (e.g., submitting pull requests, git branches/merges/rebases, build systems, etc.)
- Communication and creative skills to develop, prototype, benchmark, and document significant security features integrated into existing systems security technologies
- Fluency in multiple programming languages, and strong fundamentals in algorithms and data structures
- Ability to obtain and maintain a U.S. government security clearance
Desired Qualifications
- Two years of experience with a Master’s degree or PhD in computer science or related field
- Formal methods experience with exposure to proof techniques (progress and preservation, logical relations, separation logic, refinement, translation validation, symbolic execution, etc.)
- Strong grasp of the research process (e.g., reading & writing academic papers, ideation for inventing solutions to hard problems)
- Ability to operate independently with limited supervision and feedback, and to establish a strong working relationship with peers and across Riverside Research
- Superior written and verbal communication skills
- Familiarity with seL4, LLVM, Rust, or other cutting-edge system software languages and tools
Global Comp
$60,000 - $115,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.
Skills
- RTOS
- Rust
- Git
More jobs at Riverside Research Institute
All 30Research Scientist – Cryptography
Riverside Research Institute · Lexington, MA, United States · USD 140,000–180,000 · yesterday
Junior Open Architecture Cyber Security Scientist
Riverside Research Institute · Beavercreek, OH, United States · USD 75,000–85,000 · 4d ago
Senior Product Owner
Riverside Research Institute · Dayton, OH, United States · USD 140,000–165,000 · 9d ago
Enterprise Data Engineer
Riverside Research Institute · Dayton, OH, United States · USD 140,000–170,000 · 15d ago
Principal Cyber Security Scientist
Riverside Research Institute · Fairfax, VA, United States · USD 240,000–260,000 · 17d ago
Similar roles
Senior Software Engineer II
MX Technologies · US · today
Sr. Cloud Platform Engineer
MX Technologies · Lehi, Utah, United States · today
Senior Software Engineer - Continuity
Rad AI · United States · today
Lead Software Engineer - City
Okc · Oklahoma City, OK, United States · USD 40–60/hr · today
Full-stack Software Engineer III/Senior, AI Gateway
Ngrok · US · San Francisco, CA · USD 202,500–247,500/yr · today
Senior Software Engineer, Infrastructure
Learning Commons · Redwood City, CA · USD 190,000–261,800/yr · today