Make the dependencies visible.
NTUMods is a non-profit, student-run course planning platform. My contributions focused on its backend: maintaining Django functionality, exposing prerequisite relationships, and improving course data extraction.
A tree behind the timetable.
I developed the Prerequisite Tree feature using depth-first search, JSON serialization, and REST APIs to support visualization of module dependencies.
Represent prerequisite relationships through the API
The contribution combines traversal of module dependencies with JSON serialization and a REST interface. The supplied resume does not specify the platform’s full frontend architecture or the handling of cyclic prerequisite data.
Less waiting for course data.
I implemented a Go scraper using its HTTP client, connection pooling, and concurrent requests with goroutines. The resume reports a reduction in scraping time from 15 minutes to 10 seconds.
A shorter path to course data.
Reported runtime: 15 minutes
HTTP connection pooling / reported runtime: 10 seconds
reported scraping runtime
Resume-reported before-and-after result. The source supplies no dataset size, network conditions, concurrency limit, run count, or baseline implementation details.
The result is presented as reported, not as a reproducible benchmark or a guarantee for every run. Comparable workload and environment details would be needed to independently reproduce it.
Performance has operational boundaries
Connection pooling and concurrent requests are documented implementation choices. The supplied material does not establish retry behavior, rate limits, or error-recovery policies; those are not claimed here.
What to investigate next
A useful follow-up is to document the scraping workload, concurrency settings, and failure cases alongside repeated timings. For prerequisites, document traversal behavior and representative dependency examples.