Music Thank you so much for coming later in the week here. I'm Matt. I'm the CEO and founder of REF. The problem we work on at REF is one you might be familiar with, where individual engineers are going really fast with AI, but the team as a whole is not. And we're working to help close that gap. What I'm going to be talking about today is what happens when your whole team gets 10 times faster, all the things that don't go well. And my goal is to give you a blueprint for how to get through those issues and have the whole team move faster together. The way I want to accomplish that is first, talk about those issues, define some terms.
Then we'll talk about how did we get here, where are we at now. And we'll use that to triangulate on some solutions. We'll start high level and we'll work down and get more and more practical until we leave with a couple of things you can leave here and do immediately. How's that sound? Thumbs up? All right. Awesome. Great. That was great. All right. So let's get into it. These are some of the problems you might be experiencing right now. These are problems that affect individuals and are actually magnified at the team level once the entire team starts experiencing them. So the first one: too many PRs to merge.
This is the classic first problem you hit when you start adopting AI as an engineer. You're like, great, I'm shipping stuff. And you push up those PRs, and you're like, there's no way I can merge all these. And this is obviously magnified when the whole team does this. Merge conflicts, merge queue breaks down, things get bad. The second problem is that you're moving in too many directions at once. This is also both an individual and a team problem. Individually, this is where you have a bunch of agents doing different things. You're trying to remember who's doing what, and your brain gets fried.
At the organizational level, this is your engineers picking up things and running in a certain direction. Another engineer is running over here. Maybe some are bumping into each other. And you're not moving cohesively with focus because you're just sprinting in all sorts of directions. The third problem you might be experiencing is declaring agent bankruptcy. This is a common pattern I see engineers get into where you're cranking, you have your 12 terminals open. At the end of the day, you're like, yeah, I did a lot of work. You step away from your laptop, spend time with your friends and family.
The next morning you come back, and it's like walking into a room of strangers. Like, who are these people? What are they doing here? But no problem. They're agents, so you just get rid of them and start over again. The problem, though, is it feels like you're doing a lot of work, but you're doing the same work and you're spending tokens twice. You're doing the same problems over again. And if you think about that organizationally, that's your team not being efficient with both their time and their token resources. Problem four, though, is actually the most important one. It's critical decisions being made by agents.
Once you have agents doing a lot of your work, if you as an engineer are letting an agent make a critical decision, you are ceding control of your code. You are no longer the owner of that code. The agent is. And if you imagine that at scale at your company, if the engineers across your team are giving up ownership of the code, you no longer own the product. These are a bunch of problems you might be experiencing at different degrees, on different days. The way I like to bundle it up is into this term: velocity sickness. This is the stress caused by sudden output increases, thanks to AI. It affects individuals or teams. And the result is output without impact.
So this is that feeling of, like, we're moving really fast. This should feel great. This should feel awesome. But for some reason, it doesn't feel awesome. We're not having the things you expect to be happening despite this feeling of being so productive. So that's to define that term.
But I want to tell a little story. My talk is happening now. I want to tell a little story about somebody, to make this very real. This is a story about somebody who's actually not an engineer, but I think it parallels our engineering workflows a lot. Part of my job is I get to go find and talk to people who are really pushing the forefront and try and learn from them. And I love that part of it. And so this is somebody, and I'm talking through their agentic workflows. And this is somebody who writes a newsletter.
And their workflow is around how do I have my ideas, and then they're doing research and exploration, and then cohesion between those ideas, and editorial to make sure it's in their voice. And they're walking me through their system for how they manage this whole pipeline and really scale out their efficacy.
And this is very much not slop. This is somebody who is using agents to amplify their own voice in a way that's very impressive. I'm like, wow, that is so cool. I'm soaking it in. And then they're like, yeah, I'm writing a book every week. I'm like, oh, okay, is your audience reading a book every week? And they're like, no, they're probably not. They're not. This is a person who's writing a lot, but those pages that they're writing are going unread. And I think that's part of this experience of velocity sickness, is we're building things that are not mattering for the people we want them to matter for, the people we're trying to reach.
So instead of unread pages, what we want is we want to write words that matter. We want to write words that connect with people. And the parallel to us as software builders and product builders is that we want to build products that connect with people.
We want to build products that change the way people live and work and make their lives better. And we have more ability to do that than ever with AI, but we have this feeling of velocity sickness where it feels like we should be doing that, but it's not quite landing. So let's talk about how we got here.
This is what the software engineering process used to look like before AI. We do some planning up front.
We'd sit down and build. We'd implement. It'd be iterative. We'd be exploring, but largely we're sitting down building in isolation, implementing something. And at the end, we'd polish it up and ship it out the door. And this was great. We all know how to do this. We had systems for this. And it was good. And then AI came along. But at this time, our tools were built for this. All our history of coding tools were built for this style of work. Our ID, our workhorse, was built for implementation and polish to be done by an individual, to be heads down building as a software engineer writing code. And that's a tool built for how we used to work.
So let's look at how we work now. Our work looks a lot more like this, where you do some planning up front. You start thinking about, what am I trying to do here? You take this idea in your head and start to flesh it out. At some point, an agent takes that idea and implements it. This arguably should not even be on this slide, because it's not our human work anymore. It's done by the agent. And then, in the end, we do some polishing, where we take back that thing the agent has made for us, and we hold it in our hands, and we say, is this what I wanted? This is a very different shape of work. We're no longer doing this heads down building.
These are the two creative and collaborative parts of our work as engineers. This is where we express our craft as an engineer. And the one that's most different is the planning stage. So I want to zoom in on that just a little bit. That's the exploratory, creative, collaborative part, where we're thinking about, I have this vague idea. I have this complex system. I need to understand the contours of this system, apply this idea, and really understand it. And I need to pull out what's relevant and express my taste as an engineer, as to where do I want this system to go. This is the kind of work that's creative and needs to be done together.
I think the shape of engineering teams and product teams is changing with AI. But we're always going to have this thing where we have a group of people responsible for managing a complex system and deciding the future of that system. And that's this planning work. And so we're starting to see some of the hints of, okay, we had tools built for a certain type of work. Our work looks different now. Let's start to think about that a little bit more. So we used to have the IDE as our main tool. It was used for implementation. But now we're doing this different kind of work.
So at the very high level, we can start to think about solutions like, okay, we have a tool built for this type of work. as to where do I want this system to go.
This is the kind of work that's creative and needs to be done together. I think the shape of engineering teams and product teams is changing with AI. But we're always going to have this thing where we have a group of people responsible for managing a complex system and deciding the future of that system. And that's this planning work. And so we're starting to see some of the hints of, okay, we had tools built for a certain type of work. Our work looks different now. Let's start to think about that a little bit more. So we used to have the IDE as our main tool. It was used for implementation. But now we're doing this different kind of work.
So at the very high level, we can start to think about solutions, okay, we have a tool built for this type of work. We have a new type of work. Let's think about what this new layer of our work is. This is the decision layer. This is where we're thinking through what are the key decisions, doing that craft of engineering, and expressing our tastes as engineers. Ultimately, a different thing than implementation. And it's a different gear as an engineer. The skill now is what gear am I in? Am I using the appropriate tools for the gear that I'm trying to accomplish right now? So let's think about what a tool built for the decision layer would look like.
It would be a tool built for docs and not chat. And that's a short sentence. There's a lot to unpack here, though. So I'm going to spend a lot of time on this slide. But the problem with chats is that they are the relic of building for implementation. So they're default isolated and ephemeral and brain-off. They're made to build things and get stuff done. And that's not really the same type of work we're doing at the decision layer. We're doing this creative exploratory work. So being in this isolated environment where I'm working with an agent, maybe I start with my vague idea and I'm exploring it and asking questions,
but decisions are being made in that chat that are not shared with my team, that are going to disappear as long as I'm going to result in some code being output, where those important decisions are not being made clear and shared with the team. And you're also in this mode where the agent's saying, okay, this is what I want to do. Is that okay? Let's go. Or sometimes it'll ask you a question and it'll be, this is the recommended option. And then you're like, great, I don't need to think about this. I'll just hit that one and we keep going. Docs start to solve this problem. So if you center your work around working in docs, they're meant to bring forward the key decisions.
This is what our work is now. Our work now is figure out what decisions matter and then make those decisions and then get out of the way while the agents fill in the rest. Working in docs is the classic way we would create alignment. If you think back to being a manager or a lead on a team before AI, if your team was struggling with alignment, you would not tell them, let's go all work in Slack DMs. Let's go direct message each other. You'd say, let's bring forward key decisions, align on them, spend time on these. Find a way that we can really spend time getting our decisions right.
So there are two things you might be thinking looking at this that are not what I'm talking about here. The first one is plan mode. That's a great tool. The other one is full-on factory spectrum and development. That's a great tool too. I'm talking about something in the middle. Plan mode is great, but it's largely a rich chat message where the agent is saying, hey, here's a better visualization of what I'm trying to express to you. That's great. But it's still in this isolated, ephemeral environment. And what I'm suggesting is something more durable, more shared, more long-lived that you and your team are spending time on.
Similarly, the spectrum and development where we just define the behaviors, we operate at the product level, is a little far away from the engineering reality. The engineering reality is that I need to understand my system and have a tool that helps me understand that system and lay out those key decisions in a technical sense. The way I like to conceptualize this is as the portal to the software system, where you are Tony Stark and you're like, show me what matters. And you're like, I'm working on this. Pull out the bits that are relevant. And AI is amazing at finding things that are related to other things,
helping you find what's relevant and lay them out on the table in front of you. Organize the pieces in the way you want to represent how you want the system to grow. But the big conceptual flip here is actually that we're pulling out the state. So when you're living and working in a long-lived session with an agent, there's this implicit context being built up over that work, and that's great. But you're also doing actions, and it's not shared. What you want is to separate the agent as the action and the doc as the state. And so you can spawn new agents that have this same context,
that are starting from the same place, that are able to collaborate and work on this same piece of context and state.
You're ultimately doing context engineering in this doc so that every agent is largely stateless and starts from this place, the same place.
And what that gives you is your team and yourself can look into this and understand what actually is in here. What are the decisions being made? And have a clearer understanding of what the key decisions are. So this is a different way of working where your core atom of your work is a doc rather than a chat. What happens when you actually start to implement this? Well, the first thing we see happen actually is that people start to plan and then not implement their plan. And this is actually a really good sign. Because what that means is they're thinking through ideas. They're saying, I have this idea. Let me explore it. Let me start to flesh it out.
I have this vague thought.
Don't just give me some code. Don't go off and build it for me. But help me understand the idea that I'm talking about. And then they have a bunch of these. And then some of them are getting built and some of them aren't. So that means they're prioritizing the ideas that, after they've explored them, are the ones that are worth building and going into the next step with. One way I like to frame this is that you're shifting from code velocity to idea velocity. So going back to our problem statement, how are we dealing with velocity sickness? The velocity sickness is we're shipping too much code that's not going anywhere. The solution is to shift that velocity to ideas.
So that rather than getting stuck in prototype gravity where we build something and we're so excited to ship that thing, and we're going down one path of the idea maze, we can now more effectively explore that whole maze and find that gold that's around the corner and really impact the people we're trying to help. So let's go back. Here are those problems, those velocity sickness problems I talked about at the beginning. Let's see how this starts to address those. First, too many PRs. We've moved the review point earlier into the process. So we're aligning on the key decisions up front. That means the code review is easier.
Because the hardest part of any code review is what actually matters here. That's the first step. It's like, what do I care about here? If you move that earlier, we've aligned on that. The code review becomes much simpler. Number two, moving in too many directions. Again, we're aligning early. As a team and individually, I'm understanding what I'm working on across many agents. If I'm working on a large thing, I've understood it initially. As a team, we're sharing these plans and we're aligning. This is what we're trying to build. And it's easy before someone has spent even a day in AI going deep on some idea, building a prototype.
We can talk about it early and make sure we're aligned on where are we actually taking the system. Declaring agent bankruptcy is just not a thing. Because you've made your agent state list. So the result of their work is in this doc. If you need to rebuild your human context, you just read the doc. Now you understand the state of this project. And you can pick up from there. And the most important one, humans own the decisions. That's what we're solving for. Humans need to own the decisions. That's how we retain ownership of our software and our product and make it a true expression of what we're trying to create in the world. There are also some other benefits.
So when you have this state extracted and you're working from a shared context, you get more parallel agents. It's easier to work with parallel agents. You get this durable decision log. So something that's really powerful. I think a lot of people are thinking about how do we capture all the decisions going into these sessions. Declaring agent bankruptcy is just not a thing. Because you've made your agent state list. So the result of their work is in this doc. If you need to rebuild your human context, you just read the doc. Now you understand the state of this project. And you can pick up from there.
And the most important one, humans own the decisions. That's what we're solving for. Humans need to own the decisions. That's how we retain ownership of our software and our product.
And make it a true expression of what we're trying to create in the world. There are also some other benefits. So when you have this state extracted and you're working from a shared context, you get more parallel agents. It's easier to work with parallel agents. You get this durable decision log. So something that's really powerful. I think a lot of people are thinking about how do we capture all the decisions going into these sessions. A really great solution to that is let's pull out all the decisions up front, agree to them, and put them in a place that's durable. So that we don't have to have some LLM summarizing it and maybe picking the wrong things later on.
We want to bring that forward so we can save it and refer to it later. And then my favorite one is actually more collaboration. This process, we're doing more work that is creative, which means we should be collaborating more as engineers. I think the future of engineering is multiplayer. It's going to be multiplayer by default sooner than we think. And it's more important than ever because we're in this moment with AI where everything's moving faster than ever. There's a pressure. Everyone's company feels existential, small or big. You need to deliver. And the way we get through that as humans is by working together. And we need tools that help us do that.
So here are three concrete things you can leave this room and do right now. The first one is to think of your work in terms of planning and polish. So recognizing that there are two gears I'm working in. There's no longer this one focus of implementation. There's plan and then polish. And notice when you're in a single session and you're doing both of these in one session. Notice when you drift from the planning phase into the polish phase. And is your tool serving you for what you're trying to do at that moment? Number two is to start to treat your plan as a portal to the software system.
So really treating it as this powerful, malleable tool to say, what matters to me for what I'm working on right now? And asking it to show that to you so that you can make the best decision possible. And number three is share a plan. Don't just write the plan, give it to your agent, and have them implement it. Give it to someone on your team. This is, I feel, very unnatural for a lot of people. We always think we know what's going on. But it's always valuable. You have smart teammates. They have great context in their heads. You should tap into that. They will give you good feedback. It's a really valuable thing to do. That's my talk. I'm Matt. I'm the CEO of Ref.
If you want to talk about any of this stuff, this is all my connection information. Ref is a tool built for the decision layer. We work with all of your existing implementation tools. If you want to see a demo, you can come by our booth or just see me out there. And I love to talk about this stuff. So come say hi. Thanks. And notice when you're in a single session and you're doing both of these in one session. Notice when you drift from the planning phase into the polish phase. And is your tool serving you for what you're trying to do at that moment? Number two is to start to treat your plan as a portal to the software system.
So really treating it as this powerful, malleable tool to say, like, what matters to me for what I'm working on right now? And asking it to show that to you so that you can make the best decision possible. And number three is share a plan. Like, don't just, you know, write the plan, give it to your agent, have them implement it. Give it to someone on your team. This is, like, I feel like very unnatural for a lot of people. We always, we think we know what's going on. But it's always valuable. You have smart teammates. They have great context in their heads. You should tap into that. They will give you good feedback. It's a really valuable thing to do. That's my talk.
I'm Matt. I'm the CEO of Ref. If you want to talk about any of this stuff, this is all my, like, connection information. Ref is a tool built for the decision layer. We work with all of your existing implementation tools. If you want to see a demo, you can come by our booth or just see me out there. And I love to talk about this stuff. So, come say hi. Thanks.