The short version
I like solving the problem behind the problem. Lately, that mostly means AI.
I'm a software engineer with a background in math and statistics, and I've always been pulled toward the general solution instead of the one-off fix. For the last few years, that's mostly meant AI.
At Robinhood I build LLM systems for financial-crimes investigations: greenfield pipelines that read, summarise, and classify the way an investigator would, plus the AI tooling my own team uses to move faster. Alongside that, I've led the larger projects: a self-serve detection platform, the same-day EU crypto and UK brokerage launches, and the in-house stack that's replacing our Actimize vendor for filing reports to regulators. Each one was a cross-team effort I designed and drove.
Earlier on, I led inventory systems through a company-wide ERP migration at Google and broke a monolith into services at SPS Commerce. Different problems, same throughline: leave the people around me faster and better-equipped than I found them.
Not just at work
The clearest way to show what I do is to point at something I built solo, end to end, and put in front of real people. This one's live.
An AI coach that writes today's session for you
A daily coach that programs around your training, goals, schedule, and history — not a static template. It reads your training in plain English, confirms what it understood, then generates each day on demand and adapts as you log. I designed, built, and shipped the whole thing.
- Solo, end to endProduct, backend, the LLM programming doctrine, and the frontend.
- Production-gradeSecure, reliable, and cost-controlled — engineered to run as a real product, not a demo.
- LLM-nativeEvery session is generated, not looked up — the thing itself, not a demo.
Let's talk.
Always happy to talk AI, financial-crimes engineering, leading messy cross-team projects, or any problem that's begging for a general solution.