Work Portfolio
Twenty-two reconstructions of features I shipped on products with real users, rebuilt here so you can click through them instead of taking a bullet point's word for it.
This site uses one functional cookie to keep feature rollouts consistent for you. Nothing is set until you choose. See the privacy notice.
Lead Frontend Developer
Most portfolios are screenshots. This one runs, measures its own Web Vitals, and owns its mistakes in writing.
10 traits, and for each one a page in this project you can open and check. Adjectives are cheap. These are not.
The full matrixOwn the real-user number, not just the Lighthouse score.
Draw the boundaries before writing the components.
Add a dependency when it earns its weight, not before.
TDD as the default, behavior as the contract.
Tokens and primitives that scale past one app.
Twenty-two reconstructions of features I shipped on products with real users, rebuilt here so you can click through them instead of taking a bullet point's word for it.
Real Core Web Vitals from this domain, aggregated to P75.
The tokens and primitives this site and an Angular app both use.
A retail fleet console: live alerts, inventory health, drill-down.
Targeting rules, sticky rollouts and a kill switch, with an audit log.
A low-poly Toronto you walk through with WASD, built in React Three Fiber and streamed in only when the canvas is near the viewport.
Making axe part of the definition of done instead of a checkbox at the end.
Why the suite splits into unit, integration and end to end, and what each tier is allowed to know.
Chasing a render regression to its source instead of scattering memo calls and hoping.
A second pass at the bundle, because the first one left kilobytes on the table and said so.
What separates a lead from a senior, trait by trait, with the work that backs each one.
A node graph, a slot machine, and two before those. They all still run, banner and all, so you can watch the taste change instead of taking my word for it.
Spin through the archiveThe resume is one page and the evidence for all of it is on this domain. If the fit looks right, the fastest next step is an email.