The 7 phases of AI-driven development — Transcript
Full transcript
- 0:00What's up friends? I'm going to keep
- 0:00this short and sweet. I have identified
- 0:03seven phases of development with AI. In
- 0:06other words, as you're working through
- 0:08coding with your AI coding assistant, in
- 0:10my case Claude Code usually, then these
- 0:12are the seven phases you should be
- 0:14thinking about for shipping great work.
- 0:15The way you achieve these phases is kind
- 0:17of up to you. There are many different
- 0:19implementations of it, but these are the
- 0:21ones that I have kind of understood to
- 0:24be kind of common across lots and lots
- 0:26of different approaches. Whether you're
- 0:28doing rough loops like I mostly am,
- 0:30whether you're doing GSD, whether you're
- 0:31using Spec Kit, you are probably going
- 0:33to be using these seven phases. If you
- 0:35dig this stuff and you believe that
- 0:36engineering fundamentals are really
- 0:38important in the AI age, then guess
- 0:40what? So do I. And this is what I cover
- 0:42and elaborate on in my newsletter. This
- 0:44is not for vibe coders. We are people
- 0:46that are serious about AI engineering
- 0:49and serious about building applications
- 0:50that are built to last. So if that
- 0:52sounds like you and you want to improve
- 0:53your skills, then this is the place. But
- 0:55without further ado, let's go into the
- 0:57list. Phase one, we start with the idea.
- 1:00You have some kind of idea, some reason
- 1:02that you are invoking this progress,
- 1:04something that you want the AI to do for
- 1:07you. This might be that you have an
- 1:08entire app idea that you want to build.
- 1:10Or you might just have a narrow thing
- 1:12that you want to complete within the
- 1:13code base that you're in, like a bug fix
- 1:15or a feature. I also count refactors as
- 1:18part of this, too. So if you have a code
- 1:19base that you need to refactor, then
- 1:21this process will work for you, too.
- 1:22This idea can be as small and as big as
- 1:25you like. We can expand this idea and
- 1:27this process can take very very large
- 1:30ideas and turn them into reality. Or it
- 1:32can be teeny, very narrow and very
- 1:33focused. Doesn't matter. Now, just to
- 1:35give you a glimpse of the future setup
- 1:36here, the idea is going to be turned
- 1:39into a set of tickets, which a kind of
- 1:42AI is going to complete. Now, that set
- 1:44of tickets might end up being lots and
- 1:46lots of different kind of like AIs
- 1:47working at once, or maybe just a big
- 1:50list of tasks that the AI is going to
- 1:52complete sequentially. So if this idea
- 1:53involves any kind of research here, any
- 1:56kind of like difficult explore phases as
- 2:00part of building the code, then you may
- 2:02want to include a research phase now.
- 2:04For instance, if you're doing like a
- 2:05Stripe integration or maybe integrating
- 2:07with an API that's not very common, then
- 2:10you might want to create an asset that
- 2:13kind of takes all of the research about
- 2:15that thing like based on your idea and
- 2:17kind of caches it and puts it inside the
- 2:20repo or somewhere that your agent can
- 2:21access. Essentially, every time your
- 2:23agent is doing work, it might need to
- 2:25explore the repo in a fresh context
- 2:27window. And if that exploration is
- 2:29difficult, so it's an external API or
- 2:32it's somewhere that's hard to access,
- 2:33then you'll want to cache it in a
- 2:35research.md asset and you'll definitely
- 2:37want to run a research phase at this
- 2:39point. The next step after research is
- 2:41to get to prototyping. Now, in the
- 2:43prototype stage, we're still not really
- 2:45sure what we're actually building on
- 2:48even maybe why we're building it.
- 2:49Prototyping is really important if you
- 2:52need to impose your taste on the
- 2:54outcome. words, maybe you need some UI
- 2:56that needs to look a certain way or
- 2:58behave a certain way. You're not quite
- 2:59sure which one to do. What I tend to do
- 3:01is just chuck up a bunch of different
- 3:03ideas on a throwaway route, which is
- 3:06kind of like the LLM showing me all of
- 3:07the different ways it can think of to
- 3:09build out the prototype. I then iterate
- 3:11on the prototype inside a couple of
- 3:13sessions and say, "Okay, now that one
- 3:14looks like the best." I found that doing
- 3:16this early is absolutely essential
- 3:18because then you can actually commit the
- 3:19prototype to your code base and then
- 3:21make that available to the agent when it
- 3:23actually goes to implement it. The next
- 3:25step, we are in step four now is to
- 3:26create a PRD. Now that we understand a
- 3:29bit more about the kind of like external
- 3:31APIs that we're using in the research
- 3:33phase, now that we understand a bit more
- 3:35about the prototype and we've actually
- 3:37seen some code, it's time to start
- 3:39actually properly describing the
- 3:41destination. We should now feel
- 3:42confident in ourselves that we can kind
- 3:44of like understand the end state, what
- 3:47we're trying to create at the end. We
- 3:48won't know all of the implementation
- 3:50decisions yet. We will just kind of know
- 3:52the basic stuff that the user is going
- 3:54to see and the way that it's going to
- 3:56behave. We don't have to call this a
- 3:57PRD, by the way. This is a PRD is a
- 3:59product requirements document, but
- 4:01really it's just some kind of document
- 4:03that describes the end state of where
- 4:04we're going. Now, in the process of
- 4:05creating this end state, we really need
- 4:07to hammer out the design. And this means
- 4:09we need to prompt the agent to
- 4:11absolutely grill us walking down every
- 4:14part of our decision tree. I have a
- 4:16write a PRD skill that is purpose
- 4:18designed for this, which I will link to
- 4:20below if you're interested. But once
- 4:21we've created the PRD, then it's time to
- 4:24actually start breaking down the PRD
- 4:26into some kind of implementation plan.
- 4:28For those of you who are not developers
- 4:30or you've never used a, I don't know, a
- 4:31Kanban board or a Jira board or anything
- 4:33like that, a Kanban board is just a list
- 4:36of tickets that have blocking
- 4:38relationships between them. We're
- 4:39essentially just describing the work
- 4:41that needs to be done. So, I then have a
- 4:44separate skill for turning my PRD into
- 4:47separate issues. We could create a
- 4:48single sequential plan that turns the uh
- 4:51PRD into like actual code, but with a
- 4:54Kanban board you actually get to
- 4:55parallelize really effectively. And so,
- 4:57I can just literally go on my Kanban
- 4:59board, find all of the tickets that
- 5:00aren't blocking, and spin up an agent
- 5:02for each one and get it to resolve it.
- 5:05But of course, what I'm starting to talk
- 5:06about here is execution. So, in some
- 5:08kind of loop here, run a coding agent to
- 5:10execute all of the tickets on the Kanban
- 5:12board. Most times you won't need to
- 5:14parallelize this. Most times a
- 5:15sequential agent just working through
- 5:17each ticket will be enough. And for me,
- 5:19this is a Ralph loop, which works
- 5:21really, really effectively with this
- 5:22setup. And I'll drop some links below on
- 5:24writing about Ralph that I've done. Now,
- 5:26finally, once you've done with
- 5:27execution, you've got a completed asset
- 5:29for you to actually look at, then you
- 5:32get the agent to create a QA plan for
- 5:34the human to QA the completed work. And
- 5:37what this usually results in is more
- 5:38tasks in the Kanban board and going
- 5:40through the execution loop again. So,
- 5:42you will tend to loop these last three
- 5:44steps quite a few times until you
- 5:46iterate towards a perfect product. And
- 5:48QA here also involves a human actually
- 5:49going and reading the code that's been
- 5:51produced during the execution loop. That
- 5:53might not always be needed, especially
- 5:55if you're using a kind of gray box
- 5:56architecture that I've talked about in
- 5:58previous videos. But overall, these
- 6:00seven phases are the things I'm thinking
- 6:02about whenever I'm working with an AI
- 6:03agent. We start with the idea, some kind
- 6:06of app or feature or refactor. If we
- 6:08know there are external dependencies and
- 6:10difficult to execute explore phases,
- 6:12then we cache it in a research phase.
- 6:14And by the way, this research generally
- 6:16only lives for the lifetime of this
- 6:18sprint essentially, or the lifetime of
- 6:20the idea that we're imposing on the app.
- 6:22The reason for that is that research can
- 6:24go out of date, or it can just rot away
- 6:26essentially, and actually cause our
- 6:28agent to take a wrong turn where it's
- 6:31not needed. If I need to impose my
- 6:32taste, then I will use a prototype here.
- 6:35So, I'll really just sit with an agent,
- 6:37human in the loop, to hash out some
- 6:39ideas. This is not just for design as
- 6:41well. It can be for a software
- 6:42architecture, too, or let's say testing
- 6:45something out with an external service.
- 6:46This is an essential step because by the
- 6:48time we get to the PRD, it's a little
- 6:49bit too abstract. You really need
- 6:51concrete feedback first. Then I write
- 6:53the PRD, which is the documentation, the
- 6:56spec for where we are going. Next, I
- 6:58make a kind of understanding of the
- 7:00journey towards the PRD by turning it
- 7:02into a Kanban board. I generally use
- 7:04GitHub issues for both the PRD and the
- 7:06Kanban board, by the way. It's just an
- 7:08easy thing I found. Although GitHub
- 7:10doesn't have yet a kind of built-in way
- 7:12to represent blocking relationships
- 7:14between tickets. So, you might be just
- 7:16better off with something like Linear,
- 7:17which does. Once the Kanban board is all
- 7:19ready and set up, then I execute it in
- 7:21some kind of loop. For me, that's a
- 7:23Ralph loop. You could also, I suppose,
- 7:25do execution human in the loop style,
- 7:27where you sit and execute the tickets
- 7:30individually. But I generally find with
- 7:31all of this setup, with the research,
- 7:33with the prototype, with the Kanban
- 7:35board, with the PRD helping it, you can
- 7:37totally run this execution loop AFK, and
- 7:39the results will be really good. And to
- 7:40make sure that they're really good, we
- 7:41then enter a QA phase where we get the
- 7:44agent to produce a QA plan. Then a
- 7:46human, yes, a human, yep, we're here,
- 7:49actually walks through and QAs the
- 7:51completed work and then produces more
- 7:53tickets for the Kanban board, which then
- 7:55goes and executed, more QA, you get the
- 7:58idea. So what do you think about this?
- 7:59What did I get wrong and what am I
- 8:00missing here? I imagine these phases
- 8:02will grow to eight phases and nine
- 8:04phases as I get more ideas. There's no
- 8:06explicit mention of code review here,
- 8:08really. I suppose I could do that as
- 8:10part of the execution flow. I suppose
- 8:11maybe it comes under QA, but you know,
- 8:14it's definitely an essential step to
- 8:16producing good code. By the way, you can
- 8:18tell that I care about good code and if
- 8:19you do too, then you should check out my
- 8:21newsletter. But whether you sign up or
- 8:22don't, thanks for watching and I'll see
- 8:24you very soon.
About this transcript
This page contains the full transcript of The 7 phases of AI-driven development by Matt Pocock, generated from the public captions YouTube serves with the video. The transcript has 1,862 words across 259 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.
What you can do with it
Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.
Free YouTube transcript tool
YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.