Cost caps, not surprises
Every AI or API endpoint I ship has a per-IP rate limit, a global rate limit and a daily cost cap in a Durable Object. The demo below trips its limit on the sixth click, on purpose.
This page is a Cloudflare Worker
served from CMH US · written in by HTMLRewriter
Workers, Durable Objects, R2, D1, Queues, Workers AI, rate limits, HTMLRewriter. Four of my side projects and this very page run on this stack. Scroll down and the page tells you which data center served it.
Available from November 2026 · Wrocław, Poland (CET), remote

Every AI or API endpoint I ship has a per-IP rate limit, a global rate limit and a daily cost cap in a Durable Object. The demo below trips its limit on the sixth click, on purpose.
Workers with static assets, R2 for generated images, Durable Objects for atomic counters, Workers AI for models, Cache API for expensive responses, HTMLRewriter for per-request HTML. Each one appears somewhere on ciunkos.com.
A help center moved from WordPress into the repo with 301 redirects for every old address. One server less to break during holidays.
CSP without inline scripts, nosniff, referrer and permissions policies, OAuth where it belongs. Same-day response to advisories, with a WAF rule while the patch ships.
Proof
Problem, what I did, result. Client names only where I am allowed to use them.
See also: AI & agents · Maintenance & CI/CD
See also: AI & agents
See also: Next.js · Maintenance & CI/CD
One foot in the door
Two ways to see how I work before you commit to a sprint. Fixed scope, a number in writing after a short call.
I read the repo, CI, tests, security and the parts the team avoids. You get a written report with findings ranked by risk, a plan with milestones and a go or no-go you can defend. I have run this for a large software house before its clients saw the code.
Send me the diff that worries you. Within a few days you get line-level comments, the three things I would change first and whether I would merge it.
Live demo
The data center code and country above were written into this HTML by the Worker with HTMLRewriter before it left Cloudflare. The panel below asks the Worker a few more things: TLS version, round-trip time, a Cache API hit and a rate limit that bites.
Demo loading…
Click “Fetch twice” and compare the timings. Then hammer the rate limit button and watch the 429 arrive with a Retry-After header.
How it works
You describe the product and the problem. I ask the questions I would ask on day one. If I am not the right person, I say so and point you to someone who is.
A short written plan follows: what we build first, what we measure, how we work together and what it costs. No slide deck.
The first slice ships in the first week: deployed, measured, reviewable. From there the work is paced by what the numbers say.
Fit check
Working style
A bug is fixed or consciously closed, never parked. Alerts and error tracking in every project, so I learn about problems before the client does.
Claude Code and Codex work on main with hooks, lint and test gates. The model suggests, the criteria decide. Every PR gets a human review and AI-assisted content is disclosed.
PostHog in every project from day one. A tracking plan per feature and dashboards leadership actually reads.
FAQ

A free 30-minute call. You bring the problem, I bring questions. No prices on this page because scope comes first.
If I am the wrong person I will say so on the call and point you to someone better.
After you book: a calendar invite, then the call. Nothing else to fill in.
Available from November 2026 · B2B contract or employment · Wrocław, Poland (CET), remote