Because the value is moving from like implementation, like picking a card, picking a story from Jira, to high-level judgment, to, for example, designing the system, being almost like an architect. And then, of course, decomposing problems, building specs, the verification layer, as I was mentioning, like moving from like writing the code to reviewing the actual code to understanding what's doing to ensuring that everything is stable. And then, of course, a lot of very skilled engineers, they say, oh, I don't want to write code, right? And that's, of course, something that makes a lot of sense. I feel there is a very important difference between like by coding or by prototyping, however we want to call it, and like AI native engineering, where we want to ship production ready code, right? Production quality code.
There is an individual contribution journey, and then there is like teams journey. Let's get started with the individual contributor itself. So AI native engineering changes the unit of work from code to intent. And we will talk about the intent in a minute. And then when we try to rephrase a little bit and think about how we want to change our mindset, we should think that software engineers are moving from implementers, right, to orchestrators, to people building an environment that can be optimized not just for humans, but also for AI agents. Let me give you an example. When you are onboarding a new colleague, you are usually writing documentation, creating scripts, doing pair programming sessions so that you can onboard this person. Now, let's imagine that you have to onboard an AI agent, right? You want to give this AI agent all the tooling, all the context, make the AI agent able to explore everything so that it can perform as it must. And that's like building the harness.
So the new center of gravity, as it was mentioning, is now defining the intent, setting the constraints, and building the verification layer. So for the intent, it's basically like deciding what we want to build before we build it, giving clear goals, working with our team, right, working with product managers, working with designers. In the first phase, defining the intent is super important, and that's one of the first parts of the Spectre development. Then there is building constraints, which is what I want the system to do, what I want the system to not do, right? We want to create boundaries so that we can keep our AI on track, basically. And then there is the verification layer, which is we need ways for the agent, ideally, to self-validate what's building so that we ensure that the final, so that we can trust the final result, and then we can properly review it. I just want to give you a very quick understanding of Spectre development. I know that this is not a talk about SDD, but just very quickly, because it's one of the important aspects that we are teaching to our teams. So SDD is basically a methodology to work with agents where we, first of all, define the, our intent, right? So what we want to implement. We create the spec, we create a full spec file. Then we have the human in the loop. So we review the spec, we ensure that it's aligned to what we are looking for, and then we create an implementation plan together with the agent. So we are going to tell the agent, OK, let's create an implementation plan together. I can steer you a little bit, I can review what you build. And so we iterate until the implementation plan is ready. Once the implementation is ready, the tasks have been decomposed and so on, we can ask to the agent, we implement every task and sub-tasks, of course. And then we can review the implementation, iterate on it, create PRs, you know, and then we go back to the next task and we create the new spec. As we can see, there are multiple places where there is the human in the loop, because, of course, we want to be in control and we want to steer our agent.
Comments