The seven tracks
4 min read
⚡ Algorithms
The classic format with a sharper edge. Each puzzle ships visible sample cases plus a hidden suite with large-input performance tests. Correctness gets you halfway; the hidden gate checks that your solution scales. Expect to learn the standard toolkit (hashing, two pointers, sliding windows, Kadane) by needing it, not by being told about it.
Some puzzles also set an allocation budget: bytes allocated on the managed heap are measured during your run, and a solution that builds throwaway copies fails where the in-place one passes, even when both are fast enough.
Available in full on the Free plan.
🗄️ Database / EF
You write LINQ over an EF Core model; we run it against a real database, with enough data that inefficiency shows up in the timings. The grader shows you:
- every SQL query your code generated (expand a test to read it),
- what each one cost, and
- on plan-graded puzzles, the execution plan the database actually chose, full-table reads flagged in red, index usage in green, with pass/fail rules on the plan itself.
The starter code is usually a working N+1 that times out at scale. Your job is to make the database do the work, and on the plan-graded puzzles, to make it do the work the right way.
Free plan: preview puzzles only. Full track on Pro.
🧹 Refactoring
You inherit code that works (every test passes) and that you'd hate to maintain: tangled conditionals, god methods, copy-paste blocks, arrow code. The famous Gilded Rose is here. Your job is to clean it up without changing what it does.
Grading is two gates at once: the behavioral tests must stay green, and structural metrics measured from your source (method length, cyclomatic complexity, nesting depth, duplicate blocks) must come in under the puzzle's limits.
Available on Pro.
🏛️ Architecture
Multi-file refactoring katas. You get a small, working, badly structured project and a goal: "decouple the notifier", "hide the database behind a repository", "keep the domain pure". Grading runs the behavioral tests and checks the kata's design rules automatically: dependency direction, layering, abstraction boundaries, naming conventions.
Passing tests with the wrong structure fails, exactly like production code review, except the feedback arrives in seconds.
Available on Pro.
🛡️ Secure Coding
Each puzzle starts from code that is functionally correct and quietly exploitable, a file download open to path traversal, a lookup that builds SQL by string concatenation, a logger that lets users forge log lines. You fix the hole.
Two suites grade every submission: functional tests prove the feature still works, and adversarial tests throw real attack payloads at it, traversal strings, injection payloads, SSRF probes at the cloud metadata endpoint, malicious redirects. The result panel reports them separately: exploits blocked and behavior preserved, or no pass.
Available on Pro.
💡 Design Principles
Short, focused katas on the ideas the design patterns are made of. Make a Money type a real
value object (immutable by construction, not just a private set), seal an aggregate so its
invariants can't be bypassed, invert a dependency so the core stops reaching into infrastructure.
Graded like the architecture track: the behavioral tests must stay green and structural rules
(immutability, sealing, dependency direction, role placement) must hold. A fix that half-solves the
smell, the reflexive private set that leaves the backing field writable, fails the rule that was
watching for exactly that.
Currently available on all plans while the track is new.
✍️ Test Writing
The track that inverts the model: you write the tests. You get a correct implementation and a set of planted-bug mutants, and your suite passes only when it catches enough of them, so a test that asserts nothing earns nothing.
Grading runs your suite against the reference (it must go green) and against each mutant (it must go red for at least the required number). It measures the one thing coverage numbers never do: whether your tests would actually detect a regression.
Currently available on all plans while the track is new.
See Pricing for exactly what each plan includes.