Senior Research Scientist – Formal Methods and Cryptology

Riverside Research InstituteFair Oaks, VA
2d$115,000 - $200,000

About The Position

The Secure and Resilient Systems group seeks a senior research scientist to support research and development of cutting-edge formal methods applied to software systems. The senior research scientist will support a team that invents, prototypes and evaluates new formal methods and software security approaches throughout the systems software stack. The senior research scientist should additionally have a background in cryptography/cryptology. Some topics of interest to a good candidate may include: theorem provers (e.q., Rocq/Coq, Lean, Isabelle), SMT solvers, programming languages theory (e.g., 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 hardware, bus protocols) is a plus. Secure and Resilient Systems research scientists need a strong background in computer science fundamentals (e.g., algorithms, data structures, theory of computation, programming languages, cryptography), 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). All Riverside Research opportunities require US citizenship.

Requirements

  • TS clearance
  • Bachelor's degree in Mathematics, Computer Science, Cybersecurity or a related field and 8 years of relevant experience, 6 years and a Masters, or 3 years and a PhD
  • Background in applied formal methods
  • Background in cryptology

Nice To Haves

  • MS or PhD degree in a related technical field
  • Strong grasp of the research process (e.g., reading & writing academic papers, ideation for inventing solutions to hard problems)
  • Superior written and verbal communications skills
  • Familiarity with theorem provers such as Rocq/Lean4

Responsibilities

  • Help the group design innovative solutions to customer problems related to formal methods, cryptography and systems software
  • Prototype and evaluate features within large software projects (e.g., LLVM, CompCert)
  • Build new tools and/or capabilities in a range of relevant programming languages
  • Contribute to whitepapers and/or published papers that document innovative work preformed
  • Document and communicate design decisions, technical challenges, and progress to technical program leadership
  • Collaborate with team members on debugging programs, pair programming, reviewing papers/proposals, etc.
  • As appropriate, take technical ownership of appropriately scoped projects
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service