Sophomore at UMass Amherst, triple-majoring in CS, Applied Math, and Statistics & Data Science. Right now that means an LLM inference engine I built from scratch — 1,929 tok/s on a T4 — and I'd like to hear what you think of the work.
I study Computer Science, Applied Mathematics, and Statistics & Data Science at UMass Amherst (Class of 2028). The three degrees share one purpose: I want to be equally strong at writing the code, proving the math, and reading the data — because the roles I'm aiming for demand all three.
Right now, that plays out in three places. I built an LLM inference engine from scratch — every layer of a transformer in PyTorch, a KV cache, CUDA-graph decode, and a hand-written CUDA kernel — and benchmarked each optimization against Hugging Face and vLLM on a real GPU. I do undergraduate research in combinatorial optimization at the DREAM Lab, measuring when fast approximations of hard database problems can be trusted. And I built HoopIQ, an NBA prediction system that goes from 25 seasons of raw data to a validated model, and teach the databases course it runs on as a course assistant.
My goal is an ML systems, GPU software, machine learning, or data science role — internship or co-op, and I mean both equally. A co-op's longer runway is a feature to me, not a fallback: more time to own real work and ship something that matters. If you're a recruiter, engineer, or researcher, this site is built to show you exactly how I operate. And if you have advice, I'm listening — seriously.
Each card below is a short preview. The full pages go much deeper — the reasoning, the numbers, and what's honestly still unfinished.
Research on package-query evaluation and combinatorial optimization. I showed when the lab's fast LP relaxation matches exact ILP on package queries — 82% of cases overall, 100% on count-only queries — by running 120 controlled experiments across 5 query templates, built the Python/Gurobi harness that makes the whole sweep reproducible from one command, and constructed adversarial inputs that force the lab's Progressive Shading algorithm through more partitioning steps than its paper predicts. Full detail on the research page →
I teach SQL, functional dependencies, BCNF, and transactions by running weekly PostgreSQL labs, debugging live schemas in front of the room, and grading lab submissions each week. The same foundations my research and HoopIQ's data pipeline run on — and if I can explain it clearly to a room of students, I actually understand it.
Coursework: Data Structures, Algorithms, Data Management, Computer Systems, Machine Learning, Artificial Intelligence, Linear Algebra, Multivariable Calculus, Probability and Statistical Inference.
Most portfolios end with "feel free to reach out." I mean it more literally than that. I'm early in my career, and honest input from people ahead of me is worth more than anything I can Google. Whichever of these fits you, the door is open:
You've seen hundreds of applications — I've written one. What would make mine more competitive for ML systems, GPU software, or machine learning roles? What should I build, learn, or fix next? Blunt is better.
Send adviceInternship, co-op, research role, or something adjacent — even if it doesn't look like an obvious fit, I'd rather hear about it and talk it through. There's no downside to a conversation.
Share itQuestions about anything on this site, thoughts on the inference engine or HoopIQ's roadmap, or a quick chat about your own path — I'll take a 15-minute conversation with anyone doing interesting work.
Connect on LinkedIn