Skip to content
Mithun Das
Writing

Agentic engineering//6 min read

From Vibe Coding to Executable Contracts: The 4 Levels of AI Developer Maturity

Enterprises are buying AI tools and tokens and expecting 10x throughput. What's missing is training — and a clear picture of the four levels teams move through on the way to spec-driven, agentic engineering.

Line drawing of the evolution of man, labelled with the four levels: The Assistant (inline autocomplete and boilerplate), The Babysitter (micro-prompting and file-by-file fixes), The Vibe Coder (unstructured conversational prototyping), and Spec-Driven Development (autonomous agentic SDLC).

Organizations around the globe are currently witnessing a fascinating paradox. Enterprise leadership is pouring millions into Claude Code, Codex, GitHub Copilot, Cursor, and raw LLM token allocations, expecting a 10x surge in engineering throughput. Yet, when you look under the hood, the reality on the ground looks very different.

Many engineers — including brilliant, highly experienced developers and QA specialists — are using these state-of-the-art AI systems in one of three ways:

  1. As an inline spellchecker for code boilerplate.
  2. In a "babysitting" mode, manually guiding an AI file-by-file or function-by-function.
  3. In a chaotic loop of "vibe coding" — feeding unstructured natural language prompts into an agent, accepting output that "feels" right, and burning thousands of tokens in trial-and-error debugging cycles when context inevitably collapses.

In my previous article, Beyond the Spec: How PMs and Engineers Must Cross-Skill in the Age of Agentic Dev, I touched on how the role of the developer and product manager is shifting toward Spec-Driven Development (SDD). But as I speak with engineers, business analysts and product managers across different organizations, one thing is clear: handing developers an AI tool without an operational framework is like giving someone a high-performance race car and expecting them to win F1 without driving lessons.

Token budgets are skyrocketing, context windows are being exhausted, and teams are spending more time resolving agent-induced technical debt than shipping features.

To bridge the gap between enterprise investment and actual delivery velocity, organizations must understand the 4 Levels of AI Developer Maturity — and shift their focus from buying tools to training teams.

The AI Engineering Maturity Curve

Where does your team sit on the maturity spectrum today?

Level 1: The Assistant (Inline Autocomplete)

  • What it looks like: The engineer uses AI primarily as an inline completion engine inside the IDE. It helps auto-fill repetitive boilerplate, write basic regex, or draft unit test cases.
  • The Reality: The developer remains the primary driver. The AI acts as a reactive autocomplete. It saves keystrokes, but it does not fundamentally alter delivery architecture or velocity.

Level 2: The Babysitter (File-by-File Micro-Prompting)

  • What it looks like: The engineer opens a chat panel and asks the AI to rewrite a single function, fix a syntax error, or generate a mock for a test file. The moment the AI touches two or three interrelated files, the developer takes back control, pastes snippets manually, and re-prompts.
  • The Reality: High friction and low leverage. Because the developer is managing state and context manually across files, the AI continuously loses context. Token spend ticks up rapidly due to repeated prompt-chat loops, while human time remains tied up in micro-management.

Level 3: The Vibe Coder (Unstructured Prototyping)

  • What it looks like: Coined by Andrej Karpathy, vibe coding involves asking an AI to generate entire features or apps from high-level conversational prompts, running the output, and iteratively prompting through errors without inspecting every line of code.
  • The Reality: Vibe coding is fantastic for weekend hackathons and throwaway prototypes, but it is catastrophic in enterprise production environments. Without strict technical boundaries, autonomous agents experience context drift, alter unrelated files, introduce subtle edge-case bugs, and burn thousands of tokens attempting to self-fix errors caused by vague requirements.

Level 4: The Spec-Driven Architect (Agentic SDLC)

  • What it looks like: Instead of diving straight into code or loose chat prompts, the engineer authors a structured Spec-Driven Development (SDD) contract (using tools like spec-kit or custom skills). This spec defines explicit boundaries, system constraints, API schemas, in-scope/out-of-scope rules, and acceptance criteria.
  • The Reality: The spec is fed directly to autonomous agent orchestrators (Planner, Coder, and QA agents). The agents plan multi-file edits, run local build/test suites, self-correct errors within the bounded spec, and present a complete Pull Request. The human engineer steps out of the line-by-line typing loop and steps up as an architect and stage-gate reviewer.

A note on the SDD workflow. In practice, true Spec-Driven Development isn't just writing a Markdown file; it is an iterative stage-gate loop: high-level intent → AI-drafted spec → human review → AI execution plan → human plan approval → agent code implementation → automated test gates → final PR. It is a deep topic that warrants an entire article of its own — stay tuned for a dedicated deep dive in my next piece.

Cutting Through the Jargon: What These Terms Actually Mean

The industry is throwing around a lot of overlapping acronyms right now. Here is a practical breakdown to get leadership and engineering teams on the same page:

AI SDLC (The Assisted Phase)

  • What it is: Using AI tools — like GitHub Copilot, Cursor, or ChatGPT — to speed up traditional coding workflows.
  • The Confusion: Thinking that giving engineers Copilot licenses means you have adopted an "AI-native" development process.
  • In Practice: The human remains in the driver's seat for every keystroke. AI is an inline assistant that accelerates boilerplate and single-function logic.

Agentic SDLC (The Autonomous Phase)

  • What it is: Shifting from single-prompt assistants to autonomous agent teams that execute multi-step engineering tasks (breaking down requirements, writing multi-file code, running tests, and fixing build errors).
  • The Confusion: Believing agentic development means removing human oversight entirely.
  • In Practice: Human engineers step out of the micro-typing loop and move upstream into stage-gate roles — approving architectures, signing off on plans, and reviewing final PRs.

ADLC: AI Development Life Cycle (The Product Framework)

  • What it is: The specialized lifecycle framework required to build, evaluate, trace, and serve non-deterministic AI and agent systems.
  • The Confusion: Treating ADLC as just another synonym for AI SDLC.
  • In Practice: While AI SDLC is how you build software, ADLC is how you manage non-deterministic AI products in production (handling evaluation benchmarks, prompt/state drift, and model serving).

Spec-Driven Development (The Operational Contract)

  • What it is: Writing structured, machine-readable specifications (spec.md, AGENTS.md, CLAUDE.md) that define explicit boundaries, data contracts, and acceptance criteria before an agent starts coding.
  • The Confusion: Viewing SDD as old-school bureaucratic paperwork that slows down rapid prototyping.
  • In Practice: SDD is the single most important guardrail in agentic development. It acts as an executable contract that prevents agents from hallucinating file edits, drifting off-task, and burning thousands of tokens in endless retry loops.

Why Leadership Must Invest in Training, Not Just Tokens

If your organization is spending tens of thousands of dollars on enterprise LLM tokens, but your engineering teams have not been trained on Spec-Driven Development, you are burning money on token churn.

Autonomous coding agents are not magic — they are context-driven execution engines. When an engineer gives an agent a vague prompt, the agent attempts to infer intent by searching the codebase, filling its context window with irrelevant files, making wrong assumptions, failing tests, and repeating the cycle. That loop is where your token budget goes to die.

For Engineering Leadership

  1. Stop Measuring AI Success by "Code Acceptance Rates": Lines of code accepted is a vanity metric. Measure delivery velocity against structured specs, reduction in PR review iterations, and token cost per completed ticket.
  2. Standardize the Spec Layer: Establish organization-wide standards for Spec-Driven Development. Provide templates (CLAUDE.md, AGENTS.md) so agents receive deterministic boundaries before execution begins.
  3. Train for Stage-Gate Supervision: Teach engineers how to review agent-generated execution plans before code generation starts. Catching an architectural error in the spec phase costs zero tokens; catching it after an agent modifies 20 files costs a fortune.

For Engineers and QA Specialists

  1. Move Upstream: Stop treating coding agents as fancy search engines or file-by-file fixers. Your leverage comes from defining clear system intent, data contracts, and edge-case boundaries.
  2. Replace "Vibes" with Contracts: If you cannot write a clear, unambiguous specification of what a feature should do, an autonomous agent will not magically guess it. Master the art of authoring machine-readable specs.
  3. Embrace Automated Verification: Pair your specs with automated test gates. When an agent has an explicit test suite to validate its own output, it can self-correct without needing you to babysit every iteration.

Moving Beyond the Token Burn

When engineers shift from Level 2 babysitting and Level 3 vibe coding to Level 4 spec-driven execution, the economics of engineering change completely. Token usage becomes an intentional, high-leverage investment rather than a wasteful trial-and-error expense.

It is time for enterprise leadership to stop asking "How many AI licenses did we provision?" and start asking "Have we trained our teams to author the specs that make agents autonomous?"

The reality is, agentic engineering is evolving every week. We are all building the playbook in real time, and my perspectives here are shaped directly by the workflows, experiments, and friction points I've encountered with my own teams.

Where is your team currently sitting on this curve? What practices or stage gates have helped you move past the "token burn" phase? I'd love to hear your experiences, pushback, and perspectives so we can all learn from each other.