React without the framework tax
I pick the stack for the product, never for the résumé. Vite and a plain server when that is enough, Next.js when it earns its place, no client framework at all when one HTML stream does the job.
React in production since 2017
Fifteen years of shipping software, nine of them in React and TypeScript. I build the interface, the tests around it and the dashboard that tells you whether it worked.
Available from November 2026 · Wrocław, Poland (CET), remote

I pick the stack for the product, never for the résumé. Vite and a plain server when that is enough, Next.js when it earns its place, no client framework at all when one HTML stream does the job.
WCAG 2.2 AA behind an axe gate, keyboard paths tested in Playwright, text scaling to 200%. Older users of an email client I built never saw a regression.
Hundreds of pull requests reviewed. PostHog from day one, so the component you paid for shows up as a number, never as a feeling.
An AI agent opens about a third of our pull requests under rules I wrote. You get the speed and I keep the quality bar where it was.
Proof
Problem, what I did, result. Client names only where I am allowed to use them.
See also: C# & .NET (legacy)
See also: SaaS & MVP · Mobile & desktop apps
See also: JavaScript · Games
One foot in the door
Two ways to see how I work before you commit to a sprint. Fixed scope, a number in writing after a short call.
I read the repo, CI, tests, security and the parts the team avoids. You get a written report with findings ranked by risk, a plan with milestones and a go or no-go you can defend. I have run this for a large software house before its clients saw the code.
Send me the diff that worries you. Within a few days you get line-level comments, the three things I would change first and whether I would merge it.
Live demo
Edit the component below. It renders live with React 18 loaded from this page, no bundler, no build step. The Profiler readout shows every commit and how long it took. Flip StrictMode on and watch effects run twice, exactly as they do in your dev build.
Demo loading…
Break it on purpose. The error boundary catches it and tells you why.
How it works
You describe the product and the problem. I ask the questions I would ask on day one. If I am not the right person, I say so and point you to someone who is.
A short written plan follows: what we build first, what we measure, how we work together and what it costs. No slide deck.
The first slice ships in the first week: deployed, measured, reviewable. From there the work is paced by what the numbers say.
Fit check
Working style
Hundreds of pull requests reviewed. I review for the product and its reasons. The code comes second.
Claude Code and Codex work on main with hooks, lint and test gates. The model suggests, the criteria decide. Every PR gets a human review and AI-assisted content is disclosed.
PostHog in every project from day one. A tracking plan per feature and dashboards leadership actually reads.
FAQ

Free 30-minute consultation. No prices on this page because scope comes first.
If I am the wrong person I will say so on the call and point you to someone better.
After you book: a calendar invite, then the call. Nothing else to fill in.
Available from November 2026 · B2B contract or employment · Wrocław, Poland (CET), remote