I work on the screens where things actually go wrong.
Six years of React, Next.js and TypeScript. The work I like is unglamorous — checkout flows, billing screens, dashboards holding more data than fits on a screen.
whathow
systemsComponent architecture and design systems.I've built shared UI libraries that other apps depend on. It's a different job from using one: you find out quickly whether your API was any good.
stateKnowing where state belongs.Server data, shareable view state and local state are three different problems. Most of the mess I've cleaned up came from code that treated them as one.
changeBig changes without stopping the product.I've moved a live product onto a new router in pieces small enough for someone else to review. A big-bang cutover would have been faster to write and impossible to roll back.
accessAccessibility that survives the next sprint.Keyboard paths and focus order designed in at the start. The audit-then-patch cycle just breaks the same things again every release.
nowSarohOne system to run a business. I do all of it: design, API, deploys. The code is public.
Open to work — remote, or hybrid.