
Computer vision for basketball
Pose analysis. Ball tracking. Broadcast automation.
Bridge the
eye-test
and counting stats.
Full-stack engineer -- ML, mobile, and web. I build end-to-end systems for basketball: film in; numbers, insights, and interfaces a coach can use, a scout can trust, and a front office can act on come out.

Thesis
Basketball has been the main constant in my life. I build AI for basketball to give back to the game that has given so much -- for coaching, scouting, and training.
Worked at
Who
Full-stack engineer at Amazon and MIT. ML, mobile, web. Basketball lifer building the tools I wish we had.
Production ML at Amazon (Prime Video Browse and Discovery) and scientific software at MIT's Plasma Science and Fusion Center (DisruptionPy, a framework analysing plasma-fusion data across five Tokamak reactors).
Earlier in 2025, Lead ML Engineer at Cerebro Sports -- a full-stack app for live basketball-tournament analytics: LLM chat over a stats database, realtime graphs, dashboards, text-to-SQL. Before that, four years on Microsoft's M365 Security Detections team, where I led the first production mail-anomaly detection system (response to the nation-state email-breach incident) and designed the agile PySpark workspace the team ships on.
Earlier still: AI.Reverie, where I led a Swift + AVFoundation iOS app running a PyTorch YOLO model on-device, and Red Hat OpenShift, upstream contributions to the Kubernetes container runtime (CRI-O, Libpod). Boston University: MS in AI + Deep Learning, BS in Computer Science + Astrophysics, Presidential Scholar.
The work
Two systems.
One game.
Follow Through grades a shooter's form against NBA pros and returns the three mechanics to fix. EyeBall follows the ball across game film, derives passes and possessions, and turns a stationary wide shot into a broadcast that pans the action.

Follow Through
Shot-form analysis
Eighteen joints, tracked frame-by-frame, aligned to a pro reference. A single 0-99 score for how close you are. The three mechanics to work on first.
Explore
EyeBall
Ball tracking + broadcasting
Follow the ball. Find passes and possession boundaries in its path. Then use that primitive to pan a synthetic broadcast camera across amateur footage -- no operator required.
Explore