20 Weeks of Online Classes

ZK-STARK Bootcamp

A 20-week remote course to build a ZK-STARK from scratch and grasp the core math, designed for busy professionals.
Next Cohort:
TBA
TBA
Apply Now

The learning outcome for this program is to build a ZK-STARK from scratch and understand the underlying mathematical principles behind ZK-STARKs.

The program is intentionally slow-paced in order to accommodate professionals with busy full-time jobs.

If students dedicate 15 minutes a day to homework, they should have no issue keeping up.

Homework problems are intentionally “bite-sized” with built-in feedback mechanisms, so students don’t have to spend time setting up an environment, debugging configuration issues, or wondering if they've done the problem correctly.

Your Journey Explained

Bootcamp Schedule

1 Hour lecture per week

1 Hour office hours per week (optional)

15 minutes call with instructor (optional)

Homework take 15 minutes per day to complete

20 weeks in duration

Fully remote instruction

Before You Start

Prerequisites

Students must be comfortable with High School / Primary School Algebra. Polynomial arithmetic, polynomial factorization, and rules of exponents are especially crucial. Students from non-standard backgrounds should consider completing Khan Academy’s College Algebra OR Algebra 2 course first (or an equivalent course).
Students must be comfortable with the concept of “sets,” “subsets” and operations such as the “union” and “intersection” of sets.
Students must be comfortable with big-O notation for describing algorithm complexity, such as O(n) and O(n log n).
Students should already be familiar with Merkle Trees.
General maturity with programming is assumed. We will use Python for our examples, but any reasonable programming language can be used.

Structured For Success

ZK-STARK Bootcamp Curriculum

Last updated: November 2025
Week 1

Polynomials in point form

Vandermonde matrices, point form of polynomials, Lagrange interpolation.
Week 2

Group Theory Introduction

Group definition, order of a group, examples of groups.
Week 3

Subgroups

Examples of subgroups, subgroup properties, subgroup definition. Primitive elements and generators.
Week 4

Fundamental Theorem of Cyclic Groups

Computing generators of subgroups, valid subgroup orders.
Week 5

Roots of Unity Part 1

Roots of unity and multiplicative subgroup equivalence, primitive roots of unity, arithmetic shortcuts with roots of unity.
Week 6

Roots of Unity Part 2

Square roots of roots of unity, powers of roots of unity, roots of unity on the unit circle.
Week 7

Evaluations of a Polynomial on Roots of Unity

Maximally factored polynomials, special cases of polynomials evaluated on roots of unity.
Week 8

NTT Algorithm By Hand

Square root expansion.
Week 9

NTT Algorithm In Practice

Code an efficient NTT algorithm in 12 lines of code.
Week 10

Inverse NTT algorithm

Week 11

Merklizing a Polynomial Part 1

Week 12

Merklizing a Polynomial Part 2

Week 13

The FRI Algorithm

Week 14

Proving a polynomial is of low degree

Week 15

Expressing Real World Problems as Arithmetic Circuits

Week 16

Schwartz-Zippel Lemma

Week 17

Algebraic Intermediate Representation

Week 18

The Factor Theorem and Polynomial Division

Week 19

Constraint satisfaction expressed as low-degree polynomials

Week 20

End-to-end ZK-STARK

Join Our ZK-STARK Bootcamp

Next Cohort:
TBA
TBA
Apply Now

Meet Your Mentor

Your Instructor

Jeffrey Scholz

Jeffrey Scholz, founder of RareSkills, was Yahoo’s youngest senior engineering manager, building its video machine learning team and earning two AI patents. His work at RareSkills has helped 100s of engineers land roles at top blockchain companies, and the author of the popular The RareSkills Book of ZK. He holds a Master's degree in computational theory from Columbia University.

João Paulo Morais

João Paulo Morais, a PhD in physics with 30+ academic publications, began programming in Pascal and Clipper. In 2021, he pivoted to Web3, blockchain, and cryptography, focusing on Ethereum and zero-knowledge proofs. He teaches a Solidity course on Udemy (in Portuguese) and has authored advanced articles on Solidity for RareSkills.

Welcome Onboard

Onboarding Process

1

Apply To Enroll

2

Payment

3

Course Access

4

Attend Class

Flexible Plans

ZK-STARK Bootcamp Pricing

Next Cohort:
TBA
TBA

Standard

$3,000/upfront
$1,000 × 3/monthly
  • 20 × Weeks Lectures
  • Tailored Homework
  • Slack & Discord Access (Lifetime)
Apply Now

Premium

$4,500/upfront
$1,500 × 3/monthly
  • Everything in Starter Tier
  • 20 × Individual Code Review and Mentoring Sessions
Apply Now
Save 2% if you pay with USDC or USDT

Making Their Mark

Our Impressive Alumni

Highest earning security researcher in Cantina, with over $600,000 in earnings.
Zigtur
Joined zkSync, Shortly After Completing Our ZK Bootcamp.
Rahul Saxena
Landed a job in Coinbase, shortly after completing our course.
Darian Chan
Co-authored ERC-3643 & Worked as a tech lead at PolyTrade & Biconomy.
Adam Boudjemaa
DevRel at Chainlink
Andrej Rakic
Hired as a Zero-Knowledge Security Researcher at zkSecurity after completing the ZK bootcamp
Marco Besier
Achieved a Top 10 finish in the Reserve Protocol competition
agent3blood
Co-founded Kwenta, which was later acquired by Synthetix
etnom
Former Privacy Scaling Engineer at the Ethereum Foundation, now Lead Engineer at Cryptex Finance
crisgarner.eth
Serving as Blockchain Lead at the Fantom Foundation
Evgenii Danilenko

Everything You Need To Know

Frequently Asked Questions

No, this bootcamp assumes no prerequisites besides the ones listed above.

Jeffrey Scholz will be conducting the lectures, João Morais will conduct the office hours.

Not directly after. We’ve generally seen it takes about 6 months to a year for a seasoned developer or auditor to gain enough knowledge to become professionally productive in the Zero Knowledge field. Taking this course will speed up part of the journey, but it is not the entire journey. If you are unsure, please reach out to our team and we’ll answer your questions candidly.

This is ideal for engineers who want an extra learning structure to maximize their chances of completing the learning journey, as well as those who enjoy the social aspect of learning.

Rest assured, we specifically designed this course for you! If you can just set aside 15 minutes a day and one hour a week for the lecture, you’ll be fine. If you'd like, our team can check your progress daily and gently nudge you.

We also facilitate pairing up students to work on the homework in pairs for extra motivation and accountability.

We understand the anxiety of engineers who have little time to spend on upskilling, as well as the challenges that come from having very limited time and energy for engineering activities outside of work.

The entire point of this course is to provide a structure where maintaining consistency despite a busy schedule is as frictionless as possible.

Talk to our team, and we’ll develop a strategy for you to use your time effectively.

This course isn’t really for you if that is your goal. We want to create an environment where students help each other stay motivated to do the hard thing of being consistent despite having a busy schedule.

That said, we designed the homework to be a straightforward review of what was covered in the lecture. There are no “trick questions,” problems that require creative solutions, or problems that require you to generalize in ways you haven’t seen before. The homework is simply a mechanism to get your brain to memorize the foundational concepts so they can be combined into full-fledged algorithms later.

Yes, this is very common.

Apply Now