Client work

Two ways to hire us

We spend most of the year running our own products, which is exactly why you’d want us building yours. A few times a year we take on client work: full product builds, and a productized service for the app nobody at your company will make eye contact with.

Studio engagements

Product design and build, fixed scope

A small crew, the right tools for the job, and a scope that’s written down before anyone opens an editor. We run a floor of our own products, so we build like owners, not vendors — every decision gets the “would we want to operate this at 2am” test.

We take a few slots a year. Not as a scarcity tactic — the crew is small and the floor is demanding. Here is what an engagement actually looks like:

A real conversation

You tell us what you’re running and what you want built. We ask questions until we understand the business, not just the feature list. No discovery-workshop theater, no sticky notes on glass walls.

Fixed scope, fixed price, written down

One document: what we’re building, what it costs, when it ships. If the scope changes, the document changes — in writing, with a new number, before the work happens.

Weekly shipped software

Every week you get working software on a URL, not a status deck. You can click it, break it, and change your mind while changing your mind is still cheap.

Launch with an exit ramp

You get the code, the runbooks, the docs, and the deploy pipeline. You own everything. Any competent developer can pick it up cold — we consider that a design requirement, not a courtesy.

Optional: we stay on retainer

If you’d rather keep the crew that built it, we offer monthly maintenance and iteration. Optional is the operative word — the exit ramp in step four is real, not decorative.

The flagship offer

Code Rescue

Your app outlived its developers. It still makes money. Nobody wants to touch it. We do.

Somewhere in your company is an app that processes real revenue on a runtime with a retirement party in its past. The person who understood it left. The person who replaced them left. Deploys happen from one laptop, on faith. We’ve stabilized apps like this enough times to turn it into a process with names and prices, which is what follows.

The Diagnostic

$4,500 flat · one week

A full audit of where the app actually stands, delivered as a written report with a prioritized, priced plan.

  • Version gap mapped, upgrade path costed
  • Security-patch exposure, itemized
  • Test reality vs. coverage theater
  • Deploy path and bus-factor assessment
  • A plan yours to execute with anyone — including not us

Stabilize

2–4 weeks

The groundwork that makes every later change safe. The app stops paging you.

  • CI green — and trustworthy, which is the harder half
  • Reproducible deploys from something other than one laptop
  • Error tracking with an inbox someone actually reads
  • Backups verified the only honest way: by restoring one

The Upgrade March

Scoped from the Diagnostic

Version-by-version upgrades, shipped to production as we go.

  • Dual-boot technique: old and new versions run side by side
  • Every step reversible, every step deployed
  • No big-bang rewrite. Ever.
  • The app keeps making money the entire time

The Retainer

Monthly · fractional

Ongoing maintenance from a human who already knows the codebase.

  • Dependency and security patching, on schedule
  • Small features and fixes as they come up
  • No re-onboarding tax when something breaks
  • Cancel anytime — the documentation makes that survivable
The promises. No rewrites by default. Every step reversible. We document as we go, not as a deliverable at the end. And we quit-proof your app — including against us. If we get hit by a bus, your app shouldn’t notice.

Next step

Tell us what you’re running

A two-sentence email is enough to start. If it’s a rescue, tell us the version number — we promise not to gasp.

Start a project