Certik logo
Certik
Posted 71 days agoVerified live 12h ago

Software Engineer (Engineer III to Principal) - Formal Methods

Brief overview

Remote
MastersOr in progress
$115k–$230k/yrStated range
4+ yrsMinimum
Model checkingFormal verificationSAT/SMT solvingAbstract interpretationData structuresAlgorithmsMathematical logicAutomata theoryFunctional programmingSoftware development

About the company

A pioneer in blockchain security utilizing AI technology to secure and monitor blockchain protocols.

Job description

Summary

CertiK is a pioneer in blockchain security, founded by professors from Yale and Columbia University. They are seeking a Software Engineer to design and develop tools for automated verification of smart contracts, ensuring their correctness and identifying security issues.

Responsibilities

  • Extend the scope and depth of our automated program verification tools and brainstorm, design, and implement new tools
  • Adapt and improve algorithms for symbolic software model checking. Examples include bounded model checking (BMC), counterexample-guided abstraction refinement (CEGAR), and property directed reachability (IC3/PDR)
  • Build and extend translators from different input languages into intermediate representations, optimizing the generated models for automated analysis
  • Identify new classes of security properties of smart contracts and formalize properties for use in our automated verification tools
  • Closely collaborate with other software engineers in developing tools and set technical direction for solving problems in consultation with your team and management
  • Work on all aspects of delivering working software that meets customer needs, including analysis, design, automated testing, operations, CI/CD, measuring results, incorporating customer feedback, and support

Skills

  • Master's Degree in Computer Science or a related field or 5 years of equivalent experience
  • Minimum of 4 years of software development experience (includes internships, software developed during research, and open-source development)
  • Minimum of 2 years of experience with one or more of the following: model checking, formal verification, SAT/SMT solving (Z3, CVC4, Yices, MathSAT, SMTInterpol), abstract interpretation, or closely related disciplines
  • Demonstrated knowledge of fundamental computer science concepts such as data structures, algorithms, mathematical logic, and automata theory
  • PhD in the broader field of automated reasoning
  • Publication record in conferences like POPL, CAV, TACAS, FMCAD, FM, etc
  • Experience in functional programming (OCaml or Haskell)
  • Strong and creative problem-solving skills; always willing to learn and embrace new technologies and to collaborate
  • Prior experience in a professional software development environment

Qualifications

Must Haves

  • Master's Degree in Computer Science or a related field or 5 years of equivalent experience
  • Minimum of 4 years of software development experience (includes internships, software developed during research, and open-source development)
  • Minimum of 2 years of experience with one or more of the following: model checking, formal verification, SAT/SMT solving (Z3, CVC4, Yices, MathSAT, SMTInterpol), abstract interpretation, or closely related disciplines
  • Demonstrated knowledge of fundamental computer science concepts such as data structures, algorithms, mathematical logic, and automata theory

Nice to Haves

  • PhD in the broader field of automated reasoning
  • Publication record in conferences like POPL, CAV, TACAS, FMCAD, FM, etc
  • Experience in functional programming (OCaml or Haskell)
  • Strong and creative problem-solving skills; always willing to learn and embrace new technologies and to collaborate
  • Prior experience in a professional software development environment

Benefits

  • Medical, vision, and dental insurance
  • 401(k) plan with company matching
  • Life and accidental death and dismemberment insurance
  • HSA (with high deductible plan)
  • FSA
  • Other benefits to all full-time employees
  • Flexible paid time off
  • Holidays

More jobs like this