Let’s get started
By clicking ‘Next’, I agree to the Terms of Service
and Privacy Policy
Jobs / Job page
Systems Engineer (Compiler) image - Rise Careers
Job details

Systems Engineer (Compiler)

Join us at 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 Systems Engineer with a focus on Compilers. A more technical description of what we do is below!

Role Overview

As a Compiler Engineer on the Systems Software team, you will work on the translation of algorithms to a cryptographic processor. The vectorized, multicore processors have a custom instruction set designed specifically for binary field operations, and they run in FPGAs in production. The tools you build may be embedded programming languages, special-purpose compilers, and machine emulators. You will work closely with the hardware and cryptography teams on both the instruction set specifications and high-level program representations. This work will have a direct impact on Irreducible’s success by improving the product’s developer experience and performance library APIs, or integrating our stack with blockchain networks.

Necessary Qualifications

  • Professional software engineering experience

  • Proficiency with Rust or C++

  • Experience writing or reverse-engineering CPU assembly code

  • Experience writing virtual machine interpreters or emulators

  • Experience with programming language design or runtime implementation

  • Understanding of software engineering best practices, especially testing

  • Familiarity with zero-knowledge cryptography concepts

  • Mathematical aptitude

Bonus Qualifications

  • Experience with performance tuning and optimization

  • Functional programming

  • Experience writing GPU or vectorized SIMD software

  • Experience writing Rust procedural macros

  • Experience implementing a compiler or working with compilation frameworks like LLVM

  • Understanding of programming language design

  • Experience with non-standard ISAs

  • Experience with hardware accelerators for AI/ML

Locations supported: 

We’re looking for candidates who are located between the USA East Coast and Central Europe time zones.

We are also in the process of opening an office in Berlin, and are excited to support relocation, on a case by case basis. Once our office is open, we plan to bring the whole company together for ~one week per quarter in Berlin.

We have a globally distributed company, and ensuring the team works in a cohesive way is our main goal.

About us:

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.

[1] https://www.paradigm.xyz/2022/04/zk-hardware

[2] https://www.ulvetanna.io/news/fpga-architecture-for-goldilocks-ntt

[3] https://www.ulvetanna.io/news/binius-hardware-optimized-snark

[4] https://cointelegraph.com/news/vitalik-buterin-explains-binius-improve-zero-knowledge-proofs

[5] https://www.ulvetanna.io/news/introducing-ulvetanna

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.

To all recruitment agencies: Irreducible does not accept agency resumes. Please do not forward resumes to our jobs alias, Irreducible employees, or any other organisation location. Irreducible is not responsible for any fees related to unsolicited resumes. Please read our full policy here.

What You Should Know About Systems Engineer (Compiler), Irreducible

Join us at 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 located in Berlin, and we're excited to welcome a talented Systems Engineer specializing in Compilers to our team. In this role, you will be at the forefront of translating advanced algorithms into practice on our cutting-edge cryptographic processors. These multicore processors are designed with a unique instruction set tailored for binary field operations and are integrated within FPGAs for production use. Your creativity and technical skills will shine as you develop tools such as programming languages, bespoke compilers, and machine emulators that enhance developer experiences and optimize our performance library APIs. Collaborating closely with our hardware and cryptography teams, you will play an essential role in defining instruction set specifications and high-level program representations that align with our mission. If you have a passion for software engineering, a knack for Rust or C++, and a curiosity for the principles of zero-knowledge cryptography, we warmly invite you to help us carve out the future of blockchain technology. Our team is dedicated to cohesive collaboration, with plans to meet regularly in Berlin as we grow.

Frequently Asked Questions (FAQs) for Systems Engineer (Compiler) Role at Irreducible
What are the responsibilities of a Systems Engineer (Compiler) at Irreducible?

As a Systems Engineer (Compiler) at Irreducible, your key responsibilities will include translating algorithms into our custom cryptographic processors, developing tools like special-purpose compilers and machine emulators, and collaborating with hardware and cryptography teams on instruction set specifications. You will also improve the developer experience while optimizing our performance library APIs.

Join Rise to see the full answer
What qualifications do I need to apply for the Systems Engineer (Compiler) position at Irreducible?

To apply for the Systems Engineer (Compiler) position at Irreducible, you should possess professional software engineering experience, proficiency in Rust or C++, and a solid understanding of software best practices, particularly testing. Experience with CPU assembly code, virtual machine interpreters, and programming language implementation will be valuable in this role.

Join Rise to see the full answer
How does the Systems Engineer (Compiler) role contribute to the success of Irreducible?

The Systems Engineer (Compiler) role significantly contributes to the success of Irreducible by enhancing product performance and developer experiences. Your work on cryptographic processors and custom tools will directly support our mission of building a cost-efficient compute stack for zk-SNARKs, thereby improving scalability and privacy for blockchain networks.

Join Rise to see the full answer
What tools will I work with as a Systems Engineer (Compiler) at Irreducible?

In your role as a Systems Engineer (Compiler) at Irreducible, you will work with FPGAs, develop specialized compilers, and create embedded programming languages. Additionally, familiarity with programming language design and runtime implementation will be essential for success in this role.

Join Rise to see the full answer
Is relocation to Berlin supported for the Systems Engineer (Compiler) position at Irreducible?

Yes, Irreducible supports relocation for the Systems Engineer (Compiler) position on a case-by-case basis, as we aim to bring our globally distributed team together in our Berlin office, which is set to open soon. This will encourage a cohesive work environment.

Join Rise to see the full answer
Common Interview Questions for Systems Engineer (Compiler)
Can you explain a project where you implemented or worked on a compiler?

Describe your experience with a specific project involving compiler implementation, focusing on the languages used, the goals of the project, and any challenges you faced. Highlight your problem-solving techniques and collaboration with team members to achieve the project's objectives.

Join Rise to see the full answer
What strategies do you use for performance tuning and optimization in software development?

When discussing performance tuning, emphasize your systematic approach to identifying bottlenecks. Share examples of tools you use, the metrics you monitor, and specific optimization techniques you've successfully applied based on your experiences and the project requirements.

Join Rise to see the full answer
How do you approach debugging CPU assembly code?

Explain your step-by-step process for debugging assembly code, including using tools like debuggers or simulators. Talk about the importance of understanding the architecture, and how you ensure the code compiles correctly while testing various scenarios.

Join Rise to see the full answer
What experience do you have with virtual machine interpreters or emulators?

Share details about any projects where you've built or contributed to virtual machine interpreters or emulators. Discuss specific challenges you faced and how you overcame them while focusing on the importance of accurate interpretation and performance in your work.

Join Rise to see the full answer
Can you discuss a time when you enhanced a developer's experience through your work?

Select an instance where an innovation or improvement you introduced significantly impacted the developer experience. Explain the problem, your solution, and any feedback received from users. Highlight your ability to empathize with developers when creating tools.

Join Rise to see the full answer
How would you describe your understanding of zero-knowledge cryptography?

Demonstrate your understanding of zero-knowledge cryptography by explaining how it works, its applications, and any projects where you applied this knowledge. Clarify its significance in the blockchain space and the impact it has on privacy and scalability.

Join Rise to see the full answer
What methods do you use to ensure software quality and testing?

Discuss the various testing frameworks and methodologies you employ to maintain software quality, emphasizing unit tests, integration tests, and code reviews. Explain how this continuous process leads to improved code reliability and project success.

Join Rise to see the full answer
How do you keep your skills updated in the fast-evolving field of software engineering?

Share your strategies for continuous learning in software engineering, including online courses, participation in hackathons, or reading industry literature. Emphasize the importance of networking with peers and staying informed about emerging technologies.

Join Rise to see the full answer
Can you give an example of how you implemented a custom instruction set?

Describe a project where you defined or implemented a custom instruction set. Include details on the design process, the reasoning behind your decisions, and how this custom instruction set improved performance or efficiency in the system.

Join Rise to see the full answer
What challenges have you faced when working with hardware accelerators, and how did you overcome them?

Discuss specific challenges such as compatibility issues, performance bottlenecks, or integration hurdles you encountered while working with hardware accelerators. Highlight your solutions and the results achieved to illustrate your problem-solving abilities.

Join Rise to see the full answer
Similar Jobs
Photo of the Rise User
Posted 2 days ago
Photo of the Rise User
Posted 5 days ago
Dental Insurance
Disability Insurance
Flexible Spending Account (FSA)
Health Savings Account (HSA)
Vision Insurance
Performance Bonus
Family Medical Leave
Paid Holidays
Photo of the Rise User
Posted 13 days ago
Photo of the Rise User
Transparent & Candid
Customer-Centric
Collaboration over Competition
Rise from Within
Photo of the Rise User
NielsenIQ Remote Block 1, 9th Floor, Wing 1, 2, Pune, India
Posted 7 days ago

Irreducible provides fast and cost-effective computation of zero-knowledge succinct proofs.

5 jobs
MATCH
Calculating your matching score...
FUNDING
SENIORITY LEVEL REQUIREMENT
TEAM SIZE
EMPLOYMENT TYPE
Full-time, hybrid
DATE POSTED
January 13, 2025

Subscribe to Rise newsletter

Risa star 🔮 Hi, I'm Risa! Your AI
Career Copilot
Want to see a list of jobs tailored to
you, just ask me below!