Full-stack Developer & UX/UI Designer
SaaS, dashboards, RAG search, CRMs, brand systems, automations — the kinds of product I take from idea to production. Hover any one to look inside.
Software that ships, and keeps running — auth, retrieval, monitoring, and a bill you control.
Full-stack products built end to end — RAG pipelines, CRMs, analytics and governance tooling. Open any card for the story and a look inside.
One person accountable — from the first sketch
to a product running in production.
Goals, constraints, the real problem.
Flows, wireframes, a visual system.
Frontend, API, data, and the AI.
Dockerised, deployed, on a domain.
Monitoring, backups, automations.
I write it and design it — scroll to watch a component build itself.
1export function Impact() {2 return (3 <Card>4 <Header>5 <h3>Impact</h3>6 <Delta>+38%</Delta>7 </Header>8 <Chart data={series} />9 <Stat value={128400} />10 <Toggle label="Dark" />11 <Tags>Productivity · Savings · Growth</Tags>12 </Card>13 );14}
Tools I reach for across frontend, backend, data, AI and infrastructure.
Engineering is a stack of trade-offs. A few I make often — and the conditions that would change my mind.
One language across front and back, shared types end to end, and the biggest ecosystem. For a small team shipping a product, that single mental model is the fastest path from idea to production.
The parts under the hood that decide whether a product survives real users.
Live, multi-user state so everyone works on the same data at once — fewer conflicts, faster decisions.
Secure sign-in and role-based access so the right people see the right things — and nothing leaks.
AI that answers from your own documents, not the open web — accurate, cited, on-topic for your team.
Stripe checkout, subscriptions and webhooks wired in — billing that just works and reconciles itself.
Packaged once, runs identically everywhere — no “works on my machine”, quicker onboarding and deploys.
Tests and deploys automated on every change — ship more often, with less risk and no manual steps.
Right-sized servers, serverless or edge — the performance you need and a bill you can control.
Infra-as-code, environments and automated releases — repeatable and boring.
CDN, DNS, WAF and edge caching — fast everywhere and shielded.
Staging, preview envs and user acceptance — caught before it ships.
Logs, metrics and alerts that surface issues early — less downtime, faster fixes, calmer launches.
Backups, migrations and restores handled — the product stays reliable long after launch day.
Core Web Vitals, caching and query budgets — speed users actually feel.
Queues, workers and horizontal scale so a spike doesn’t take it down.
Lifecycle emails, events and churn signals that turn first-time users into regulars.
Full products — shipped, deployed and kept alive. Not slides, not prototypes.
One person who designs, builds, ships and looks after the whole product — so you deal with the maker, not a relay of five.