onsite
Senior Software Engineer, Formal Verification - Category Labs
Software Engineer
Senior Software Engineer specializing in formal verification to ensure correctness of a high‑performance, EVM‑compatible Layer 1 blockchain. Leverages Coq and Rust to build provably safe parallel execution, state storage, and consensus components.
About the role
Key Responsibilities
- Design and implement formal verification frameworks for the core blockchain components, including the parallel‑execution EVM, custom state database, and BFT consensus client.
- Develop and maintain verification artifacts in Coq (or similar proof assistants) to mathematically prove safety, liveness, and correctness properties.
- Collaborate with systems engineers to integrate verified modules into the production codebase written primarily in Rust.
- Conduct rigorous testing, model checking, and performance analysis to validate that verified guarantees hold under real‑world workloads.
- Mentor junior engineers on formal methods, proof development, and best practices for secure blockchain development.
Requirements
- 5+ years of software engineering experience, with a strong focus on formal verification or theorem proving.
- Proficiency in Coq (or Lean/Isabelle) and solid programming skills in Rust; familiarity with C/C++ is a plus.
- Deep understanding of blockchain architecture, EVM semantics, and consensus algorithms, especially BFT protocols.
- Experience building high‑performance, parallel systems and custom state storage solutions.
- Track record of publishing or contributing to open‑source verification projects or academic research in formal methods.