
Find A Brainrot
A free, location-based game for families. Walk your neighborhood, catch Brainrots (opens in a new tab) on a map or in AR, then care for them at home.
Senior Frontend Engineer
Ten-plus years shipping accessible, high-performance web apps. Rails and Hotwire on the back end. Agentic engineering ahead.

Projects
Side projects and teaching, built on my own time with the same standards I bring to work.

A free, location-based game for families. Walk your neighborhood, catch Brainrots (opens in a new tab) on a map or in AR, then care for them at home.

AI-assisted sprint planning with a real-time kanban board and an MCP server so coding agents can pick up and update work.

A highly rated Udemy course. Build a password manager with Rails 8 and Hotwire, and learn modern Rails best practices along the way.
History
I started building for the web in 2011, when the job was HTML, CSS, and enough JavaScript to make a landing page behave. The fundamentals came first: semantics, accessibility, performance, and designing for the smallest screen before the largest.
From there the stack widened. WordPress themes for sixteen brands. Rails views becoming React apps at a high-traffic fintech. A multi-brand component library built so three product lines could share one design language. A year in Go and AWS, shipping APIs and Terraform. Then back to the front end to lead a security platform's move from jQuery to Hotwire, with a ViewComponent library the whole team builds on.
Every one of those years taught the same pillars in a different costume: understand the user, respect the constraint, build the smallest thing that works, make it accessible, measure it, and leave the codebase clearer than you found it.
The FoundationDoesn't ChangeThe ImplementationDoes
Future
Agentic engineering does not replace those pillars. It tests them. When a coding agent can draft a feature in minutes, the scarce skills become the ones the years built: knowing what to build, how to scope it, what good looks like, and how to tell when it is wrong.
I use Claude Code and Copilot every day, and I built SprintVibe (opens in a new tab) so agents can read a backlog and update it as they ship. This site was planned and built that way. The work is directing, reviewing, and setting the standards an agent builds to: accessibility, performance, and code a human can still read.
That is the beam: the same fundamentals, pointed forward.
Skills
The tools change. The fundamentals of building for people on the web do not.
Contact
Have a project, a role, or a Rails question? My inbox is open.