From Rust dev to ZK engineer
with code review.
Eight weeks of live mentoring for developers who want to build, debug and explain halo2 circuits instead of collecting ZK definitions.
3 concurrent slots. Built for company training budgets. Live sessions, async review, code that runs.
Built for company training budgets
Standard is €2,000, comes with a proper invoice, and is framed as training an existing Rust developer instead of hiring niche ZK help later.
Get the manager email templateSound familiar?
“I’ve been stuck on this halo2 tutorial for three evenings and the code still doesn’t compile. I check: tutorial from 2023, library changed, nobody updated it.”
Internet tutorials break
AI-generated garbage, outdated libraries, code that doesn’t work
Math gets abstract fast
Elliptic curves? Algebra? Finite fields? You don’t know where to start
Questions you’re too senior to ask
Elliptic curves, trusted setup, pairings. The basics you don’t want to ask about in front of your team.
Impostor syndrome
You want to apply for ZK roles, but you have nothing to show
What’s missing is a clear path, working code, and someone who has already done this.
Why self-learning ZK is so frustrating
The usual path looks like this: you copy examples, hit old APIs, then lose time deciding which math actually matters.
Old tutorials and magic libraries
You have 1-2 hours after work. You open a tutorial, the library changed, the code does not compile, and arkworks or halo2 still feels like a magic library when something breaks.
No idea which depth is worth it
ZK has no bottom. You can spend a month on extension fields or pairing internals and learn nothing you need for the circuit you are shipping. Part of my job is telling you what to learn now and what to skip for now.
The AI trap
I asked AI to generate a range check proof with tests. The code compiled, all tests passed, and it looked legit, but the secret number cancelled out in the constraint equation. The proof proved nothing.
I pointed out the bug. The model generated a fix with the same flaw. This was a basic range check, not an edge case.
Tests can pass on a circuit that proves nothing. If you don’t understand what the constraints actually do, you won’t catch what AI misses.
This isn’t about intelligence
You’ve learned harder things, like Rust’s ownership model, async, and lifetimes.
The problem is fragmented resources and no clear path.
That’s what this mentoring provides.
Why ZK makes sense now
AI is good at generating a lot of code, and on a web backend that is most of the work. In ZK the work is making the circuit sound and keeping the proof small, and you do not get there with code you cannot read.
Growing demand
- Layer 2 (zkSync, StarkNet, Polygon zkEVM): main direction of Ethereum scaling
- eIDAS 2.0 is in force: every EU country must give citizens a digital identity wallet by the end of 2026
- Proving “over 18” without revealing the rest of your ID is one use case, and zero-knowledge proofs are a privacy technique the regulation names for it
- Enterprise: companies looking for private transaction solutions
A high barrier works in your favour
- Math scares most devs away
- Those who break through have less competition
- I have not found structured halo2 training with 1:1 mentoring
You already know the language
- Major ZK proving systems are written in Rust (halo2, arkworks, RISC Zero)
- Rust dev → ZK is SHORTER path than Solidity → ZK
- No new language to learn
How do I know this can be learned?
Training experience
- chaindev.pl (blockchain training), 27 participants
- Structured format + homework = works
- Participants went from zero to understanding ECDSA and smart contracts
- ZK SNARKs onboarding: onboarded developers to ZK SNARKs, explaining how zero-knowledge proofs work from scratch so they could write production code
Open source contributions
- Ethereum Yellow Paper, contributor to the formal specification
- Mantis, Scala-based Ethereum Classic client, helped build from scratch
- plutus-halo2-verifier-gen, ZK proof verification on Cardano
Speaking
- UPLC 2025, “ZK snarks on Cardano”
- Guest on podcasts (Developer Wannabe and others)
See the teaching style before you apply
Highlights from a live session with Rust developers: building a ZK circuit from scratch in halo2, from execution trace to working proof.
What developers say
“The ZK Course by Adam helped me break through the wall of ZK moon math and complex terminology. […] Adam is a very good and patient teacher with production-grade ZK experience. […] In my experience, even the current models can still hallucinate once you get into the more advanced ZK topics.”G.W., Rust developer (zkSnarks from Zero)
Read full review
“The ZK Course by Adam helped me break through the wall of ZK moon math and complex terminology.
The course is well structured, guiding you through the basics of ZK and explaining the math in an understandable way, before moving on to more complex topics, debugging, and real-life use cases, all backed by plenty of examples. There is also a good amount of homework and code examples attached to each lesson that help put the theory into practice.
Adam is a very good and patient teacher with production-grade ZK experience. I also really appreciated his responsiveness and willingness to help whenever I had questions.
A word on why I think this course is better than learning on your own with AI: In my personal opinion, for difficult subjects like ZK, having a human tutor makes a big difference. A teacher can anticipate the problems you’re likely to run into, explain concepts from a different angle when needed, and point you to the right materials. With such a broad topic as ZK, it’s easy to get lost.
In my experience, even the current models (I used Opus 4.8) can still hallucinate once you get into the more advanced ZK topics. Since the field is still relatively new and very complex, it can be hard to tell whether an explanation is correct if you’re learning on your own.
I recommend this course to anyone wanting to get into the ZK world.”
“Adam has an incredible mix of mathematical/cryptography and smart contract/software engineering knowledge. He’s very diligent and problem-solving oriented. He’s hard working and committed to delivery.”LinkedIn recommendation, architecture director
“This was my first Rust project of significant size and complexity. Adam was an amazing mentor and colleague and I certainly learned a lot from him.”LinkedIn recommendation, Cardano innovation team colleague
“Adam’s leadership and technical expertise were pivotal in driving our initial devnet to success.”LinkedIn recommendation, former manager
“The training is perfectly structured, and Adam’s knowledge and teaching skills make it the best source of blockchain technology information I’ve found.”Arek
“Your passion inspired me to delve deeper. I’ve started tinkering with my own projects, particularly involving smart contracts, and I’ve even managed to monetize them. The training cost has already paid for itself several times over.”Piotr
“The training is practical, and the examples make it incredibly engaging. I believe it will be money well spent.”Marek
Top review is from a zkSnarks from Zero mentee. The LinkedIn recommendations are from previous project work. The last three are from Adam’s earlier blockchain & cryptography training (chaindev.pl, 27 participants).
“But will this work for ME?”
I don’t teach you to be a mathematician. I teach you to be a developer who understands as much math as needed. I use analogies: if you understand how hashing works, you’ll understand ZK basics. If you get generics and traits, you’ll get algebraic structures.
That’s how it’s built. A 2h weekly session plus homework you do in one focused block, around 6-8h a week total. Most mentees reserve a half-day and don’t touch it the rest of the week.
Because you learned from tutorials written by AI or not updated for years. My materials are tested with code that runs TODAY.
Yes, and you’ve seen the docs: example that doesn’t show how to build real world use case. The mentoring gives you working examples beyond basics + explanation of WHY.
This is for you if:
- You’re a Mid/Senior Rust dev looking for specialization
- You can dedicate ~6-8h weekly for 8 weeks
- You want a working ZK project for your portfolio
- You’ve been reading ZK papers but can’t turn them into working code
- You want to move beyond generic backend work into a specialized niche
- You’ve tried halo2 docs and got stuck
This is NOT for you if:
- You’re looking for “quick path to cash”
- You don’t know Rust basics
- You expect to be an expert after 8 weeks
- You want to learn Solidity (this is about proof systems, not smart contracts)
- You need hand-holding for basic Rust concepts (ownership, traits, generics)
8 weeks of halo2 for Rust devs. From practitioner.
What you get: zkSnarks from Zero
Finite Fields + Polynomials
Introduction to how equations work in halo2 and which properties are used for proving.
After this: you start reading ZK papers without drowning in the math.
Roots of Unity + FFT/NTT
How it works, where it is used in halo2, and which parts of the API depend on it.
After this: you understand why proving takes time and how to control it.
Execution Trace + Constraints
Translate program logic into execution trace, halo2 trace API, first complete halo2 circuit.
After this: you start debugging constraints and reading MockProver errors.
Circuit Trait + Chips
Practical examples how to use Circuit trait and how to build reusable chips.
After this: your code looks like production halo2: reusable chips, not monolithic circuits.
KZG Commitment + Trusted Setup
How polynomial commitments work. KZG vs IPA. How to use existing setups. What is Fiat-Shamir and why it is there.
After this: you run the full production pipeline: setup, prove, verify.
Proof + Verification + What Can Go Wrong
How to use halo2 extension libraries, plus a bug catalog of vulnerability categories from real audits, with Rust reproducers.
After this: you catch soundness bugs that AI generated tests miss.
Capstone: Design + Build
Your idea, designed together like sprint planning: components, corner cases, scope. Staged so the first deliverable is a circuit that runs.
After this: you have a circuit design with individual feedback.
Capstone: Review + Ship
Live code review of participant projects. How to turn the capstone into a portfolio piece.
After this: a project on your GitHub you can show and explain.
A Rust CLI or a key-value store used to be a portfolio piece. An LLM writes that in an afternoon now, so on its own it does not say much about you. What you build here is a live halo2 circuit with a working prover and verifier. It is there when someone searches your name.
What you get is the skill and a portfolio piece you can actually show.
AI-generated circuit review is part of the program. We take circuit code that looks fine, compiles, and has green tests, then check whether the proof actually says the right thing.
This is the skill you need when AI gives you plausible halo2 code and you still have to find the missing constraint yourself.
Hands-on exercises every week. Each week comes with coding assignments, and all exercises compile and run with cargo test.
Learning path (first principles):
Working portfolio project, something concrete to show
Understanding of fundamentals: you know how ZK actually works
Solid foundation: you know what you don’t know and how to learn more
Access: access to everything is 12 months from purchase: recordings, repo, materials, bonuses and Discord
What the mentoring contains
Standard tier (recommended): what you get
- 8× 1:1 live sessions (weekly, 2h each)
- Code review: 2 sessions (more at €150 each)
- AI-generated circuit review: break and fix a circuit that compiles but proves the wrong thing
- 2 extra 1:1 sessions, bookable within 6 months
- Capstone project on GitHub + written code review (circuit constraints included)
- Discord async Q&A, first response within 48 business hours
- Recordings of all sessions
Core (€1,750) is a stripped-down starter (6 sessions, no code review, no capstone). Premium (€4,000) adds 6 code review sessions, 6 extra 1:1 sessions, and 2 follow-up calls. See pricing below.
Bonuses included
Why learn from me?
Who I am: Adam, blockchain developer since 2016
- In blockchain since 2016, Ethereum Yellow Paper contributor, Mantis client
- In zkSnarks since 2022: halo2, KZG, Substrate
- Onboarded developers to ZK SNARKs: explained how ZK works from scratch so they could write production code
- Ported a halo2 verifier to a chain with no native support (Cardano via Plutus), rebuilding it as a smart contract, and built a ZK verifier generator on commission for production
- Maintain a fork of halo2-base with a property-based testing tool that follows equality constraints, so your gates actually get tested
- Master’s in Computer Science (Warsaw University of Technology, thesis on cryptography)
- 3D visualizations: I make abstract ZK concepts visual and understandable
What makes me different
I explain cryptography through programming analogies, not formulas
Animations I build myself, showing how polynomials, commitments, and proofs actually work
I explain until you get it
I catch what AI misses
Remember the range check AI got wrong twice, tests green and the proof still empty? Catching that is the difference between generating code and understanding what it does.
What I’m NOT:
- Not a “guru” making promises I can’t back up
- Not a marketer selling training about things I don’t understand
I’m a practitioner who wants to share what I know.
How does it compare?
- 8 weeks of structured learning (vs months wandering through tutorials)
- Working project for portfolio (vs “I know ZK” with no proof)
- Access to practitioner who answers questions (vs Stack Overflow)
- Clear path forward (vs “what now?”)
Other ZK programs
| Program | Price | 1:1 Access | Language | Format |
|---|---|---|---|---|
| RareSkills Standard | $2,600 / Upfront | None | Python | Cohort, US timezone |
| zkSnarks from Zero (Standard) | €2,000 | 8 sessions + 2 code reviews + 2 extra 1:1 | Rust/Halo2 | 1:1, EU timezone |
RareSkills is the established ZK program and a good one. It runs as a cohort, in Python, US hours. Mine is different: full 1:1, Rust and halo2, EU hours. Choose RareSkills if you want a cohort; choose this if you want dedicated 1:1 time in your own stack. Standard (€2,000) is 8 full 1:1 sessions; Premium (€4,000) adds 6 code review sessions and 6 extra 1:1 sessions. Key differences:
- Rust/halo2, not Python
- EU timezone (18:00 CET), not US
Honestly:
I don’t promise you’ll get a ZK job after this mentoring. That depends on you, the market, and how much work you put in after.
I promise you’ll have solid fundamentals and a working project, which is what most people trying to “get into ZK” are missing.
What does the mentoring look like?
Week 1-2: Foundations
Finite fields, polynomials, roots of unity, FFT/NTT. How equations work in halo2.
After this: you read ZK papers without getting lostWeek 3-4: Circuits
Execution trace, constraints, Circuit trait, reusable chips. Your first complete halo2 circuit.
After this: you debug constraints and build reusable chipsWeek 5-6: Proofs
KZG commitments, Fiat-Shamir, proof generation and verification. Common mistakes to avoid.
After this: you run the full production pipeline end to endWeek 7-8: Capstone
Your own ZK circuit, designed together like a sprint and staged so you ship something runnable. Code review. Ship to GitHub.
After this: portfolio project you can show and explainAfter 8 weeks
You will:
- Have a working ZK circuit on your GitHub (not a toy example)
- Understand what happens between witness and proof
- Be able to read halo2 source code and know what’s going on
- Be able to answer “how does KZG commitment work?” in an interview
You still won’t:
- Be a ZK expert (that takes years of practice)
- Know everything about every ZK system
Frequently Asked Questions
2h live session + 4-6h homework, around 6-8h/week. Most mentees block one focused half-day for the homework instead of spreading it across the week.
No. I teach “as much as needed” through analogies. If you understand Rust basics, you’ll manage.
14-day full refund, no conditions. If it’s not for you, you get your money back. I can offer this because people who do the work don’t leave.
No. You’ll have solid fundamentals and working project. Expertise comes from years of practice.
Halo2 teaches circuits at low-level, best for understanding.
Yes. Access to recordings is included with the program.
Rust toolchain and a code editor.
Yes. Full repo access is included. All examples, homework assignments, and the final project template are there.
Weekly 1:1 session with me (8 sessions total). Then homework you do at your own pace (4-6h). Priority Q&A on Discord between sessions. Your 2 extra sessions you book within 6 months. Recordings are available.
Each week has coding exercises in a private GitHub repo that compile with cargo test. Expect 4-6 hours per week.
Every session is recorded, so you catch up from the recording. Priority Q&A on Discord is included.
zkSecurity is great documentation. This is structured 1:1 mentoring with live sessions, code review, and accountability. The difference is a live session and someone reviewing your code, instead of reading docs alone.
Yes. Standard tier (€2,000) is built for company training budgets. I provide proper invoices with VAT. For team purchases, email me at adam@rustarians.com for a custom quote.
Yes. zkVMs use halo2 in their stack, and halo2 itself is mature: many audits, production deployments you can read (zcash, Scroll, axiom-crypto/halo2-lib), native Ethereum and Solana verification, and patches still landing for edge cases. Mature means stable, not dead, the same way ECDSA hasn’t shipped new features in years and is everywhere.
Yes. ZK proofs are used in identity verification, private voting, supply chain, and compliance. The math and engineering skills transfer. This mentoring focuses on the proving system itself, not on a specific blockchain.
In 2026, live coding is back as a first hiring filter, with screen and webcam on, partly a reaction to AI-assisted candidates. A circuit you built yourself and can explain line by line is exactly what survives that, because you can’t fake understanding while someone watches you code.
That’s the design goal. You bring the idea, we scope it in stages so you finish something runnable even if the ambitious part runs long: a circuit with tests first, then the program around it, then an on-chain verifier as a stretch.
Yes. Solana has a built-in pairing check for BN254, which is what KZG needs at the end of verification, so the W5 material maps straight to it. Shipping on-chain is mostly a fight with constraints: a Solana transaction is around 1232 bytes and runs inside a fixed compute budget, so proof and verifier logic have to fit. The things that bite are deserialization, matching the Fiat-Shamir hash on both sides, and pulling your circuit’s equations out by hand. I’ve done this porting work and steer you around it.
By where the proof gets verified and what you can live with. KZG is small and cheap on-chain but needs a trusted setup. IPA has no trusted setup and is easier to verify inside another circuit, which matters for recursion. FRI is post-quantum and powers STARKs.
14-Day Full Refund
No conditions. No questions asked.
Attend sessions, do the exercises
If it’s not for you within 14 days: full refund, you keep what you learned
I can offer this because people who actually do the work don’t leave
Pricing: 3 tiers
Pick the tier that matches how you work. Standard is the recommended anchor; Core is a stripped-down starter; Premium is for serious operators who want more code review and more extra 1:1 sessions. Async runs in set working hours with response limits, see the SLA below. It is full 1:1, not a seat in a cohort of fifteen, that is why it costs what it costs.
- 6× 1:1 live sessions (1h each, over 8 weeks)
- Discord async Q&A, 48h first-response SLA
- Recordings, repo and materials
- Bonuses included, starting with cheat sheet + certificate
- No code review
- No capstone project
- No extra sessions
Starter tier for devs unsure if mentoring will help. Option to upgrade to Standard after 4 sessions (pay difference).
Apply for Core- 8× 1:1 live sessions (2h each, weekly)
- Code review: 2 sessions (more at €150 each)
- 2 extra 1:1 sessions (book within 6 months)
- Capstone project + written review
- Discord async Q&A, 48h first-response SLA
- Recordings, repo, materials and bonuses
For senior Rust devs serious about shipping a halo2 project. This is the anchor tier.
Apply for Standard- Everything in Standard, plus:
- 24h first-response SLA on Discord async
- 6 code review sessions (more at €150 each)
- 6 extra 1:1 sessions (book during your access period)
- 2 follow-up calls after program (1 month + 3 months)
- Extended capstone review (architecture + production-readiness)
For senior engineers who want maximum hands-on time and post-program continuity.
Apply for PremiumAsync support: what’s included
No “always-on chat” promise. The mentoring runs on weekly live sessions, with async chat on Discord between them on set response times. Here is how it works:
Weekdays 09:00-18:00 CET. Weekends and evenings off.
Core/Standard: 48 business hours. Premium: 24 business hours.
Standard: 2 code review sessions. Premium: 6. More at €150 each.
Standard: 2 included, bookable within 6 months. Premium: 6, bookable during your access period. More at €150 each.
Single async channel per mentee (private Discord). Code via private GitHub repo. No email/SMS/WhatsApp for daily ops.
I check messages regularly in working hours; I won’t always reply immediately, but I will read and queue. If a question needs more than a written answer, I’ll book a 30-min live call instead of long-form chat.
Your company can pay for this
Standard tier (€2,000) is built for company training budgets. I provide proper invoices with VAT.
Copy, customize, send. Takes 2 minutes.
Need a custom quote for your team? Email me
Limited spots
This is 1:1 mentoring with live sessions and personal code review. To keep that quality, I take on a limited number of participants at a time.
Why join now?
- 1:1 format = full attention, three people at most
- When the slots fill, the next opening is whenever someone finishes their 8 weeks
- Early-mentee pricing: this goes up once the case studies are on this page
Ready to start?
“I want to be the developer who understands how a proving system actually works. Not just ‘use this library’, but ‘here’s how it works, here’s what we can improve’.”
Eight weeks, a working project, and you know where to go next.
Apply for 1:1 mentoringQuestions? Write: adam@rustarians.com
P.S.
If you made it to the end, you’re seriously thinking about ZK.
This does not make you a ZK expert in 8 weeks. It gives you fundamentals, a working project, and a place to ask questions when you get stuck.
You know where to continue, and you have someone to write to when you get stuck.
See you in the sessions.
Adam
Not ready for 8 weeks?
Smaller ways in.
The halo2 cheat sheet
Core API patterns, 11 security pitfalls from real audits, working Rust code. The reference you keep open next to your editor.
Get the cheat sheet →Live 3-hour workshop, €175
Build a working ZK age verifier in halo2 yourself, then review a circuit that looks fine but proves the wrong thing. The whole pipeline in one sitting.
See the workshop →Circuit review for teams
For Rust teams using AI on halo2 code. Review broken circuits, run bad inputs and leave with a checklist.
Ask for team session