AI Application Engineer

Your AI feature needs to survive production, not just demo day.

The model call is the easy part. I build the orchestration, cost control, billing and infrastructure around it, the part that keeps your feature alive when real users hit the API and the demo is long over.

Virko Kask
10+
products shipped
10+ yrs
production

Why most AI features stall

The demo works. Then production happens.

Getting a model to answer is the easy 10 percent. The other 90 percent, the orchestration, cost control, retries and uptime that keep it alive under real users, is where most AI features stall.

I have been the engineer in the room when the demo worked and the deploy failed. I have shipped the other 90 percent, more than once.

Selected work

Three AI features I shipped into production, and what each one took.

Each one started as a prototype that worked in a demo. Each one had to survive real users, real cost and real uptime. Here is what that took.

Solo, end to end

Typeza

A production AI SaaS built alone, from database to App Store.

Problem

Most AI features die between the demo and production. Building a full AI SaaS solo means owning the whole chain, not just the model call: the async pipeline, the billing, the mobile app, the infrastructure that survives a deploy.

Approach

Each analysis fans out 15 LLM calls at once through a Celery and Redis pipeline, then a consensus step weighs whatever returns instead of failing on a slow model. Real-time transcription runs over WebSockets. React web, native SwiftUI iOS, Stripe and Apple IAP, all on AWS ECS managed with Terraform.

15
parallel LLM calls per analysis
< 3 min
end-to-end processing
4
ECS services, 100% Terraform
DjangoCeleryRedisOpenRouterReactSwiftUIAWS ECSTerraform
Architecture
React / iOS
client
Django API
DRF
enqueue
Celery + Redis
task queue
fan-out
LLM call x15
OpenRouter
15 parallel calls, < 3 min
weigh
Consensus
partial-tolerant
Report
structured
WebSocket
live transcript
Stripe + Apple IAP
billing
AWS ECS x4 + Terraform
infra

Lesson

The model call is one line of code. Orchestration, partial-failure handling and billing are the actual product.

View it live: typeza.ai
Explainable AI

SiftFirst

AI screening where every score has to point at the line that earned it.

Problem

A job post now draws 200+ applications and most of them are AI-written. A small team without an HR function cannot read that pile. But a ranking they cannot explain is worse than no ranking at all, because it is a hiring decision nobody can defend afterwards.

Approach

The owner sets the rubric, up to twelve criteria, and candidates are scored against that rubric rather than the model's own idea of a good hire. Every criterion has to come back with a quote from the resume that earned it, enforced by the output schema, so a score with no evidence fails validation instead of reaching the user. A pile of up to a thousand resumes runs twelve at a time with per-candidate retries, so one malformed PDF is skipped and reported rather than killing the run, and progress streams while it works. A separate pass flags resumes that read as AI-written, and an eval suite with a fixed dataset keeps prompt changes honest.

1,000
resumes in a single run
12
scored in parallel, each retried
100%
of scores carry quoted evidence
DjangoDRFClaudeOpenRouterPydanticPostgreSQLReactRailway
Architecture
Job description
pasted or uploaded
Rubric
up to 12 criteria, human-set
scored against the rubric, not the model's taste
Resume pile
up to 1,000 per run
fan out
Score + cite
AI-resume check
12 at a time, each retried
schema rejects a score with no quote
Ranked shortlist
evidence per criterion
Human decides
always
Re-weight criteria
instant re-rank
Streamed progress
scored / total
Skipped, not fatal
bad PDF reported
Eval suite
dataset + baseline

Lesson

A ranking nobody can question is a liability, not a feature. Forcing every score to cite its evidence is what made the output defensible, and it gave the eval suite something concrete to measure.

View it live: siftfirst.com
High-stakes AI

PrepDoc

A dual-LLM consensus engine for personalized health reports.

Problem

In health AI, a single model answering with confidence is a liability. The report cannot invent a supplement interaction that does not exist, or miss one that does. One opinion is not enough to stand behind.

Approach

Two models, Claude and Grok, analyze the same data independently, then challenge each other across three rounds. Agreements become the report. Disagreements are shown to the user honestly, with each model rating, instead of being papered over. Seven API calls per report, streamed over SSE, with hourly spend caps so a bug cannot drain the budget.

7
API calls per report
$2 to $4
compute cost per report
~90%
margin on AI compute
FastAPINext.jsClaudeGrokSSEStripePostgreSQL
Architecture
Upload + survey
intake
FastAPI
async backend
dispatch
Claude
Grok
2 models, independent
3 rounds
Debate
challenge + revise
Consensus + diffs
honest disagreement
SSE
Report
$2 to $4 / report
Spend caps
hourly guardrail
Stripe webhooks
fulfillment
Next.js
streaming UI

Lesson

One model gives you an answer. Two models give you a confidence level. The disagreements turned out to be the most valuable output.

View it live: prepdoc.ai
Reliability

VenomAnalytics

A daily sports data pipeline that has run untouched for a year and a half.

Problem

Data products do not fail on the clever parts. They fail on the boring ones: the API that changes shape, the run that silently stops, the tab limit nobody planned for. Reliability is the feature.

Approach

Scheduled cron jobs pull three sports data sources every day, score batters over a rolling 14-day window and publish rankings to a Next.js dashboard. No server to babysit, and the job cleans up after itself so it never hits a storage limit.

18+ mo
in production
0
maintenance, zero incidents
3
data sources, daily
PythonStatcast APIMLB Stats APICronNext.jsPostgreSQL
Architecture
Statcast
MLB Stats API
Weather
3 sources, daily
ingest
Scoring engine
14-day window
Rankings
daily output
Cron jobs
scheduled, no server
Next.js dashboard
public view
18+ months
in production
0 maintenance
zero incidents

Lesson

Boring is good. Reliability is not luck, it is a design choice: jobs that clean up after themselves, fail loudly, and never need a human at 2am.

View it live: venomanalytics.io

How it works

Three steps from idea to production.

You know the price and what you own before you commit a dollar. And if it is not a fit, you find out fast, not after a three-call sales process.

1

Technical fit assessment

Email me the feature you want to build, your stack and your timeline. You get a written assessment: whether I am the right fit, the main risks and a rough scope. No sales call required.

2

Fixed scope or retainer

If it is a fit, I send a proposal: a fixed price for defined features, or a monthly retainer for ongoing work. With it, a statement of work and exactly what you own at the end.

3

Build and ship

I build with weekly updates, so you are never in the dark. When we ship, you own the code, the infrastructure config and the docs to maintain it. No lock-in.

Working together

Rates are public, so you can self-select.

You need senior-level AI engineering without a $150k full-time hire or a slow agency. These rates make that math work, with proper contracts and clean invoicing in USD or EUR.

Backend development

$80/ hour

Python APIs, async pipelines, data systems, infrastructure. Django or FastAPI.

Most requested

AI / LLM integration

$120/ hour

Multi-model pipelines, consensus engines, streaming, cost control. The part that survives production.

Project minimum

$5,000fixed

Smaller than that is rarely worth the ramp-up for either of us.

Productized

AI Report Engine

Questionnaire or upload, an LLM pipeline, then paid personalized reports. I have built this exact shape three times in production. Live in three weeks.

from $8k
fixed scope

Not a fit

  • I integrate models, I do not train them.
  • No WordPress.
  • No pure frontend work.

Proof

Track record, not adjectives.

Live products are a stronger signal than any portfolio copy. Behind them: 10+ years of shipping production code that stays shipped.

100%
positive client outcomes
25+
projects delivered, on time
6
products built solo, end to end
18+ mo
zero-incident data pipeline

EU-based independent contractor, invoicing through my own Estonian company. Proper contracts (MSA and SOW), clean invoicing in USD or EUR, W-8BEN-E on request, and no US withholding under the US-Estonia tax treaty. Based in Greece, so I overlap European hours in full and US mornings from my early afternoon.

What I reach for

PythonFastAPIDjangoTypeScriptReactNext.jsPostgreSQLRedisCeleryAWSTerraformDockerLLM APIsStripe

What clients say

In their words.

From clients and colleagues across the products and pipelines I have shipped into production.

"Always willing to help others and tackle tough problems to figure out solutions. Absolutely high respect to his work culture and attitude."
Mait MüntelCo-founder & Chief Scientist, Lingvist
Thank you for the quality of work throughout this engagement - the platform is clean, the flow works as intended, and the handover has been thorough and professional.
James Smith
Founder, RoleNorth
Great collaboration, highly recommend.
Jelecia Wilson
MLB scoring engine

Contact

Tell me what you want to build.

Send the AI feature you have in mind, your stack and your timeline. I reply within 24 hours with a technical fit assessment. Free, and no sales call required.

Async-first. I will tell you honestly if it is not something I should build.