MJD

Writing

Stop hoping your AI assistant “gets it” Give it memory and a structured process

All writingRead on LinkedIn

For the past several months I've been doing a lot of hands-on work with AI-assisted software delivery across multiple enterprise client engagements, and one thing has become pretty clear to me.

The biggest unlock in AI-assisted software delivery is not the coding assistant. It is the operating model around the assistant.

In real enterprise codebases, especially in regulated environments, AI agents can usually produce code that compiles and runs. The harder question is whether that code fits the system already in place: existing contracts, edge cases, architectural decisions, compatibility expectations, test patterns, and compliance constraints.

Most of that context isn't in any single file the model can read. It lives in the heads of people who've been on the codebase for a while.

The gap between a good demo and a reliable engineering practice is what I've been working on.

"Vibe coding" is fast, but doesn't hold up for the enterprise

A lot of AI coding still happens in "vibe-coding", or prompt-only mode where engineers describe the task, point the agent at a few files, and inspect whatever comes back.

That's fine for small or mechanical work. It breaks down when the work depends on hidden context, or when the implementation has to fit into a mature enterprise system with real constraints.

So I built a framework to deal with it. I've been calling it AI-SDLC Bootstrap Framework.

What I built

The bootstrap framework brings together three ideas the industry is already converging on and makes them function as a single delivery system.

  1. Context engineering is being deliberate about what the agent sees. Not stuffing more files into the prompt, but deciding what knowledge the agent actually needs, where it lives, and how it stays current.
  1. A context repository is the durable memory layer. It holds architecture, commands, integrations, glossary, project rules, and decision history. The agent stops rediscovering the project on every task.
  1. Spec-driven development (SDD) is the structural piece. The agent moves through a specification, then a plan, then tasks, and then code. Each step produces something a human can actually review before the diff becomes the only artifact.

The agent still writes the code. It just isn't starting from scratch every time, and engineering, product, security, and compliance reviewers get a trail they can actually follow to validate what changed.

That last part is what matters at enterprise scale. Faster code generation isn't what is valuable in the enterprise.

The thing that makes the difference is repeatable delivery that the people accountable for the system can actually trust.

So, why the AI-SDLC Bootstrap Framework and not just adopting each of those practices separately? First, the bootstrap framework is opinionated, it allows any team to rapidly spin up all three of those without having to spend hours researching on the best framework and approach. Second, and most importantly, what the framework bootstraps is all properly wired together so that the SDD framework is already customized to be aware of the context repository. That means context shapes the spec, the spec shapes the plan, the plan shapes the tasks, implementation creates evidence, and that evidence improves the context repository over time.

Measuring whether it actually works

Because I didn't want to ship something that just "felt better," I built an evaluation harness alongside the framework. It runs four tiers against the same repository, same tasks, same model family, same setup, and same acceptance checks. The only thing that changes between tiers is the workflow.

  1. Direct prompting, aka vibe-coding: 1 of 9 trials passed
  2. Native planning before code: 5 of 9 passed
  3. Context repository plus native planning: 9 of 9 passed, that was the reliability breakpoint, although score-level variance showed that context alone was not the full answer.
  4. Full AI-SDLC with the spec-driven flow: 9 of 9 passed, with no adjacent score regressions, plus human-reviewable spec, plan, task, and implementation artifacts.

The median composite improvement from direct prompting to the full flow inside that benchmark was about 498%.

I'm careful with that number because it belongs to this suite and not to every possible task. The pattern, though, matches what I've been seeing on real client work. Planning improves things. Durable context is usually where reliability actually breaks open. Spec-driven flow is what gives the work the traceability enterprise delivery requires once it gets past prototyping.

What this means for engineering leaders

My practical takeaway is that standardizing on a coding assistant matters less than the operating model you put around it:

  • Project knowledge that persists
  • Intent that's made explicit before implementation
  • Outcomes that are measured rather than demoed
  • Review artifacts that keep humans accountable for the system

Those are the things that hold up when the work gets serious.

That's been my focus with the AI-SDLC Bootstrap Framework and I’ve applied this in real enterprise delivery contexts, and the evaluation results match what I’m seeing in practice: the teams that get the operating model right get more reliable AI-assisted outcomes. Glad to compare notes if you're working through similar questions.

For engineering leaders, the lesson is that AI adoption should be managed as an operating model change, not a tool rollout.