RL-00 / Independent engineering studio
Roman Levchenko
I design and ship production systems end to end — from architecture and AI pipelines to the pixels.
Senior full-stack engineer, 10+ years. I build AI-powered products with AI agents on the team — and the guardrails to match.
EU-based · Full UK overlap · 4+ h US East
- TypeScript
- React
- Next.js
- Node.js
- NestJS
- PostgreSQL
- LLMs
- Web3
RL-02 / Approach
How I work
- 01
Architecture first
Boundaries, contracts and data flow are settled before the first component. Every decision lands in an ADR with its reasons.
- 02
Typed end to end
Zod contracts generate the OpenAPI spec that types the client. A stale contract fails CI, not production.
- 03
Decisions by numbers
Baseline first, change second. An engine change ships only when the benchmark says it is better.
- 04
Guardrails as code
Hooks, architecture tests and reviews make the right thing the easy thing, for people and for agents.
RL-03 / AI-native engineering
AI agents on the team, fenced in by guardrails
Agents write a lot of my code. Specs, hooks, tests and reviews decide what ships. On Tennis Expert, 522 commits are co-authored with Claude, and a headless agent reviews production logs every night.
- FlowSpec → plan → agents → review
- HooksUnsafe edits blocked before they happen
- SkillsThe architecture, encoded as playbooks
- MCPAgents read real state, prod read-only
RL-04 / Wins
Measured, not claimed
- Blockchain sync time on Polygon, after a finalized-head fix
- 42 s → 6 s
- Fewer rejected top matches after the matching-engine rebuild
- ~3×
- Lower LLM cost per matching run, with less than half the calls
- ~25%
- Automated tests on my own product, including contract invariants
- ~2,800
- Languages on my own product, with parity checked in CI
- 12
- Years shipping production web applications
- 10+
RL-06 / Stack
Tools I use in production
Frontend
- React 19
- Next.js App Router
- Angular
- TypeScript
- TanStack Query
- Zustand
- Tailwind
- shadcn/ui
Backend
- Node.js
- NestJS
- Express
- PostgreSQL
- Drizzle
- BullMQ / Redis
- Supabase
- GraphQL
Cloud and tools
- Google Cloud
- AWS
- Railway
- Fly.io
- Docker
- Turborepo
- Datadog
- Vitest / Playwright
AI and Web3
- Claude Code
- OpenAI
- Vercel AI SDK
- Embeddings / RAG
- Airflow
- Solidity
- viem / wagmi
- Thirdweb
RL-07 / Experience
Ten years, mostly production
- 2025 — nowLead engineer, matching engineAn AI recruiting platform (EU) · contract
- 2025 — nowSenior full-stack engineerA multi-brand live-shopping platform · contract
- 2025 — nowFounder, lead engineerTennis Expert · own product
- 2023 — 2025Full-stack engineerCuppa · contract
- 2022 — 2025Full-stack engineerLiveArt · contract
- 2020 — 2022Frontend leadResident
- 2017 — 2020Frontend leadPitchBook
- 2015 — 2017Full-stack developerIndependent projects