MVP in a week, production in two. I lead a team of AI coding agents and the system that checks every change they make. For my latest two services, that was 180,000+ lines of code and tests in four weeks.
🟢 Open to projects and remote roles · UTC+3
Projects
Each card: the problem it solves and the result. Open a card for the demo and the engineering details.
5 people → 1 operatorProductionLinkBuilder: link building on autopilotFinds sites, writes to webmasters, negotiates with AI drafts, pays and keeps every link live — the work of a team of five, run by one operator.Python · FastAPI · PostgreSQL · Redis/RQ · React/TS
The problem: link building eats people. Finding sites, writing to webmasters,
haggling, paying and checking links took a team of five.
The result: in production, one operator ran the whole cycle — with no handoffs
between people.
Outreach at scale: letters go out in controlled batches; replies land in one inbox with the deal stage and its owner
AI drafts, people decide: a draft that breaks the rules — like offering money after the webmaster said the budget is frozen — is blocked, not sent
Links that stay bought: every placement is re-checked; a lost link becomes a ticket and a letter asking for it back — after a second check, because nearly one “dead” link in five turned out to be alive
Money under control: payment requests go through the service desk, with spend meters and alerts before a balance runs dry
Enterprise-grade: 11,000+ automated tests, three user roles, 137 database migrations — built by one engineer with AI coding agents, under the quality contour
12,000+ emails sent, 97.9% delivered on a 5,400-recipient campaign
[✓] Built-in safeguard
No AI letter goes out unchecked: every draft is tested against ten written rules — budgets, payment terms, the language of the reply — before a person sees it, and an admin can switch the checks live, without a restart.
2 services live in under 3 weeksProductionQuality contour: senior-team standards for AI-built softwareThe quality system behind every service I ship: AI coding agents write at team speed, and automatic checks on every change hold the result to the level of a senior engineering team.Python · Bash · pre-commit · GitHub Actions · dependency-cruiser
The problem: AI coding agents are fast — and happily report “done” on things
nobody checked. That is how prototypes end up in production.
The result: software built at AI speed and checked like a corporate product. Two
services for an SEO agency went from a bare spec to production in under three weeks,
in parallel.
22 automatic checks on every change — tests, code quality, architecture, security; nothing merges while a check is red
The checks are checked: a “doctor” plants a known mistake in front of every check — a check that stays silent is flagged as broken
Lean on purpose: the number of checks is capped; a new one comes in only by replacing an old one
Proven in the field: runs in eight repositories, including this site; every missed problem is logged together with the check that should have caught it
A written rulebook behind it: 22,000+ lines across four documents — searchable through my RAG desk
[✓] Built-in safeguard
Only what a mechanism can reject counts as done: a gate that cannot turn red is treated as broken.
Every confident fact quotedLocal demoLocal Web Agent: competitor research in minutesGive it a few links and a question — it reads the real sites, compares them, scores each one and shows the quote behind every confident fact. Runs on your laptop.Python · FastAPI · Playwright · Ollama · Qwen3 14B
The problem: comparing competitors by hand means hours of clicking through sites
and copying notes nobody double-checks.
The result: one question in — a scored comparison and a winner out, with a quote
behind every confident fact.
Reads the real web: opens each site in a real browser and finds the pages that matter
A verdict you can act on: every site is scored on the same criteria, side by side
Proof, not guesses: a confident fact must match a quote on the page, or it is dropped; it also says what it didn’t read
Safe on live sites: fills in forms itself but stops before paying; captchas are left to a person
Private and open: all AI runs on the laptop; 451 automated tests; the code is public
[✓] Built-in safeguard
Every action is checked against 14 hard rules before it reaches the browser, and anything that can’t be undone — like paying — waits for a person.
100% offlineLocal demoVoice agent: talks in real time, works offlineAn AI you talk to by voice — shown here as Henry, an English job interviewer. The same engine can run a support line, a booking assistant or a voice bot for your chat.Python · FastAPI · WebSocket · whisper.cpp · Ollama▶
The problem: voice AI usually means a cloud bill, a pause that kills the
conversation, and your data on someone else’s server.
The result: a voice agent that holds a real conversation on one laptop — here, a
mock job interviewer.
Feels like a conversation: it answers within about three seconds of your last word, sentence by sentence
Smart, not chatty: it knows the context, asks about what you actually said, and handles side requests — “slower, please”, “where do I start?” — without losing the thread
Rules it can’t be talked out of: English only, no scores mid-interview, three sentences at most — checked in code before every sentence
Useful afterwards: a written review with five scores, what to fix and better versions of weak answers
Built to last: 205 automated tests covering 95% of the code
The same engine can become a support line, a booking assistant or a voice bot for
your chat — offline, or with the data kept in-house.
[✓] Built-in safeguard
Every sentence is checked before it is spoken: English only, no scores during the interview, three sentences at most.
680 answers, 0 without an addressLocal demoAnswers from your documents — with the sourceAsk your company’s documents a question and get an answer with the exact file and section — or an honest “not covered” instead of a made-up reply.Python · Ollama · qwen3:8b · bge-m3 · BM25
The problem: a team asks the same questions about internal rules, and a chatbot
that guesses is worse than none.
The result: a search desk that answers only from your documents and shows where
each answer came from.
Checkable answers: an answer names the file and section it came from — open it and the same words are there
Knows its limits: a question the documents don’t cover gets “not covered”, not an invention
Measured, not assumed: tested on 314 independent questions, with the weak spots written down next to the strong ones
Private: runs on a laptop; no document leaves the building
Proven on a real rulebook: four documents, 110K tokens — the rules my own development follows
[✓] Built-in safeguard
A question the documents don’t cover stops at the gate: the AI never sees a line of them and answers “not covered”. Across 680 answers, not one came without an address — a real file and section, or “not covered”.