Back to Blog

Shipping an MVP in 15–20 Days with AI Coding Agents: The Soaiverse Playbook

How Soaiverse ships a working MVP in 15–20 days: scoping to one vertical slice, a day-by-day cadence, what we hand to AI coding agents, what stays with senior engineers, and what goes wrong.

A
Admin
·8 min read
Branded illustration of a 20-day calendar with a senior engineer and an AI coding agent building a product together, titled Shipping an MVP in 15–20 Days with AI Coding Agents.

Why 15–20 days is a real number, not a slogan

Shipping an MVP in 15–20 days with AI coding agents is how we build most products at Soaiverse. It is not a stunt schedule. It is what happens when scope is cut to a single vertical slice, a senior engineer owns every decision that is hard to reverse, and coding agents absorb the work that used to fill the middle of a sprint: scaffolding, tests, migrations, boilerplate, and documentation.

The calendar is the forcing function. A three-week window makes "we will decide later" impossible, and that is the point. Most MVPs fail not because the team was slow but because they built the second and third feature before the first one had a user.

This post is the playbook we use. It covers how we scope, the day-by-day cadence, which tasks we hand to agents and which we do not, what "done" means at the end, and the ways it goes wrong.

Scope to a thin vertical slice

An MVP built in this window has exactly one job: let a real user complete one valuable action end to end. Everything else is a stub, a manual process, or a line in the backlog.

We write the slice as a single sentence before anything else. For an interview-practice product like 99interview.com, the slice reads roughly "a candidate uploads a resume, takes a mock interview, and receives a scored transcript". For a safety product like SafePing.io, it is closer to "a user sets a check-in schedule and a contact is notified when a check-in is missed". Billing, admin dashboards, analytics, and settings pages are not in the slice. Auth is, because the action does not exist without an identity.

The test for whether something belongs in the slice: if it is removed, can the user still complete the action? If yes, it is out. This is harder than it sounds because engineers want to build the thing properly and founders want to show the whole vision. Both instincts are good, and both should wait until week four.

The slice also determines the data model, which is the most expensive thing to change later. We spend the first day on the model even though it feels slow, because every table added in week three under time pressure is a migration debt we will carry for a year.

The day-by-day cadence for shipping an MVP with AI coding agents

The cadence below is what a typical 18-day build looks like for a Next.js and PostgreSQL product with one senior engineer, a designer at part capacity, and coding agents.

Days 1–2: decisions, not code

  • Write the slice sentence and the list of things explicitly out of scope.
  • Design the data model on a whiteboard, then in the Prisma schema. Review it with the founder using their vocabulary, not ours.
  • Choose the stack, hosting, auth provider, and any third-party APIs. Boring choices win; there is no time to learn a new framework.
  • Agree on the definition of done (below) in writing.

Agents write nothing in this phase except perhaps a summary of the decisions. The architecture and data model are human decisions because agents optimise for the prompt in front of them, not for the change you will need in month six.

Days 3–5: skeleton and walking path

The goal by the end of day five is an ugly, working path through the whole slice. Real database, real auth, real deploy, placeholder UI.

Here the agents earn their keep. Given the schema and a short description of each route, an agent can scaffold API route handlers with Zod validation, generate the migration, write the first pass of integration tests against a test database, and produce the seed script. A senior engineer reviews every file, but reviewing ten scaffolded files is an hour; writing them is a day.

We deploy to production hosting on day three, not day fifteen. A pipeline that has run fifty times before launch is one fewer thing to fear.

Days 6–12: the slice, properly

This is the bulk of the build. Each day picks one or two user-visible steps in the slice and takes them from ugly to shippable: the real UI, error states, empty states, the edge cases the founder mentioned in passing.

Work is split by reversibility. Anything easy to change later (component styling, copy, test coverage, a helper function) goes to an agent with a tight brief and gets reviewed. Anything hard to change later (how sessions are stored, how money is represented, what is public versus private in the API) is designed by the engineer, even when an agent types it.

Every merged change runs the full test suite in CI. Agents are prolific at writing tests when asked; the engineer's job is to delete the ones that test nothing and add the ones that test the money path.

Days 13–15: hardening

  • Security review of every route: authorisation checks, input validation, rate limits on public endpoints, secrets out of the repo. When the product calls a model, we add the OWASP Top 10 for LLM applications as a second checklist.
  • Performance pass on the two or three pages that matter, measured against Core Web Vitals rather than gut feel.
  • Logging, error tracking, and a health endpoint, so the first production incident is diagnosable.
  • Backup and restore actually tested once.

Days 16–18: real users and buffer

Five to ten real users, watched closely. Not a launch, a rehearsal. The buffer exists because something in the hardening phase always surfaces a decision from day one that was wrong, and fixing it properly takes two days.

If the buffer is not needed, we do not fill it with features. We ship early.

Where agents help and where humans decide

The line is not "agents write code, humans review". It is closer to "agents do the reproducible work, humans make the irreversible calls".

Agents are reliably good at:

  • Scaffolding routes, forms, and components from a schema and a pattern that already exists in the repo.
  • Writing migrations and the matching rollback.
  • Generating tests from a described behaviour, including the tedious edge-case tables.
  • Keeping documentation and API references in sync with the code.
  • Refactors that are mechanical but wide, such as renaming a concept across forty files.

Humans decide:

  • The data model and its invariants.
  • Service boundaries and what talks to what.
  • Anything involving money, identity, permissions, or personal data.
  • Which third-party dependency to trust.
  • When the slice is done.

Anthropic's guidance on building effective agents makes a related point: the most reliable systems are simple, composable workflows with clear checkpoints, not autonomous loops that run unattended. Our version of that is a senior engineer reading every diff before it merges, with no exception for "small" changes.

Definition of done

Done is written down on day one and does not change. Ours, for a typical MVP:

  • A new user can complete the slice on production without help from us.
  • Every route validates input, checks authorisation, and returns the agreed error shape.
  • The test suite covers the slice end to end and runs green in CI on every commit.
  • Secrets live in the environment, not the repo, and the database has a tested backup.
  • Error tracking and a health check are live.
  • The README lets a new engineer run the project locally within an hour.
  • The founder has a short written list of what was deliberately left out and why.

Notice what is missing: pixel-perfect design, full test coverage, and the second feature. Those are for the next twenty days.

What goes wrong

Scope creep disguised as polish. "Just a settings page" is three days. We say no and write it down.

Agent-written code that looks right. The most dangerous output is plausible code with a wrong assumption baked in: a timezone, a currency rounding rule, an authorisation check that trusts a client-supplied id. Review for intent, not syntax. We wrote a separate post on our review workflow for AI-generated pull requests.

A data model chosen under time pressure. Every shortcut on day one costs a week in month three. Spend the day.

Skipping the deploy on day three. Teams that first deploy on day fifteen spend days sixteen to eighteen fighting environment differences instead of watching users.

Treating the buffer as feature time. It is not.

The DORA research on delivery performance keeps finding the same thing: small batches, fast feedback, and continuous delivery correlate with better outcomes, not just faster ones. A 15–20 day MVP is that research applied with a hard deadline and a coding agent in the loop.

Further reading

Share: