Compiler Engineer



Posted on Tuesday, June 11, 2024

Come join Irreducible as we accelerate the ZK revolution by supporting web3 networks with reliable and cost-efficient proof generation. We’re a high-performance cryptography startup (with an exciting hardware twist) looking for a talented Compiler Engineer. A more technical description of what we do is below!

About the role:

As a Compiler Engineer, you will work primarily on two areas of our tech stack:

  1. Compilation of programs targeting a custom cryptographic processor running on an FPGA

  2. Translation of an assembly language into a ZK virtual machine.

You will also work closely with the hardware and cryptography teams to define both the instruction sets and high-level program representations. Being a self-starter is essential, as there are always a variety of challenges that need to be tackled. Your work will have a direct impact on our growth and success.

Locations supported:

We’re looking for candidates who are located between the USA East Coast and Central Europe time zones. Although we’re a globally distributed company, ensuring the team works in cohesive time zones is essential to our goals. Additionally, the company plans to get together ~one week per quarter in either New York City or Europe.

Necessary Qualifications:

  • Significant experience writing compilers

  • Strong proficiency in Rust

  • Understanding of computer architecture and configuration

  • Understanding of technology tradeoffs and a pragmatic approach to problem solving

  • Strong written and verbal communications skills

  • Ability to think across layers of abstractions

  • Ability to work in a fast-paced startup environment

Bonus Qualifications:

  • Familiarity with RISC-V

  • Experience with non-standard ISAs

  • Experience with hardware accelerators for AI/ML

  • Understanding of zero-knowledge cryptography

  • Experience with performance tuning and optimization

About us (deep dive):

We're building out a high-performance, cost-efficient compute stack for advanced cryptographic proofs, specifically zk-SNARKs. Verifiable computing with zk-SNARKs is taking off as a solution to the scalability and privacy limitations that today's blockchains suffer from. A new wave of blockchain protocols that use zk-SNARKs to prove smart contract executions, such as Polygon zkEVM, Starknet, and zkSync, are already in production. We believe there is a big market opportunity to generate proofs for these networks at scale in a cost-effective way [1]. There are lots of interesting performance engineering challenges we need to solve to keep up with the maximum device throughput.

We take the approach of co-designing hardware and software systems to accelerate SNARK generation end-to-end. Our first-generation tech stack uses FPGA accelerators running custom digital logic tailor-made for our use case [2].

We also conduct cryptography research to identify computationally efficient algorithms for verifiable computing. These research efforts produced a novel cryptographic construction based on towers of binary fields called Binius [3] [4], which we are currently developing into a production-grade system.

Our team has cross-domain expertise and includes hardware designers, low-level systems software engineers, cryptography engineers, and data center specialists, several of whom worked in HFT previously.






NOTE: We can not sponsor visas of any kind at this time.

We are committed to creating a diverse and inclusive workplace where talented individuals can thrive and grow. We value the different perspectives, experiences, and backgrounds that each person brings to our team. Even if you don't fit 100% of the job's necessary qualifications, we'd still love to hear from you.

Know someone who could be a fit? Feel free to pass along a link to the role: