Software Engineer (Engineer III to Principal) - Formal Methods
San FranciscoRemoteFull-time
AI Summary
Develop tools to automatically verify smart contracts and identify security issues, leveraging symbolic model checking, SAT/SMT solving, and related formal methods; collaborate across teams to extend verification tooling from idea to deployment.
About this role
Why us?
Blockchain technology is enabling a rapidly-growing era of innovation for the digital world. It is crucial that blockchain code such as protocols and smart contracts are provably secure and correct. Once deployed, they are public and cannot be changed. Vulnerabilities and bugs in such programs regularly put millions of dollars at stake. This is where CertiK comes in. We are the leading blockchain security company. Our goal is to secure the cyber world by applying cutting edge techniques from academia to secure blockchain code. Come and join this ambitious mission as a research software engineer to work on automated analyses for provably secure and correct blockchain applications!
What you will do
You will design and develop tools that automatically ensure the correctness of smart contracts or identify security issues and bugs in smart contracts. We have software engineer positions available at all levels of seniority. Title and responsibilities will be commensurate with experience and background.
As part of our multinational team of programming language experts, you will participate in the development of tools that rest upon techniques such as symbolic model checking, SAT/SMT solving, abstract interpretation, data flow analysis, and deductive verification. You will have the opportunity to work on all stages of tool development from idea generation to implementation and iterative improvements. Our team is highly supportive and collaborative with great opportunities to learn and grow.
About you
You have a background in programming language theory and automated reasoning and love to work on the forefront of applying results from theoretical computer science. You love to tackle computationally hard problems and have a proven track record of achieving results, where results are people using your tool to do their jobs. You are collaborative: you share ideas, love to brainstorm with peers, and give and receive feedback. You are comfortable with the unknown and understand that #startuplife means that you will be wearing multiple hats.
Responsibilities
Required Qualifications
Preferred Qualifications
Skills
Abstract InterpretationAutomated ReasoningBounded Model Checking (BMC)CEGARCVC4Data-flow-analysisDeductive VerificationFormal VerificationFunctional ProgrammingHaskellIC3/PDRIntermediate RepresentationsMathSATOCamlProgram Verification ToolsProperty Directed ReachabilitySAT/SMT SolvingSMTInterpolSymbolic Model CheckingTheorem ProvingTranslator DevelopmentYicesZ3
Explore related jobs
More jobs at CertiK
Similar Abstract Interpretation jobs
Jobs in San Francisco
- Immigration SpecialistRippling (Rippling) · San Francisco, Canada
- San Francisco - Part Time ReceptionistSev Laser · San Francisco, Canada
- San Francisco - Full Time ReceptionistSev Laser · San Francisco, Canada
- Aesthetic Nurse Practitioner/Physician AssistantCosmetic Physician Partners · San Francisco, Canada
Aesthetic Medical AssistantSkinspirit · San Francisco - Noe Valley- Senior Corporate CounselRipple · San Francisco, CA
