What it is
SEVAI is AISC's community-service program. Every cycle, more than 150 students rank their preferred activities, and someone has to place each of them into one of 12 options, while respecting capacity limits and keeping grades balanced. I built a complete Google Apps Script automation that does the entire assignment, sends every notification, and ships with a full documentation package.
Built for Riedwaan Kader and deployed on November 3, 2025.
A hand-built jigsaw, every cycle
Assigning 150+ students to activities by hand is the kind of task that eats a full working week. You're juggling ranked preferences, hard capacity caps per activity, and a fairness constraint, no activity should skew toward a single grade. Do it manually and you get errors, late nights, and a process only one person understands.
It also wasn't repeatable. Each cycle meant starting the puzzle over from scratch, with no guarantee the result was even close to optimal for student preferences.
A preference-and-balance assignment engine
The system is a 700+ line Apps Script application driven by ranked student preferences, with the logic and safeguards a real operational tool needs:
- Grade-balance algorithm. Targets roughly 33% per grade in each activity so no group is over-concentrated.
- Capacity management. Respects hard caps per activity and handles overflow gracefully.
- Automated email notifications. Sends confirmations to students, teachers, and advisors automatically.
- Test mode. Run the full assignment and preview results without sending a single email.
- Manual override. Lets the program lead adjust individual placements when human judgment is needed.
It shipped as a complete handover package, 8 files including the full script and operating documentation, so the program could run without me in the loop.
A week of work, reduced to a click
The automation removed 20–30 hours of manual work per cycle and made the process repeatable, fair, and transparent. The program lead could re-run it, preview results in test mode, and trust that capacity and grade-balance rules were enforced consistently every time.
Just as important, it became a template. The same assignment-engine pattern went on to power a whole family of student-logistics systems at the school, Discover India, Discovery Day, and STEAM Week.
What I'd carry forward
-
Test mode is non-negotiable.
Letting the lead preview a full assignment before any emails go out turned a high-stakes script into a tool people actually trusted.
-
Build for handover from day one.
Shipping documentation alongside the code meant the program never depended on me being available to run it.
-
Solve one problem well and it generalizes.
A clean preference-and-capacity engine for SEVAI became the backbone for three more programs.
See how this pattern scaled across the school in the Student Assignment Systems case study.