In-App AI Copilot with Generative UI
A project-scoped assistant that answers experiment questions with live React components instead of markdown walls.
- Mastra
- Vercel AI SDK
- Generative UI
- Weaviate
- Vector RAG
- React
Senior Product EngineerFullstack Autonomy
Shipping software at the intersection of design craft and fullstack velocity.
Dubai, UAE · UTC+4 · Open to remote (US EST, UK/EU CET, APAC)
About
8 years across the stack taught me to care about both ends of it: the typography and micro-interactions users actually notice, and the unit economics that decide what ships. I don’t hand work off at the API boundary. I scope features, build them end to end, and check the numbers afterwards.
Flagship Work
The problem, the architecture decisions, and the numbers that moved.
A project-scoped assistant that answers experiment questions with live React components instead of markdown walls.
What AWS actually cost, and how the move to Hetzner happened without taking the platform down.
The official voting platform and admin console for a national esports awards broadcast, with React embedded inside a legacy Angular host.
The plumbing that keeps experiments and enterprise tools in sync, in both directions.
Philosophy
Three things I care about when I ship: taste, how far I take ownership, and how I use AI.
The anti-AI-slop
Code is easily generated; taste is not. I build with an obsessive eye for typography, fluid micro-interactions, spacing rhythm, and accessibility standards (WCAG). I treat Figma as a blueprint, not a wall.
Idea to release
I don’t wait for backend tickets to be unblocked. From modeling database relations and scaffolding Node/Rails APIs to shipping React UI components and provisioning servers, I own features from idea to release.
Rigor over vibes
AI makes the typing faster, not the judgment. Every generated line is untrusted input: reviewed, tested, and understood before it ships. I still own the architecture and the security.
AI Workflow
Where AI fits in my work, and how much I trust it at each step.
Most of my day runs through OpenCode: community skills and MCPs, plus custom ones tuned to my style and project layout. For end-to-end features I follow the same loop:
My first stop for infrastructure and architecture questions. I compare approaches and poke holes in trade-offs before committing.
I still write the sensitive parts by hand. Autocomplete makes the typing faster; the reasoning stays mine.
Experience
A career built across the UK, US, and Europe: media platforms, experimentation SaaS, live national events.
Jul 2023 — Present
Effective Experiments · United Kingdom · Remote
B2B experimentation & conversion optimization platform
2025
Saudi Esports Federation (SEF) Awards · Project · Contract, Remote
Official national gaming & esports awards ceremony
Jan 2021 — Jul 2023
Effective Experiments · United Kingdom · Remote
Frontend leadership through the platform's React era
Feb 2020 — Jan 2021
Aura Health · San Francisco · Remote
Mental wellness & mindfulness consumer platform
Jan 2019 — Feb 2020
Al.ta Cucina · Milan · Remote
Culinary media & social discovery platform
Timezone
I’m in Dubai (UTC+4), between Europe and Asia, with a few hours of overlap into the US East Coast. Drag the slider to see the day.
Base: Dubai, UAE (UTC+4)
Selected: 12:00 UTC·2 overlaps
Dubai
Base · UTC+4
16:00
Dubai: local time 16:00. Base timezone.London
GMT / BST
13:00
London: local time 13:00. Overlaps Dubai working hours.Berlin
CET / CEST
14:00
Berlin: local time 14:00. Overlaps Dubai working hours.New York
EST / EDT
08:00
New York: local time 08:00. Outside Dubai working hours.Singapore
SGT
20:00
Singapore: local time 20:00. Outside Dubai working hours.Tokyo
JST
21:00
Tokyo: local time 21:00. Outside Dubai working hours.100%
Full business day overlap; UTC+4 is only 2–4 hours ahead.
4–5 hrs
Live overlap from 13:00–18:00 UTC for standups and handoffs.
5–7 hrs
Morning and afternoon overlap throughout the Asian workday.