Software Engineer (Engineer III to Principal) - Formal Methods
CertiK · USA
About this role
## Why CertiK? Blockchain technology is driving rapid innovation—and it’s critical that blockchain code (protocols and smart contracts) is **provably secure and correct**. Once deployed, it can’t be changed, so vulnerabilities can put **millions of dollars** at risk. CertiK is a leading blockchain security company applying cutting-edge academic techniques to secure the cyber world. Join our mission as a **Research Software Engineer** working on automated analyses for provably secure and correct blockchain applications. --- ## What you will do - Design and develop tools that **automatically ensure smart contract correctness** or **identify security issues and bugs**. - Work across the full tool lifecycle: from **idea generation** to **implementation** and **iterative improvements**. - Contribute to tools based on techniques such as: - Symbolic model checking - SAT/SMT solving - Abstract interpretation - Data flow analysis - Deductive verification - Collaborate with a multinational team of programming language experts. --- ## Responsibilities - Extend the scope and depth of automated program verification tools. - Brainstorm, design, and implement new tools. - Adapt and improve algorithms for symbolic software model checking, including: - Bounded Model Checking (BMC) - Counterexample-Guided Abstraction Refinement (CEGAR) - Property Directed Reachability (IC3/PDR) - Build and extend translators from input languages into intermediate representations, optimizing models for automated analysis. - Identify and formalize new classes of smart contract security properties. - Collaborate closely with other software engineers to set technical direction. - Deliver working software across analysis, design, automated testing, operations, CI/CD, measurement, customer feedback, and support. --- ## Required Qualifications - **Master’s degree** in Computer Science (or related) **or 5 years** of equivalent experience. - **Minimum 4 years** of software development experience (including internships, research, and open-source). - **Minimum 2 years** experience with one or more of: - Model checking - Formal verification - SAT/SMT solving (e.g., Z3, CVC4, Yices, MathSAT, SMTInterpol) - Abstract interpretation - Closely related disciplines - Demonstrated knowledge of core CS concepts: data structures, algorithms, mathematical logic, and automata theory. --- ## Preferred Qualifications - **PhD** in automated reasoning (broader field acceptable). - Publication record (e.g., POPL, CAV, TACAS, FMCAD, FM). - Experience with functional programming (OCaml or Haskell). - Strong, creative problem-solving; eager to learn and adopt new technologies. - Prior experience in a professional software development environment. --- ## Compensation - Target annual base salary (US): **$115,000 – $230,000** - Final compensation depends on skills and experience. --- ## Benefits (Highlights) - Medical, vision, and dental insurance - 401(k) with company matching - Life and accidental death & dismemberment insurance - HSA (with high deductible plan) - FSA - Flexible paid time off and holidays --- ## Location / Tags - **#LI-Remote** - **#blockchain** - **#startups** - **#hiring** --- *CertiK is an equal opportunity employer and supports diversity on its teams.*
Listing freshness
CronJobs last confirmed this listing 1h ago. If its source stops confirming the opening for seven days, this page is removed from active inventory.