// ACCESS LOCKED //

Problem Statements Locked

Tasks for Web Development will be revealed on 25 SEP 2026 • 15:00 IST.

00// DAYS //
00// HOURS //
00// MINS //
00// SECS //

Review the submission instructions while you wait for the tasks to unlock.

Mandatory · All candidates5 Core Requirements

Task 1: Debugging Stage

You will receive a bug log: each entry describes what someone observed, not where the problem lives. Reproduce each assigned bug locally, trace the cause, fix the underlying issue, and document your reasoning.

Core Requirements

  • Open the Canteen Chaos repository linked above and fork it into your GitHub account. Clone your fork, install dependencies, and run the app locally before changing anything; do all work and commits in your fork.
  • For every assigned bug, reproduce it on your own machine before making changes.
  • Trace the root cause, which may be in a different file from where the symptom appears. Fix the cause, not just the visible symptom; hiding a button is not the same as fixing a rule.
  • In LOG.md, in your own words, document how you reproduced the bug, what was actually wrong, and what you changed and why that was the right place to fix it.
  • Commit as you work so the history shows your debugging and progress.
★

Optional Deep-Dive Missions

These allow strong candidates to demonstrate architectural depth without making baseline evaluation unfair.

✦X factor: Find an unreported bug

There are problems in the app that are not in the bug log. Find one, prove it, document how you noticed it, reproduce it, and explain the cause and fix in LOG.md.

✦X factor: Add a regression test

Add a test, script, or check that fails before your fix and passes after it.

✦X factor: Honest engineering note

Describe something you noticed but could not fix, or a fix you are unsure about. Explain the uncertainty clearly. This is more valuable than staying silent.

Submission

  • Submit the public URL of your forked repository, including your fixes and LOG.md with reproduction steps, root-cause analysis, and explanations for every assigned bug.
  • Brownie-point fixes must not break anything else. A regression costs marks rather than earning a bonus.
Build as much as you can

Task 2: Gym Slot Booking, Build as Much as You Can

A gym runs hourly sessions with twenty mats each. Members book and cancel online; staff check members in at the door. Build as much of the system as you can. Full completion is not expected.

Task 02 · Build

Gym Slot Booking, from an empty repo.

The booking flow

The gym runs hourly sessions, twenty mats each. You book one. Mats left, you are in and you get a code. Full, you join the waitlist and you can see your position. Somebody cancels, the next person in the queue is booked automatically. Nobody refreshes anything. At the door you show the code and staff check you in.

Your decisions

That is the whole app. What it is built with, how the data is shaped and where the rules live are your call. Deciding that is the task, so we are not telling you. Two things to hold on to. Twenty mats means never twenty one, and the server decides, never the browser.

Build thoughtfully

Half of it working beats none of it submitted. We would rather see the booking flow done properly than all five features half-wired. No AI. You will walk us through your own code at the end.

Full specification

Everything else, the rules, the full spec, and what counts, is in the brief.

Submission protocol

What to submit

Task 1 · Debugging

Your public fork

Submit the URL to your public fork of the Canteen Chaos repository, including your fixes and a LOG.md with reproduction steps, root-cause analysis, and why your changes belong where you made them.

Task 2 · Build

Your Gym Slot Booking repository

Submit your repository with meaningful commit history and a README. Include your stack/data-model note (10 lines maximum), assumptions, setup instructions, and admin/member test credentials. If deployed, include live links.

Before submitting: make your repository public. Do not commit secrets; use environment variables and include an .env.example.