AI · Software Engineering · Vibe Coding, Deliberately, part one · Oct 2026 · 10 min read

Agile, Waterfall and the Vibe: Bringing SDLC Discipline to Vibe Coding

Apoorva JoshiAI Solution Consultant (Presales) · Product Manager

Vibe coding does not make the software development life cycle obsolete; it compresses it.

Requirements, design, build, test and release still happen, but now they can happen inside a single afternoon conversation with an AI agent. The teams getting real value from vibe coding are the ones that deliberately re-insert the discipline of waterfall and agile at the points where speed tends to erase it.

This article walks through what vibe coding is, why it has spread so quickly, how people are actually using it, where it collides with classic SDLC thinking, and a practical set of practices that borrow the best of both models.

What is vibe coding?

Vibe coding is building software by describing what you want to an AI model in plain language, running what it produces, and steering by feedback rather than by reading the code. The human acts as director; the AI acts as author.

The term was coined by Andrej Karpathy, OpenAI co-founder and former head of AI at Tesla, in a post on X on 2 February 2025. He described giving in to the vibes and forgetting the code even exists: accepting every change without reading the diffs, pasting error messages straight back to the model, and asking for tweaks by voice. Tellingly, he framed it as fine for throwaway weekend projects. Within months the phrase had escaped its origins, and Collins Dictionary named it its Word of the Year for 2025.

It helps to separate two things that often get lumped together:

Most organisations say "vibe coding" and mean something on a spectrum between these two. The rest of this article is about moving deliberately along that spectrum.

Why it is catching on

Vibe coding spread because three curves crossed at once: models got good enough, tools got agentic enough, and the cost of trying became close to zero.

  1. Model capability. Current models can hold a whole feature, its spec, relevant code, tests and conventions, in context and work across many files in a single session. Two years ago they mostly completed lines.
  2. Agentic tooling. Tools such as Cursor, Claude Code, GitHub Copilot's agent mode, Replit and Windsurf no longer just suggest code; they run it, read the error, and try again. That loop is exactly what Karpathy was describing.
  3. Democratisation. Product managers, analysts, operations staff and founders can now produce a working prototype without waiting for an engineering queue. Some CIOs are actively enlisting business users to build their own tools.
  4. Speed to a demo. An MVP that once needed a sprint can be shown in a day. In a world where a demo wins budget, that is a powerful incentive.
  5. It is fun. The feedback loop is immediate and the barrier to starting is gone. Developers in surveys report high satisfaction even when objective productivity gains are mixed.

The adoption numbers reflect this. Industry trackers aggregating 2026 surveys describe AI coding tools as having moved from experiment to enterprise standard in roughly 18 months, and Gartner projects that the large majority of enterprise software engineers will use AI code assistants by 2028. One survey cited in academic work found three-quarters of respondents already using vibe coding, nine in ten of them satisfied with it.

The recurring theme in almost every one of those reports, however, is the same: adoption is running well ahead of governance.

How organisations and coders are vibe coding

In practice, vibe coding shows up in five recognisable patterns, each with a different risk profile.

PatternWhoWhat they buildTypical risk
Weekend and side projectsIndividual developers, hobbyistsPersonal apps, games, scripts, automationsLow: the blast radius is one person
Prototypes and MVPsFounders, product managers, innovation teamsClickable demos, proofs of concept, investor buildsPrototype quietly becomes production
Citizen developmentAnalysts, ops and business usersInternal dashboards, workflow tools, data clean-upShadow IT, access to sensitive data, no owner
Developer accelerationProfessional engineering teamsBoilerplate, tests, migrations, refactors, new featuresUnreviewed code in shared codebases, security debt
Agent-led deliveryPlatform and AI-first teamsWhole features delegated to coding agents with specs and testsAgent drift, weak specs, review becomes the bottleneck

A few observations on how organisations are responding:

That last trend is the most telling: practitioners are reinventing SDLC structure from the inside.

Where vibe coding collides with waterfall and agile

Vibe coding looks agile on the surface, with short loops, working software and constant change, but it quietly drops the parts of both models that exist to manage risk.

Waterfall assumes you know what you are building before you build it, and that each phase produces a signed-off artefact. Agile assumes requirements will change, but insists on small increments, a definition of done, team ownership and continuous feedback from real users. Pure vibe coding honours neither assumption fully.

SDLC principleWaterfallAgilePure vibe coding
RequirementsComplete and signed off up frontBacklog of user stories, refined continuouslyLives in the prompt history; rarely written down
Design and architectureFormal design phase before buildEmergent, but guided by team standardsEmerges from whatever the model chose; often inconsistent across sessions
Unit of changePhaseSmall, reviewable incrementLarge, multi-file diffs accepted wholesale
Definition of donePasses formal test phaseMeets acceptance criteria and team DoD"It runs and looks right"
TestingDedicated phase, independent testersAutomated tests in every sprintValidation by clicking around
Code reviewInspection gatesPeer review on every changeSkipped: the diff is not read
DocumentationHeavy, produced per phaseLight but deliberateUsually none
OwnershipDefined roles and sign-offsTeam collectively owns the codeNobody fully understands the code
Change controlFormal change requestsReprioritised each sprintContinuous, untracked

The consequences are now measurable:

None of this means the old models were right and vibe coding is wrong. Waterfall's big up-front design is too slow for exploratory work, and agile's ceremonies were built around human typing speed. The task is to keep the intent behind each principle while changing its form.

Applying waterfall and agile principles to vibe coding

The workable model is a hybrid: waterfall discipline at the bookends, agile cadence in the middle, and vibe-style speed only inside a tightly bounded build loop.

Vibes stay inside a gated, test-first loop Waterfall: defineAgile + vibe: buildWaterfall: release Specgoal, criteria, limits Planagent drafts, human OKs Tests firstfrom the criteria Vibe buildagent codes one slice Review and scandiff read, CI checks repeat per slice Release gatereview scaled to risk Retrolearn from misses retro updates the spec and agent rules
Specification and planning gate the start, each slice runs test-first with a human reading the diff, and a release gate plus retro close the cycle.

What to borrow from waterfall

Waterfall's enduring insight is that the cheapest place to fix a mistake is before it is built. With AI agents that insight becomes stronger, not weaker, because an agent executes an ambiguous instruction literally and confidently.

What to borrow from agile

Agile's insight is that you learn by shipping small things and inspecting them. Vibe coding already has the short loop; what it lacks is the inspection.

Scale the process to the blast radius

Not every vibe-coded artefact needs the same rigour. A risk-tiered approach keeps the speed where it is safe and the discipline where it matters.

TierExamplesRecommended process
1 · ThrowawayPersonal scripts, spikes, weekend experimentsPure vibe coding is fine; delete or rewrite before reuse
2 · Internal, low-riskTeam dashboards, internal tools with no sensitive dataShort spec, tests for core logic, one peer review, named owner
3 · Shared or business-criticalCustomer-facing features, shared libraries, integrationsFull spec-driven flow, test-first, mandatory human review, SAST and secret scanning in CI
4 · Regulated or high-impactPayments, identity, personal data, safety-relevant systemsAll of tier 3, plus architecture and security sign-off, independent testing and an audit trail of AI involvement

Best practices for vibe coding

The practices below turn vibe coding from a gamble into a repeatable engineering habit. They apply whether you are a solo builder or a team lead.

Before you prompt

  1. Decide which tier you are in. Be honest about whether this will ever touch real users, real data or real money. Prototypes have a habit of becoming production.
  2. Write the spec first. One page is enough: goal, users, acceptance criteria, constraints, out of scope. Iterate on the spec, not on prompts.
  3. Set up agent rules. Keep a CLAUDE.md / AGENTS.md or equivalent with architecture, coding standards, approved libraries, and security rules (no secrets in code, parameterised queries, authorisation on every endpoint).
  4. Ask for a plan, then approve it. Have the agent outline files, components and steps before it writes code. Correct the plan, not the output.

While you build

  1. Work in small slices. One task per session; commit after each passing step so you can roll back cleanly.
  2. Tests before code. Ask for failing tests derived from the acceptance criteria, read them, then let the agent make them pass.
  3. Read the diff. At minimum, skim every change for things you did not ask for: new dependencies, disabled checks, hard-coded credentials, deleted tests.
  4. Keep the human in the architecture. Let the agent choose variable names, not trust boundaries. Decisions about data flows, authentication and integrations stay with a person.
  5. Reset context when it drifts. Long sessions accumulate confusion. Start a fresh session from the spec and current code rather than arguing with a confused agent.

Before you ship

  1. Automate the safety net. Run static analysis, dependency and secret scanning in CI on every AI-generated change; the research shows prompting alone does not make code secure. It is the same principle behind Attic, my Gmail cleanup agent: the LLM only proposes actions, and fixed server-side guardrails decide what is allowed.
  2. Human review proportional to risk. Tier 3 and 4 changes need a reviewer who can explain the code, not just approve it.
  3. Document as you go. Have the agent update the README, spec and change log in the same commit. Documentation is now nearly free; skipping it no longer saves time.
  4. Assign an owner. Every vibe-coded app that survives past a demo needs a named person accountable for maintaining it.

For organisations

  1. Provide a sanctioned path. Approved tools with enterprise controls beat a ban that drives usage underground.
  2. Separate sandbox from production. Citizen developers build freely in a sandbox; promotion to production goes through review, as any other change would.
  3. Measure outcomes, not output. Lines of code generated is a vanity metric. Track lead time, escaped defects, security findings and rework.
  4. Invest in review skills. As agents write more code, the scarce skill becomes reading, specifying and testing it. Train for that.

Conclusion

Vibe coding has changed who can build software and how fast an idea becomes something you can click. That is a genuine shift, and organisations that ignore it will lose ground. But the software development life cycle was never really about typing code; it was about understanding the problem, agreeing what good looks like, checking that you got there, and being able to change it safely later. None of those needs went away when the typing did.

The principles of waterfall and agile still apply; they just move. Waterfall's discipline moves into the spec and the plan the agent works from. Agile's discipline moves into small slices, test-first loops and a definition of done that "it runs" cannot satisfy. Vibes stay where they belong: inside the build loop, and in the throwaway experiments where they shine.

The question is no longer whether to vibe code, but how much structure each piece of work deserves.

Answer that honestly, and you get the speed of the vibe with the reliability of engineering.

Sources

Let's talk

I'm open to roles in AI solution consulting (presales) and product management.