11 Mar 2026 · 5 min read
What I hand a client on Friday
Brief, Build, Handoff — the engagement as a folder: URLs, runbook, credentials map, and the brief marked done.
Clients do not hire a vibe. They hire a Friday.
The engagement at this studio is three words: Brief, Build, Handoff. I put them on the home page because they are the product as much as the apps. This is what each word means when the invoice is real, and what I actually put in the handoff folder when the week ends.
Brief: write the job so it can fail a test
A brief that cannot be failed is a mood board. I want a page that says:
- The user and the job. “A job seeker who will not complete twenty applications this week” is a brief. “AI-powered synergy” is not.
- Done. A URL, a workflow, a number. “ATS score visible on the tailored resume” is done. “Feels premium” is not.
- Out of scope, with teeth. If auto-apply is not in this slice, it is named. Scope that is only implied will be demanded on Thursday.
- Stack. Not a playground. The smallest set that ships the job. Next.js, a database, a worker if something is slow.
- Constraints: budget of time, compliance, whose inbox we are allowed to touch.
I will delay a start date to finish this page. I have never regretted that. I have regretted every project that started on a call and a Figma.
The brief is a shared document, not a performance. The client can mark it wrong. That is the point. We are trying to disagree on paper before we disagree in production.
Build: a URL by the end of the week
I do not report in percentages. I report in URLs.
Week one should produce something a stakeholder can tap on a phone. For Agatha that was an upload and a parsed profile, not a landing page about the vision. For SupportIQ that was a chat pane on a crawled fixture, not a sales site for the chatbot. For Velo that was a product grid with real fields, not a theme.
Cadence I actually run:
- A live preview, always. Staging is not a luxury.
- A written delta: what landed, what moved, what is blocked. Short. No burndown theatre.
- Decisions in the repo or the brief, not in a chat that will be lost.
If a week has no visible change, I say so. Silence is how projects become “still polishing.”
I work in slices that match the loop. Career platform: parse, then match, then tailor, then apply. RAG: crawl, then retrieve, then generate, then cite. Storefront: catalogue, then product, then cart. Vertical slices beat layers. A perfect API with no UI is not a Friday artefact.
What “quality” means in week three
I am not precious about pixels in week one. I am precious about:
- The happy path, on a phone.
- Empty and error states that tell the truth.
- Data that is real enough to make a bad schema obvious.
- No credentials in the client bundle.
Design tightens as the loop stabilizes. A membership site like Gymzest has to sell a package on a small screen. That is a week-two problem, not a week-six surprise.
I will push back on a feature that is really a second product. “Can the career agent also be the ATS for the employer?” is a new brief. I would rather say no than quietly grow a second app inside the first.
Handoff: ownership, not a zip file
Handoff is the part agencies skip because it is not photogenic. It is the part I sell.
The Friday folder, every time:
- Live URL and staging URL. With the exact account that owns the domain DNS.
- Repo access. Not a gist. History, issues, and the README that starts with “how to run.”
- Runbook. How to deploy, how to run the workers, how to re-crawl, how to retry a failed job. Commands, not vibes.
- Credentials map. Every secret, where it lives, who owns rotation. Never a screenshot of a
.env. A table: name, system, holder, last rotated. - Schema and fixtures. The profile JSON, the product type, the chunk table. Example rows.
- Eval or QA list. The twenty questions, the matcher fixtures, the merchandising checklist.
- What a human still does. The agent does not replace the support lead. The auto-apply does not replace the candidate’s judgement. Write it down so nobody pretends otherwise.
- The brief, marked done. Each “done” line ticked with the URL that proves it.
If an item is missing, the project is not handed off. It is paused. I would rather be late than leave a client with a black box they are afraid to touch.
Friday artefacts I will not accept from myself
- A Loom and no repo.
- A dashboard with no grain.
- A chatbot with no citations.
- A storefront the merchandiser cannot edit.
- A “we’ll add the runbook later.”
Later is how ownership stays with me. The point of hiring a studio is that it does not stay with me.
How this looks on a calendar
A typical slice, not a law:
- Days 1–2: brief locked, repo up, first URL.
- Days 3–8: the loop’s first real step on real-ish data.
- Days 9–12: the second step, plus the empty states.
- Days 13–14: hardening, runbook, credentials map, the demo that uses the production path.
If the work is larger, we repeat the two-week shape. We do not invent a six-month fog.
Working with me
I am remote, worldwide. I answer email. I do not vanish into a sprint tool. Upwork Top Rated, Fiverr Level 2, Jobberman open — those are the public marketplace signals. The private signal is the handoff.
If you want a collaborator who “explores,” I am a poor fit. If you want the thing shipped, reviewed on a phone, and left in a folder you can run in six months without me, hire me. The work on this site is the sample. The Friday folder is the standard.