Formal Verification Engineer

Company: CertiK
Location: New York , New York, United States
Type: Full-time
Posted: 15.NOV.2019


CertiK Formal Verification Engineer Summary CertiK is a world-leading cybersecurity firm that focuses on smart contract analysis and bloc...


CertiK Formal Verification Engineer


CertiK is a world-leading cybersecurity firm that focuses on smart contract analysis and blockchain auditing. CertiK engineers strive to develop next-generation technologies to improve the reliability, stability, and scalability of large-scale computer systems.

CertiK is looking for talented engineers and researchers to join our growing engineering team. Ideal candidates should have experience in programming language research, familiar with concepts like Formal Verification, Abstract Interpretation, Static Analysis, Model Checking, or Compiler Construction. Knowledge of distributed ledger systems and consensus protocols would be a plus.

What You Will Do

  • Cooperate with experienced researchers/labs from top-tier Universities on topics like Smart Contract Verification, Blockchain programming languages design and implementation, Certified Computing Infrastructure (Decentralized Operating Systems)
  • Generate technical reports, talks, research publications, patents, or open-source projects. Depending on the work, attend and present work at academic conferences, developer meetings, or blockchain community gatherings.
  • Engineer our verification platform for smart contracts and blockchain. You will have a position to propose novel ideas and influence the design of our analysis engines.

What We Expect you

  • Thriving in a fast-paced, dynamic working environment.
  • Self-driven and passionate about cutting-edge technologies. Problem solver and fast learner with good analysis skills.
  • Strong team-player and always willing to make a positive impact on the team. Good verbal and written communication skills.

Basic Qualifications

  • A BS/MS/PhD degree in Computer Science or relevant field or equivalent professional experience. Mastery of one or more languages: Python, Javascript(NodeJS), Golang, Ocaml, Scala, Java, C/C++, etc.
  • Solid computer science fundamentals in object-oriented design, data structure and algorithms, computer networks, database systems, distributed systems, etc.
  • Excellent written communication/presentation skills, able to conduct client-facing meetings, output technical blogs addressing general/security topics, great team collaborations.
  • Docker, Git, Shell, Databases, CI/CD.
  • Passion and past experience (personal projects, publications, internships, or even courses, summer schools) in areas like Formal Methods, Verification, and Analysis of source code Security, or Compilers.

Preferred Qualifications

  • [Preferred] Fundamental knowledge of Distributed Ledger Systems, e.g. experiences on Bitcoin, Ethereum (EVM), Cosmos or other industry-leading blockchain platforms.
  • [Preferred, for research positions] Publication records in one or more programming language academic conferences: LICS, POPL, PLDI, OOPSLA, CAV, SAS, ICSE, ESEC/FSE, SOSP, OSDI
  • [Preferred, for research positions] Since we expect you to communicate with leading decentralized computing and financial services firms or present our work at academic conferences, it is important to have excellent public speaking, presentation, and negotiation skills (in general, know the verification/blockchain/security/cryptocurrency community).
  • [Preferred] Strong interests and focuses on security tooling developments and researches.

Apply Now


Free eBook

Loader2 Processing ...