What I deliver
Services say what I do; this page says what you hold afterwards. Every engagement ends in something you can point at: a report, a running server, a release pipeline, a document in your repository. Twelve of them, each with a fixed shape.
AI Integration
Agents, custom skills, MCP servers, RAG over your data. One use case to production.
Integrations
Systems that talk to each other reliably: bookings, payments, ERP, mail.
Full-stack Build
Design, architecture, backend, front end, API, hosting: a new application built end to end.
Modernization
PHP, framework, database, web server and hosting brought up to date, while the system keeps running.
Android App
Kotlin and Jetpack Compose, on your API or a new Laravel backend.
Health Check
Two-day assessment: automation opportunities, risks, a step-by-step plan.
Security Assessment
Vulnerability assessment or application pentest, with a retest.
Architecture Review
Options compared, a written recommendation, decision records.
Hardening and Secure Pipeline
Attack surface closed, security gates in CI, backups that restore.
Maintenance Retainer
A monthly hours block: patches, monitoring, small changes, a report.
Compliance Alignment
NIS2, GDPR and DORA: gap analysis, remediation, evidence.
Handover Pack
Runbook, architecture, decisions, accounts, risks. Yours to keep.
What stays in your repository
Deploy, roll back, restore, rotate a secret, add a user. Tested by following it.
The old behaviour pinned before anything moves, the new behaviour proven after.
Why it is built this way, so nobody undoes a good decision by accident.
Lint, static analysis, tests, security gates. Nothing merges when they fail.
Uptime, disk, certificates, failed jobs, to one phone.
Servers, domains, repositories, model keys. You own them from day one.
Brands I have built for, tools I build with
In employment at agencies and product companies before 2024, and as a freelancer since. The tools are the ones in daily use, not a wish list.
Phalcon to Laravel, module by module
Phalcon to Laravel, module by module, while the platform stayed in daily use. No big-bang switch, no rewrite from scratch.
Read the case study → Own product · household inventoryAn API that AI assistants can use: Laravel, Android and an MCP server
The same API serves the Android app, the admin panel and any AI assistant, through one MCP server with named tools.
Read the case study → Own product · voice assistantA small model trained for one job: a wake word
A large model is the wrong tool for listening all day. A small one, trained for a single word, runs on the phone and costs nothing per hour.
Read the case study →Which of these is missing on your side?
A runbook nobody wrote, a restore nobody tested, a pipeline that does not exist yet. Name it and I reply within one working day with what it would take, free.