Overview
How It Works
Google Forms → forms_to_csv.py → recruiters.csv + students.csv → matching_algorithm.py → workbook + CSVs
(collect) (clean & convert) (match & build)
- Collect — Recruiters and students fill out Google Forms with their preferences, industries, and majors
- Convert — forms_to_csv.py turns messy raw exports into two clean CSVs, resolves each student's guaranteed "wildcard" picks, and flags anything that needs a human look
- Match & Build — matching_algorithm.py scores every possible student-recruiter pair and assigns matches in stages (guaranteed picks, equity floor, recruiter floor, general fill, backfill)
Key Features
- Multi-stage matching algorithm that balances student preferences, recruiter capacity, and equity constraints
- Google Apps Script for building and managing the intake forms
- Excel workbook output with 8 tabs including printable rosters, student cards, and room maps
- Event timing configuration for food, structured matching, and open mingling periods
- Demo mode with realistic synthetic data for dry runs before the real event
Technologies Used
- Python — Core matching engine
- Pandas & NumPy — Data processing and scoring
- OpenPyXL & ReportLab — Excel workbook and PDF generation
- Google Apps Script — Form creation and management

