Formal Methods Engineer
About the role
We are expanding HOARDE's software formal-methods capabilities. We are looking for engineers who can move between code, specifications, verification tools, product infrastructure, and engineering evidence to make rigorous assurance part of software development.
Core Responsibilities
- Extend HOARDE's software-assurance capabilities through dependable tool integrations, machine interfaces, agent workflows, analysis pipelines, diagnostics, and evidence.
- Specify and verify real software, working from requirements, standards, code, tests, and operational behavior to define what correctness means.
- Select and combine appropriate techniques, including contracts, static analysis, symbolic execution, model checking, SAT/SMT-backed reasoning, refinement, theorem proving, fuzzing, and generated testing.
- Connect executable or mathematical specifications to source, intermediate representations, or binaries, making every claim and assumption precise.
- Work with existing and sometimes difficult codebases while preserving compatibility, performance, deployability, and maintainability alongside formal guarantees.
- Put verification and traceability into normal development workflows so specifications, proofs, tests, assumptions, and evidence evolve with the software.
- Turn successful project work into reusable product capabilities, verified software, and assurance artifacts that customers and other engineers can use.
What We Require
- Hands-on experience applying formal verification, program analysis, or automated reasoning to real software, with an understanding of where your methods do and do not fit.
- Strong software-engineering fundamentals, practical depth in one systems or implementation language, and enough Kotlin/JVM experience to contribute to HOARDE's production codebase. You can read unfamiliar code and diagnose failures across tool boundaries.
- Experience with multiple verification approaches, or sufficient depth with one to demonstrate that you can learn adjacent methods quickly.
- A record of delivering usable tools, production software, or verified outcomes that others could run, maintain, or build upon — and a product mindset about reliability, usability, and repeatability.
- The ability to turn an informal claim into a precise specification, property, experiment, or assurance argument and explain what was and was not established.
- Clear communication, sound judgment about rigor and scope, self-direction in a small distributed team, and curiosity about making AI-generated software demonstrably trustworthy.
Areas of Technical Depth
- Languages and systems: Kotlin/JVM, C, C++, Rust, Python, compilers and intermediate representations, operating systems, runtimes, libraries, or networked systems
- Program analysis and model checking: CBMC, Frama-C, Crux, KLEE, abstract interpretation, symbolic execution, SAT/SMT solvers, or comparable techniques
- Specifications and implementation proofs: Cryptol, SAW, ACSL, SPARK, Dafny, Why3, refinement or equivalence proofs, or verified compilation
- Rust assurance: Kani, Verus, MIR-based analysis, unsafe-code reasoning, or proof-oriented Rust development
- Theorem proving and formal modeling: Lean, Rocq, Isabelle/HOL, PVS, ACL2, TLA+, Alloy, or another reasoning environment
- Product and workflow integration: Developer tools, stable machine interfaces, CI/CD/CV, reproducible proofs, actionable diagnostics, specification recovery, or reusable conformance suites
Life at Sigil Logic
Sigil Logic is a small, early team. You will work directly with people who have spent their careers building high-assurance systems, and you will have real influence over our product, methodology, and engineering culture. We value intellectual range, precise communication, practical output, and colleagues who teach what they know while learning from others. We are headquartered in Portland, Oregon, and work as a fully distributed organization. Being in Portland is welcome, but we will not let geography keep us from the right person.
How to Apply
Email join@sigillogic.com with your resume or CV and a short note about the software or formal-methods work you are proudest of. Links to code, papers, talks, or project artifacts are welcome but not required.
Learn more about Sigil Logic (https://sigillogic.com/) and HOARDE (https://sigillogic.com/hoarde/).