Senior Software Engineer, Formal Verification
Core
Prove the correctness of the Monad Layer 1 blockchain implementation by writing machine-checked proofs for production C++ code.
Role type
Senior Software Engineer (Formal Verification)
Builds
A high-performance, EVM-compatible Layer 1 blockchain (Monad)
Domain
Blockchain / Cryptocurrency / Distributed Systems
Required skills
C++ (5+ years), Interactive theorem provers (Rocq/Coq), Concurrency reasoning, Memory management, Software architecture, Performance profiling, Separation logic (Iris), BRiC formal semantics
Preferred skills
Experience building performant systems from scratch (databases, device drivers, embedded systems), Experience with parallel execution logic
Technologies
Rocq (Coq), Iris, BRiC, C++
Responsibilities
Formally verify high-risk parts of the Monad implementation including concurrent and parallel execution logic. Build and refine Rocq models of system designs to prove C++ implementation equivalence. Develop specifications and weakest-precondition proofs for production C++ using BRiC and Iris. Strengthen theorem statements and proof automation to scale verification.
Seniority
Senior, hands-on IC