2025–now
Internship Allocation
مسارات الامتياز
A fair, GPA-ranked competitive allocation system that places internship students onto rotation tracks, specialties, and hospitals based on their ranked preferences.
- Timeline
- Jan 2025 - Present
- Categories
- Web Development · Algorithms · Backend Development · Laravel · Optimization
- Stack
- Laravel · Filament · PostgreSQL · Docker · Fly.io · Livewire
Internship Allocation — مسارات الامتياز
A platform that automates one of the hardest administrative problems in a medical internship program: distributing students across rotation tracks, specialties, and hospitals — fairly, transparently, and at scale.
Challenge
Hundreds of interns each submit ranked preferences for tracks and monthly hospital placements, while every facility has a limited number of seats per specialty per month. Doing this by hand is slow, opaque, and easy to dispute.
Solution
- GPA-ranked competitive allocation: a greedy algorithm processes students by GPA and walks their ranked wishes, assigning the highest available preference while never exceeding a facility’s seat capacity.
- Concurrency-safe: the whole distribution runs inside a database transaction with pessimistic row locking, so seats can never be double-booked.
- Flexible by design: supports elective months (student-chosen specialty), custom out-of-list wishes, and a full month-by-month capacity matrix.
- Role-based management: admin, student, leader, and data-entry roles, bulk student import, and a full audit log.
Technical Implementation
Laravel 11 with a Filament 4 admin, backed by PostgreSQL and deployed on Fly.io via a multi-stage Docker build (nginx + PHP-FPM + supervisor). The core allocation logic is the most algorithmically interesting part of the suite, with ~180 commits of iteration behind it.
Screenshots (5)