Performance, a11y & polish
Targeted work on load performance, Core Web Vitals, WCAG compliance, and the interaction polish that makes a product feel finished.
Sometimes the product is built and it just is not fast enough, accessible enough, or finished enough. This is scoped work to close that gap — measured, prioritised by impact, and handed back with the reasoning so it does not regress.
I treat performance, accessibility and polish as one body of work because they share a root cause: decisions made under deadline that nobody circled back to.
- Performance audit: bundle analysis, render-blocking resources, image strategy, font loading, and third-party script cost
- Core Web Vitals fixes tied to field data, not just lab scores — LCP, INP and CLS
- Code splitting, lazy boundaries, and caching at the edge where it helps
- WCAG 2.1 AA pass: focus order, contrast, semantics, labels, and screen reader testing with findings ranked by severity
- Interaction polish: motion with restraint, consistent spacing, loading and empty states, and microcopy that guides
- A short written report so the team can hold the line after the engagement
- Lighthouse or CrUX numbers are hurting you and nobody has time to dig in
- An accessibility audit or legal requirement is coming and you need to be ready
- The product works but feels rough next to competitors
- You want a second set of eyes before a big launch
The audit is usually a few days. The fixes depend on what it finds — often a week or two of focused work gets the big wins, with a longer tail of smaller items the team can pick up.
Less likely if the budgets are in CI and the report explains the why. I set both up as part of the work.
Yes. A WCAG 2.1 AA audit with a prioritised findings list and fixes for the blocking issues is a common standalone engagement.
Tell me about your product
Share a short brief — problem, timeline, and stack — and I'll reply with a candid view on fit, effort, and the fastest path to a shippable milestone.