A round can be any of three kinds of task: fix a bug, build the core feature, or optimize for large inputs. You might get one of them, or a combination on the same codebase. When there is more than one, each builds on the one before it.
The tasks at a glance#
| Fix the bug | Build the core feature | Optimize | |
|---|---|---|---|
| What you get | A failing test or a description of wrong behavior in the existing code | A spec for new functionality that extends the codebase | A much larger input that makes your solution too slow, run out of memory, or crash |
| Rough time, if it's part of a combined round | ~10–15 min | ~25–30 min | ~15 min |
| Your goal | Make the existing code correct and show you understand it | A working feature that fits the existing structure | Find the bottleneck and fix it with a better algorithm or data structure |
| AI's role | Explaining unfamiliar code. Finding the bug yourself is the signal | Biggest here: helpers, boilerplate, standard data structures. The approach is yours | Implementing the optimization you chose and checking the complexity |
| What good looks like | You explain the cause, make a minimal fix, and a test proves it | You state a plan, build in pieces, and test along the way | You say why it's slow before changing anything, then show it's faster |
How the tasks connect#
The bug fix is orientation in disguise. You can't fix the bug without reading the code, so this task forces you to learn the codebase that the feature and the optimization build on. If you rush it, you start the feature on a shaky understanding.
The feature decides how hard the optimization is. If you keep the core logic in separate, clean functions, swapping in a faster algorithm later is a contained change. If everything is tangled together, the optimization turns into a rewrite with fifteen minutes left.
The optimization often runs out of time, and that's normal. If you can't finish, clearly explaining the bottleneck, the better approach, and its complexity still earns credit. Silence, or flailing changes with no stated reason, earns nothing.
Not finishing every task is common. The score comes from how you worked on each task, not from how many you completed.