How ReviewDojo Works

A transparent look at every part of the system — how challenges are built, how you're graded, and exactly how XP is calculated.

The three steps

⚙️

01

Configure your challenge

Pick a language (JavaScript, TypeScript, Python, or Java), a difficulty level (1–5), and how strictly you want to be graded. The AI Saboteur generates a fresh piece of realistic production code — never the same challenge twice — and seeds it with intentional bugs.

🔍

02

Review the code

Read through the code in a VS Code-style editor. Click any line to add a structured annotation: issue type (Bug, Security, Performance, Design), severity (Low → Critical), and your explanation of what the problem is and why it matters. This mirrors a real GitHub PR review.

⚖️

03

Get graded by The Judge

Claude (The Judge) reads your annotations and scores your review across four engineering domains. It's not an answer-key check — it evaluates the quality of your reasoning. You get a written critique explaining what you found, what you missed, and what stood out.

The four grading domains

Your overall score is the average of these four domain scores (0–100 each). The domain breakdown tells you where your engineering judgment is strong and where it needs work.

🛡️

Logic & Safety

Did you catch correctness issues, null-pointer dereferences, race conditions, and security vulnerabilities? This domain rewards finding problems that could cause incorrect behavior or security breaches.

🗄️

Data Integrity

Did you spot missing validation, transaction safety issues, or data corruption risks? This domain covers the code paths where bad data enters or persists.

📈

System Scale

Did you notice N+1 query patterns, missing indexes, resource leaks, or code that works fine at low volume but breaks under load? This domain tests production-scale thinking.

🔁

Resilience

Did you flag missing error handling, absent retries, swallowed exceptions, or gaps in observability? This domain covers what happens when things go wrong.

Belt progression

Each belt has an XP threshold. Once you cross it, the cert exam unlocks automatically — free to take, no credits required. Passing the exam advances your belt. Failing leaves your XP intact; just keep practicing.

White Belt (Initiate)

0 XP

Starting point

Yellow Belt (Analyst)

600 XP

10 challenges at L2

Green Belt (Engineer)

1,800 XP

13 more at L3

Blue Belt (Senior)

3,600 XP

12 more at L4

Brown Belt (Principal)

6,600 XP

20 more at L4

Black Belt (Sensei)

9,600 XP

14 more at L5

Challenge counts are incremental — each number shows additional challenges needed beyond the previous belt, assuming a 75% average score at that tier's difficulty level.

The XP system

XP is calculated from two things: the difficulty level you chose and the score you earned. Harder challenges award more XP per attempt — but they also cost more credits and genuinely require a stronger review.

XP = base × (your score ÷ 100)

+10% bonus if you score 90% or higher  ·  0 XP if you score below 40%

LevelBelt tierBase XPAt 50% scoreAt 75% scoreAt 90%+ scoreCredit cost
L1Initiate5025 XP37 XP49 XP
1 credit
L2Analyst8040 XP60 XP79 XP
1 credit
L3Engineer13065 XP97 XP128 XP
3 credits
L4Senior200100 XP150 XP198 XP
3 credits
L5Principal300150 XP225 XP297 XP
5 credits

XP efficiency (XP earned per credit spent, at 75% score)

L137 XP/credit
L260 XP/creditbest
L332 XP/creditleast efficient
L450 XP/credit
L545 XP/credit

Level 2 is the most credit-efficient option, but Level 4 challenges better prepare you for the Blue Belt exam. Choose difficulty based on what you want to practice, not just XP rate.

Frequently asked questions

Everything you might want to know before committing to the platform.

How exactly is my XP calculated?

XP = base × (your score ÷ 100). The base depends on the challenge difficulty you chose. Scoring 90%+ adds a 10% bonus on top. Scoring below 40% earns 0 XP — the challenge is marked incomplete. There is no partial XP for low effort.

Can I just grind Level 1 challenges to earn XP cheaply?

You can, and Level 2 is actually the most credit-efficient option (60 XP per credit at 75% score). But cert exams are set at a difficulty appropriate to the belt — Yellow Belt exams use Level 2 code, Blue Belt exams use Level 3–4. If you only practice on easy challenges, the exam will be a sharp step up. The XP system lets you take any path, but the exam is the real gate.

What's the difference between a regular challenge and a cert exam?

Regular challenges cost credits and earn XP. Cert exams are free (no credit cost) but require you to hit the XP threshold first, and you must score above the belt's pass mark (65–75% depending on belt) to earn the certification. Failing an exam doesn't remove XP — you just keep practicing and retry when ready.

What happens if I fail a cert exam?

Your belt stays the same. Your XP is unchanged. There's no penalty — just keep doing regular challenges to sharpen your skills and retry the exam at any time. The exam is unlocked once you've maintained your XP threshold; there is no lockout period.

Is grading done against a fixed answer key?

No. The Judge (Claude) evaluates the quality of your reasoning, not a checklist. Two reviewers can catch the same bugs and both earn full marks even if they word things differently. What matters: did you identify real issues, explain what causes them, and convey why they matter? Vague or wrong annotations get partial or zero credit — but you're never penalized for something The Judge agrees with.

Do I need to find every bug to pass?

No. Missing a low-severity issue is a small deduction. Missing a Critical security vulnerability is a significant one. A thoughtful review that catches the major issues with clear explanations will score well above the pass mark. Cert exams are designed so that a genuinely competent reviewer at that belt level can pass without finding every planted issue.

What are 'planted issues'?

Every challenge is generated with intentional bugs seeded by the AI Saboteur. After grading, the full list of planted issues is revealed — you can see exactly what was hidden, whether you found it, and how The Judge weighted it. This transparency is intentional: you should be able to verify that the challenge was fair.

What if I think the grading is wrong?

AI grading isn't perfect. If a grade feels off, compare the critique against the revealed planted issues — both are shown on your results page. The planted issues tell you what was seeded; the critique tells you how The Judge evaluated what you found. If something looks inconsistent, re-reading both usually clarifies it. You can also use the retake option to attempt a fresh challenge on the same topic.

Why is Level 3 the worst value for credits?

The credit cost jumps from 1 (Levels 1–2) to 3 (Levels 3–4), but the XP doesn't triple. At 75% score: Level 2 gives 60 XP for 1 credit (60 XP/credit), while Level 3 gives 97 XP for 3 credits (32 XP/credit). Level 4 recovers to 50 XP/credit because the XP base grows faster than the credit cost. If pure credit efficiency is your goal, Level 2 or Level 4 are the sweet spots.

How many challenges does the full journey take?

At Level 4–5 difficulty, roughly 65–80 challenges (~200 credits). At Level 2, roughly 160 challenges (~160 credits). Most users land somewhere in between. At 5 challenges per week, you're looking at 3–4 months to Black Belt from scratch.

Can I retake a challenge?

You can view all past submissions in History. Re-grading a submission does not award XP — this prevents gaming by re-submitting until you score higher. Starting a fresh challenge on the same language/difficulty always costs credits and generates brand-new code.

Are certificates permanent and verifiable?

Yes. Every certificate has a unique public URL (reviewdojo.io/certificate/...) that anyone can visit without logging in. The URL is permanent and shows your name, belt level, language, score, and date awarded. You can share it on LinkedIn or include it in a resume.

What languages are supported?

JavaScript, TypeScript, Python, and Java — across all five difficulty levels. Your certificate specifies which language you took the exam in. Language is a label on the certification, not a separate belt progression: there is one belt per discipline, not one per language.

Do credits expire?

Paid credits never expire. Free credits (5 per month) reset on the 1st of each month — unused free credits do not roll over.

Ready to put your code review skills to the test?