Samuel Mai · Software engineer
I build data products end to end, from the model to the interface.
Software engineer focused on applied machine learning. I like projects where the hard part is getting the data and the evaluation right, then shipping something people can actually use.
Selected work
Most recent first
NFL fantasy rankings backed by a reproducible projection pipeline
FantasyDex
Full-PPR season rankings, waiver trends and player news in one Next.js app, fed by a Python pipeline that trains, evaluates and gates every projection before it ships.
Learned models cut point error at five of six positions, but none passed every check I set before testing, so the app ships the calibrated baseline and the models wait as challengers.
- Next.js
- TypeScript
- PostgreSQL
- Drizzle
- Python
- scikit-learn
- QB−10.5%
- RB−1.0%
- WR−9.1%
- TE−5.7%
- K+2.6%
- DEF−1.4%
| Position | Baseline MAE | Best learned model | Model MAE |
|---|---|---|---|
| QB | 51.8 | Eight-season forest | 46.4 |
| RB | 35.5 | Recency-weighted ridge | 35.2 |
| WR | 30.8 | Six-season forest | 28.0 |
| TE | 23.5 | All-history ridge | 22.1 |
| K | 38.3 | All-history forest | 39.3 |
| DEF | 22.9 | Recency-weighted ridge | 22.6 |
FantasyDex pipeline
By the numbers
- players and defenses projected
- 762
- NFL seasons of data, 2010–2025
- 16
- model policies compared head to head
- 12
- fold metrics independently re-verified
- 4,200
An illustrated MIPS R2000 you can program and watch run
Inside MIPS
- 400000lw $t0, 0($a0)
- 400004addi $t1, $t0, 4
- 400008sw $t1, 4($a0)
- 40000cbeq $t1, $zero, done
A browser-based, MARS-compatible MIPS emulator and assembler. Write real assembly and watch every clock cycle move through a 3D datapath, its pipeline, caches and memory.
Research data pipeline at the UCI Science of Learning Lab
Student Survey Data Platform
A pipeline that consolidates pre/post course surveys, Canvas grades and course analytics into one de-identified, student-level dataset, with SQL that automates response rates and participation scoring. Built under the mentorship of Dr. Joseph Wong.
Student data and source are private. The chart here uses illustrative data.
Updated November 2026
What I'm working on
- 1Weekly NFL projectionsExtending the FantasyDex pipeline from season-long totals to week-by-week projections.
- 2Shipping FantasyDex and the MIPS learnerDeploying both apps on Vercel under samuelmai.com subdomains.
- 3Next up: fantasy basketballAdding NBA support to FantasyDex once the weekly NFL work is stable.
More projects
Student Dropout Analysis
Logistic regression pipeline in scikit-learn to flag students at risk of dropping out, plus hypothesis tests that identified six significant financial, academic and personal factors.
- Python
- pandas
- scikit-learn
Power Outage Analysis
Cleaned 1,534 U.S. power-outage records across 57+ variables, tested relationships with permutation tests, and tuned regression models with GridSearchCV.
- Python
- pandas
- scikit-learn