AI Engineer World's Fair 2024
The Making of Devin
Read the talk
The Making of Devin
A name-game website, a production search bar, and a shared development machine show how coding agents turn instructions into software—and where human judgment still matters.
From a talk by Scott Wu
Before you start: Basic familiarity with React state, Git pull requests, and development environments will help with the examples.
A name game built through feedback
Remembering names and faces is hard; a small practice game could help. Preparing for the AI Engineer World's Fair that morning, Scott Wu asked Devin to build a mobile-friendly website from a TSV containing the event speakers’ names and photographs. Each round should show two different random faces and one person’s name, then ask the player to choose the matching face.
The request starts a development process, not just a code response. Devin has the tools a human engineer would use and first produces a plan. That plan can change as new information or feedback arrives. In the demonstration, Devin creates a directory, starts a React application, reads the TSV, and builds the website.
After some minutes, Devin deploys a first version. It is close, but the photographs still display their names, giving away the answer. Wu acknowledges that he may not have specified the requirement precisely enough. Clicking an answer produces the expected correct-answer feedback, but the interface needs another pass.
Wu supplies that pass in plain English: hide both photograph labels until the player answers, restyle the Play Again button, and add a streak counter that returns to zero after a wrong answer. These requests refine both presentation and application state. In React, the requested answer and streak behavior can be expressed with a small state transition:
jsx
import { useState } from "react";
export function NameGameRound({ faces, target, onNext }) {
const [answerId, setAnswerId] = useState(null);
const [streak, setStreak] = useState(0);
const answered = answerId !== null;
function choose(face) {
if (answered) return;
setAnswerId(face.id);
setStreak(count => face.id === target.id ? count + 1 : 0);
}
function playAgain() {
setAnswerId(null);
onNext();
}
return (
<section>
<h1>Which person is {target.name}?</h1>
<p>Streak: {streak}</p>
<div>
{faces.map(face => (
<button
key={face.id}
disabled={answered}
onClick={() => choose(face)}
>
<img
src={face.photoUrl}
alt={answered ? face.name : "Choose this person"}
/>
{answered && <span>{face.name}</span>}
</button>
))}
</div>
{answered && (
<>
<p>{answerId === target.id ? "Correct!" : "Incorrect"}</p>
<button onClick={playAgain}>Play Again</button>
</>
)}
</section>
);
}
Here the parent supplies two distinct faces and a target drawn from that pair; onNext supplies the next round while keeping this component mounted. The target name remains visible throughout, while the photograph labels appear only after an answer.
The final deployed version demonstrates those rules. Wu identifies Justine, builds up a streak, then deliberately chooses a wrong answer to show the counter resetting to zero. He says playing the game helped him learn everyone’s names. Wu estimates that the game’s dataset contains approximately 170 World's Fair speakers.
This is a toy application, but its development loop is consequential: describe a desired result, inspect working software, and refine the request. Wu also had Devin build the QR-code website used to share the game. The same tool was already being used inside Cognition to help build Devin itself.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
A search bar in Devin’s own repository
The next example moves from a new application to an existing production codebase. Bryce, a Cognition teammate, asks Devin to create a search bar for the Devin sessions list. The task begins with more context than the name game: a prepared machine snapshot provides the repository environment, a playbook supplies repository-specific knowledge, and Git tooling lets Devin create a pull request.
After the first pull request, Bryce asks for a magnifying-glass icon and an implementation idiomatic to the project, naming Phosphor as an option. The interaction remains conversational, but the artifact under review is now a repository change rather than a standalone deployment.
The exchange also exposes a practical limit. Bryce says there is no need to test, while Devin reports trouble with the login process. Wu confirms that the search-bar pull request was merged; this example establishes a reported production contribution, not successful end-to-end verification. He also credits Devin with building API integrations, internal dashboards, and metrics tracking used by the company.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
From a hacker house to an agent
Work began in November 2023, roughly seven months before this June 2024 talk, in a hacker house in Burlingame. Several teammates already lived together, each brought experience in AI, and they shared an intention to build a coding agent. The team subsequently moved between New York and the Bay Area, renting progressively larger Airbnbs as it grew. At the time of the talk, the plan was to settle in the Bay.
The product direction starts with a distinction between completing text and deciding what to do. A language model takes a prefix and generates a suffix. Wu uses ChatGPT, question-answering systems, marketing copy, customer support, GitHub Copilot, and Cursor as examples of valuable products built around that interaction. This is his framing of the product landscape at the time of the talk.
An agent adds autonomous decisions to the generation process. That creates new possibilities, but also raises the required level of consistency: the system must choose useful actions, not merely provide useful text. Building Devin therefore involves two distinct problems—improving its ability to complete work and designing an interface through which people can direct and understand that work.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Why code gives agents a useful feedback loop
The team’s enthusiasm for teaching AI to code is one motivation, but software engineering also fits the agent pattern unusually well. Much of the job happens outside the act of typing code: inspecting files, running commands, consulting documentation, opening a front end to reproduce a bug, making an edit, and trying again. An agent can participate in that sequence because each step creates information that helps determine the next action.
Consider Wu’s hypothetical assignment: fix one bug in a production system containing thousands of files and hundreds of thousands of lines. Reading the whole system and immediately producing the correct change would be difficult for a human or an AI. The practical route is investigation:
- Add print statements to expose relevant runtime behavior.
- Inspect logs and monitoring to see what actually happened.
- Move between the implicated files to narrow the diagnosis.
- Run code after a decision and use the result to choose the next step.
Execution supplies evidence that static inspection alone does not. The agent can revise its understanding rather than committing to its first guess.
Wu also expects the underlying capabilities to improve quickly. In his assessment, even the name-game demonstration would have been almost unthinkable two years earlier. Looking ahead another two years, he expects better data and training to keep expanding what agents can accomplish.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Supervision needs more than a chat window
The obvious interface models are familiar software and human collaboration. Showing Devin’s computer and commands resembles looking over an intern’s shoulder. But neither analogy fully captures an agent’s needs: parallel work, information gathering, and context management behave differently enough to require their own product decisions.
The resulting feature set extends well beyond shell access, code editing, and web browsing:
- Session control: Fork work into another session or roll it back.
- Team integration: Connect work to Slack and GitHub.
- Prepared context: Supply playbooks and stored machine snapshots.
- Operational support: Manage secrets and provide appropriate verification tools.
These controls are part of making the agent usable, alongside improving its ability to write and debug software.
A recently shipped feature at the time made Devin’s machine directly accessible through VS Code Live Share. Instead of describing every edit in chat, a human could enter the shared environment, change a few lines, and tell Devin what had changed. Collaboration could therefore alternate between natural-language direction and direct intervention in the files.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Delegating work asynchronously
Cognition’s own workflow had become more asynchronous. Wu describes an engineer with four tasks assigning them to four Devin sessions running in parallel. The engineer then coordinates the work much like an engineering manager. His analogy is “enthusiastic interns”: the agents try hard, but lack knowledge, make mistakes, and ask questions. Parallelism still requires supervision and iteration.
A same-day example makes that workflow concrete. During a Slack discussion about a color change, a teammate can mention @Devin and ask it to make the change. Devin produces a pull request; a human merges it. The slide shows the request in the conversation where the work originated, with the relevant interface context attached.
Wu says teammates have made requests from the gym or a car, without their development computer available, and reviewed the code afterward. The change is not simply a different way to enter code: specifying a task and reviewing its implementation no longer have to happen in the same sitting.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Deciding what to build remains engineering work
What does this leave for software engineers? Wu starts with a boundary: Devin does not decide what should be built. He divides engineering into two kinds of work that currently occupy the same person’s day.
| Work | Decisions and activities |
|---|---|
| Solution design | Architecture, user flows, details, edge cases |
| Implementation | Debugging, functions, unit tests |
The first establishes the solution to pursue; the second turns that solution into working software. Wu estimates that an average engineer currently spends 10–20% of their time on thinking and solution design and 80–90% on implementation. He presents this as an estimate, not a measured time-use study.
His expectation is that better agents will free engineers to spend more time on the first category. Kubernetes setup, debugging broken APIs, version changes, and migrations are examples of implementation work he hopes to delegate. The remaining role would put more emphasis on understanding problems and designing solutions, combining aspects of a technical architect and a product manager. This is a direction for an early technology, not a claim that those responsibilities have already been automated away.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Cheaper implementation could mean more software
Wu predicts that the job will change while the number of software engineers grows. His historical analogy runs from punch cards to assembly to C: the mechanics of programming changed, yet programming became more widespread. The argument depends on how much useful software remains unbuilt, rather than assuming that today’s workload is fixed.
He describes software as the leading driver of world progress over the preceding 40–50 years, while arguing that its potential remains far from exhausted. Wu estimates that demand for software is substantially more than 10 times current output. Wu projects that engineers could become 5–10 times more effective while the total amount of software engineering increases. These are economic expectations and a productivity forecast, not measured results from the demonstrations. In that view, easier implementation both expands what existing engineers can attempt and lets more people participate.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Access and executable verification
The first audience question is practical: how can people get access? At the time of the talk, Cognition was admitting more users each week and expanding its enterprise customer rollout, but still had substantial waitlists. Wu gives no firm access date.
The next question asks how Devin checks generated code and whether it can actually run the application. In Cognition’s repository, Wu explains, Devin receives an instantiated machine configured to run the development environment, server, and front end. For a debugging task, it can open the application, reproduce the reported problem, debug it, and try again. When the audience member characterizes the environment as fully executable, Wu confirms it. The verification mechanism is access to the running system and its behavior, not just another reading of the generated code.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
How do junior engineers learn?
Automating simpler tasks raises a different concern: those tasks are also how interns and junior engineers learn. Asked what happens to that training path, Wu expects demand to rise with supply and the training process to change.
His answer centers on what makes an engineer strong. Typing speed is less important than understanding a problem, knowing alternative architectures, and recognizing edge cases. He expects junior engineers to practice those fundamentals earlier as agents take on more implementation. That identifies the skills he believes will remain valuable, though it does not supply a replacement curriculum for learning them.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Progress has to come across the stack
The final question asks for the biggest challenges to realizing this future. Wu’s answer spans speed, consistency, access, integrations, and product UX. No single capability improvement resolves all of them: an agent must do useful work reliably, fit the systems around it, and give people workable ways to collaborate.
He expects progress from complementary sources—new hardware, stronger foundation models, and agentic research—with many optimizations improving different parts of the stack. His optimism is about their combined effect. A better coding agent will not arrive through one small breakthrough; it will emerge as the execution environment, underlying capabilities, and collaboration product improve together.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
From the talk
An icon family for interfaces, including the kind of search icon discussed in the production demo.
Microsoft's collaborative development tool supports shared editing, debugging, terminals, and servers.
Further reading
- Introducing DevinArticle
Scott Wu's original announcement explains Devin's tools, planning, collaboration, and early demonstrations.
- Devin's 2024 release notesDocumentation
A dated record of Devin's early playbooks, snapshots, Slack integration, and shared-machine controls.
Updates since the talk
The December 2024 announcement records Devin's expansion beyond its early-access rollout.
Read the complete timestamped transcript
- 0:00
[upbeat music] I'm Scott from Cognition AI, and I'm gonna tell you guys a little bit about, um, you know, the, the, the early makings of Devin.
- 0:20
We're still super, super early on, and, and also a little bit about kind of the space as a whole and, and what's coming next. Um, and I thought it'd be nice to, to start with a demo first.
- 0:29
Um, uh, it sounds like some of you guys have, have already seen some of the videos, but I brought a nice custom one here for the World's Fair today.
- 0:35
Um, so I'll just show that quickly. And here, I basically said, "Hey, Devin..." This was this morning, by the way. This was a huge scramble. I, I said, "Hey, Devin, uh, I want you to build a mobile-friendly website to play the name game."
- 0:47
So I have a lot of trouble memorizing names and faces. I don't know about you guys. Um, but I basically just said, you know, "Here's a, here's a TSV file of a bunch of names and faces."
- 0:57
These are all the speakers, uh, here at the World's Fair this week. And I said, "Can you set up the game so that you show two different random faces and then show the names of one of them and have me guess which one is which," right?
- 1:08
And I gave kind of a few instructions on how the game should work.
- 1:12
And so Devin is a fully autonomous software engineer, and what that means is Devin has access to all the same tools that a human software engineer would have when it was building-- w-when, when they were building something like this.
- 1:23
And so the first thing that Devin's gonna do is Devin's gonna make a plan. Um, and you can see here, you know, kind of a basic plan coming out.
- 1:30
Um, one of the interesting things about this is the plan changes a lot over time, and so, you know, as you get new information or new feedback, you update your plan accordingly with that too.
- 1:40
After that, Devin's basically just running this the same way that a human would. And so if you can take a look, you know, Devin makes a new directory for the name game website, starts a new React app, you know, all, all the same primitives.
- 1:50
Um, works on building it out and building the code. You know, reads the TSV file to take a look, uh, at what's going on here. Um, and is just kinda generally working through it and jumping through.
- 2:00
Um, it comes out and deploys this first version after, after some minutes, and I'll just pull this up quickly. So that's what this looks like. Um, it's, it's close, but not quite there, right?
- 2:09
I mean, it shows the-- It's still showing the names, and I think maybe I didn't quite specify that exactly. Um, but, you know, you can click, uh, the name and it got that correct.
- 2:17
Um, and so I just went ahead and just gave it some more feen- feedback in plain English. And so I said, "Hey, you know, can you hide the two names until I click on the answer?
- 2:24
And also, can you probably restyle the Play Again button?" It's like, you know, somehow it's a, it's a little off on this page. Um, and I kept going, uh, and just, just kinda gave it more and more feedback over time.
- 2:34
And I also asked it, "Hey, can you add a streak counter as well? You know, can you, can you keep track of how many I got correct and, you know, reset to zero?"
- 2:41
Um, you know, a few of these other things. Um, and the website it ultimately deployed, uh, was this one right here. And so this is Justine, for example. Keeps track of my streak, and you can see it's kind of, uh, ramping it up.
- 2:53
And so, you know, if I were to, for example, um,
- 2:57
if I got this one wrong on purpose, then you would see the streak would reset to zero, you know, and it would go on. And so I actually played this game and, and learned the names of everyone, which was, which was super helpful, by the way. [laughs]
- 3:07
And, uh, you know, you guys can play it too. It's, uh, it's right here if you wanna try it out. This has all the speakers. I think it was something like a hundred and seventy speakers here at the, at the World's Fair, um, this week.
- 3:16
So, you know, this is kind of a cool example. Um, but, you know, I, I, I wanna highlight how different the world is if software engineering is just this easy, you know, if you can just explain exactly what you want in plain English, um, and, and get that out.
- 3:30
Um, and so, you know, this is obviously kind of a toy use case and it, it's, it's perhaps useful, but we use Devin all the time ourselves when we're building Devin, actually.
- 3:38
Um, and by the way, I, obviously, I, I didn't make this website myself. I just said, "Hey, can you g- build me this website with the QR code and whatever?"
- 3:45
Uh, and Devin built that too. But, um, you know, here, here's a, here's a quick example of Devin, uh, that we're using ourselves in production. And so, you know, if you take a quick look here, for example, there's this whole search bar and, um, there's all the sessions, and you can search across sessions, right?
- 4:00
Uh, Devin actually made that in the Devin repository. Um, you can see here Bryce is on our team, and Bryce was asking, "Hey, Devin, can you go into the Devin sessions list, create a search bar component?
- 4:09
Here's what I need you to do." Um, and so there's a few features about this in particular that are obviously, um, tuned for working in a production codebase. You can see here that Devin started from a snapshot, so th- we have a machine instance loaded where it's cloned from.
- 4:23
It has a playbook, so it knows, like, a lot of the details about our repositories. And then it's also just able to generally work within our Git environment. So you'll see it just make a PR and interact with all those same tools.
- 4:34
And so I'll just kinda go through this quickly. So yeah, Devin says, "Absolutely." You know, makes the first pull request. Bryce continues, and again, you're, you're just giving feedback in plain English, right?
- 4:42
And you say, "Hey, this is a great start. You know, now could you, could you add a magnifying glass, um, and make it idiomatic? You know, use phosphor or luc- you know, it's up to you," right?
- 4:51
Uh, and Devin says, "Yeah, sure, I'll build that." Um, Bryce says, "Oh, by the way, no need to test, you know, I trust you." Um, mmm, and Devin says, "By the way, I'm dealing with a bit of an issue with the login process."
- 5:01
You know, it's just like you're working with, with another engineer, right? And Devin s- and Bryce says, uh, "Okay, bro." Uh, and you know, it kind of builds it all and gets the PR, and this PR was actually merged, and this is, you know, the search bar, right?
- 5:13
And similarly, you know, a lot of the API integrations that Devin has were built by Devin. You know, a lot of our own internal dashboards and metrics tracking within Devin were actually also built by Devin.
- 5:24
Um, and it's been kind of a, kind of a fun one to see, like, Devin building the company with the company as well. Um, so cool. Yeah. I, I wanna talk a little bit about, you know, our journey so far and, and about what's happening in the space as well.
- 5:36
And so, um, you know, we got started back in November, um, so it's been about seven months now. Um, it's kind of funny. We started in a hacker house in Burlingame, uh, and it was basically just a lot of us had already, like, lived together at that point.
- 5:49
You know, we'd all had our own journeys in AI, and we just knew that we wanted to build something together, and we obviously knew that we wanted to do something in code and build a coding agent.
- 5:57
Um, and then that hacker house in the [REDACTED:location]. After that, there was another hacker house in New York. Then there was another hacker house in the [REDACTED:location].
- 6:03
So we were actually-- we, we've been going back and forth between New York and the [REDACTED:location] for Basically the last seven months. I think at this point we are now gonna, like, settle in the [REDACTED:location], but it's been going back and forth and getting, like, a slightly bigger Airbnb each time because the team also gets a little
- 6:15
bit bigger. Um, but you know, why, why Devin in particular?
- 6:20
Um, and, you know, this is, this is a, um, particular question that I, that I'm really passionate about, which is, you know, language models have been pretty big. I, I think that's, that's fair to say.
- 6:30
Um, and you know, the first wave of generative AI is what I generally call these text completion products, right? And you know, that makes a lot of natural sense if you think about it, that obviously the interface of a language model is text completion, right?
- 6:42
You give it a prefix, and it completes the suffix from there. And so if you think about ChatGPT, if you think about a lot of these Q&A products, if you think about, you know, writing marketing copy or answering customer support or even GitHub Copilot and Cursor and, and products like that, you know, obviously very...
- 6:59
You know, a lot of these are really great products and, and, and very natural use case where you have the prefix so far and you're asking the models to complete what's next in the suffix, right?
- 7:06
And it does that for you, and that's a tool that's useful, right? And I think we're entering this new wave where, you know, we're going beyond that and actually introducing some amount of autonomous decision-making.
- 7:17
Um, and obviously, you know, that's typically referred to in our space as agents, right? And you know, there's, there's all sorts of new things that you unlock, right? There's a, there's a lot higher bar of consistency that you require, but there's new things that you unlock with that.
- 7:29
Um, and so it's, it's been an interesting one because it's, it's both a very deep core capabilities question of getting Devin to, to solve these, but also a pretty interesting product design problem because I think the, the UX of agents is, is something that's extremely new.
- 7:43
Um, and then why code in particular? You know, a few different things. Obviously, we're all coding nerds as well. You know, we're all engineers, and so the idea of teaching AI to code is, is, you know, one of the coolest things [chuckles] that we could think of.
- 7:55
But beyond that, I think there's a few particular reasons that code with agents works especially well. You know, one is that obviously there's so much more to being a software engineer than typing the code, right?
- 8:06
A, a lot of the work that you're gonna do is, you know, you're gonna be looking into a bug, you're gonna be looking at the different files of the codebase.
- 8:13
Maybe you're gonna be running this or that command. Maybe you're gonna be pulling up documentation. Maybe you're gonna run the front end yourself to, to reproduce the bug. You know, you look at this thing, you make it-- make this edit, you try it again.
- 8:23
Um, all, all of this work here obviously is... You know, that's what software engineering is, right? More so than just, uh, than just typing the code in the file, um, which leads very naturally to an agentic workflow.
- 8:34
You know, another part which I think is closely related is the ability to iterate with code feedback. Um, and so what I mean by that is, you know, if you were given an entire production codebase and you were told, "Hey, this has this one bug.
- 8:46
I need you to fix it. Here's the bug." Um, you know, and, and it's-- let's say it's, like, thousands of files and, you know, hundreds of thousands of lines of code.
- 8:55
I mean, it'd be pretty tough, honestly, for most humans. It's also gonna be quite tough for AIs as well. And obviously, the way that we do this in practice is, you know, you, you, you go and add print statements.
- 9:06
You pull up the logs. You check the monitoring. You know, you, you jump back and forth between different files. You try and diagnose it, right? Each of these things that you're doing, you know, you're, you're making a decision, and then you're running actual code to find out what happened.
- 9:18
And from that, you're, you're able to iterate, and it just gives you a much cleaner path to solve the problem in front of you. Um, and similarly, you know, that, that kind of lends very well to agents.
- 9:26
And the last thing I just wanna mention is, you know, how fast model agentic capabilities are improving. Um, and so, you know, two years ago, like, even something as simple as, as this name game demo, I think would've been almost unthinkable.
- 9:39
Um, and you know, you think about where things are going and where things are gonna be two years from now, I, I think there's a lot of, you know, the data, the, the, the right training and so on that's, that's really, really rapidly improving in the space.
- 9:53
Um, and then, you know, again, beyond the capabilities problem, there's actually a really deep UX problem as well. Uh, and at a high level, you know, I think what's kinda happening here is when we're building agents, and I think all of us in the space are quite new to agents, you know, the immediate first things I think
- 10:08
to map to are, you know, how we use software today and also how we talk with other humans, right? And so, you know, I mean, even a lot of the features in Devin are essentially looking over your own intern's shoulder.
- 10:19
You know, you can see their computer, and you can see what commands they're running and things like that. The thing is, I think an agent is actually pretty different from both.
- 10:26
You know, there's a lot of nuances and details of parallel work, information gathering, how it manages context, um, et cetera, et cetera, that are super, super different. And it's actually a quite deep problem from a product perspective as well.
- 10:39
And just to give you guys a bit of a sense of that, like, here's just a kind of, uh, a short list of some of the features that we've built into the product.
- 10:46
And so, you know, obviously there's Devin being able to use the shell, you know, edit code, browse the web, but there's all these other things, right? You know, being able to fork and roll back sessions.
- 10:55
You know, being able to handle integrations with Slack and GitHub. Being able to handle playbooks, to, to store machine snapshots, to keep track of secrets. You know, to be able to work with the right tools for verification.
- 11:05
You know, all of this is part of the actual product iteration, right? Which is, you know, on its own, I think already an incredibly, incredibly dense problem. And I think honestly, we're gonna see actually a lot more iteration with that over time, and I just wanted to show kind of, uh, a new feature which we just recently
- 11:21
shipped, which is the ability to use Devin's machine. Um, which is kind of-- a-again, it's, it's the kind of thing that's not always, uh... There, there's not necessarily a, a very close parallel in, uh, you know, in, in the software that we have today, right?
- 11:35
But the ability to just have a VS Code live share in Devin's machine and, you know, if you wanna collaborate with Devin and say, "Hey. Oh, there's this, these couple lines," like, you know, "You should make this edit.
- 11:44
I went ahead and did that edit for you," and you can just talk with Devin and do that, right? Um, so there's a lot more room to go and a lot to iterate on in the space.
- 11:52
Um- One of the thing, uh, of the things I wanted to mention too is just how much, you know, we've seen it changing our own workflow. Um, so you, you guys saw like a simple example of Devin building the search bar, but, you know, we actually handle tasks in a much more async way now.
- 12:05
Uh, one of the cool kind of features of Devin, I'd say, is, you know, if as an engineer you're, you're working on, let's say, four different tasks today, you know, you just give one to Devin number one, you give the second one to Devin number two, the third one to Devin number three.
- 12:17
You have four Devins that are all running in parallel, and it's kind of turning every engineer into an engineering manager is almost how I describe it. You know, I think the Devins are very, like, enthusiastic interns [laughs] is how...
- 12:28
What I'd say. I mean, they, they try very hard. You know, they're, they're... Obviously, they don't know everything. They get little things wrong. They ask a lot of questions, but, you know, you're kind of working with each of them and, and having them iterate.
- 12:37
And so here's just kind of a fun example. I mean, this is literally from, from earlier today. But, you know, we were talking about some particular feature and about what we wanted to build.
- 12:46
In this case, it was a pretty simple thing of changing the color, but it's just as simple as just saying in Slack, in the conversation, "Hey, [REDACTED:username], can you just change this thing?"
- 12:53
And then Devin goes and makes a PR, and then you hit merge, you know? And so, um, you know, we've had a lot of occasions where we're, you know, in the gym or in the car or something, and now you can actually write code 'cause, you know, you can tell Devin exactly what you want Devin to do.
- 13:05
Um, you just don't have your whole computer with you and can't type everything, but, you know, being able to just kind of describe what you want to Devin and then being able to review the code afterward, um, actually works really well.
- 13:16
So what's next? Um, you know, I, I, I think this is a really important question. Uh, and [laughs] obviously, I think the technology's extremely early today. Um, but, you know, where do these things go in a few years?
- 13:26
And also, what happens with software engineering? I think there's, there's been a lot of uncertainty about that question. And, you know, as we're using Devin more and more, I think one of the big things that we see actually is, this is kind of obvious perhaps, but Devin is not the one that decides what to do or what
- 13:42
to build, you know? And there's this core part of software engineering, the way I describe it is like software engineers everywhere, you know, are, are doing really two jobs at once, right?
- 13:50
And the first job is basically problem-solving with code. You know, you, you're, you're given a problem, and you're breaking down exactly what is the solution you're gonna build. You know, what is the architecture that you're gonna use?
- 14:01
What are all the flows and the details and the edge cases that might come up? And kind of architecting your exact solution. And then the second part is once you have that, you know, you're dealing with debugging or implementing different functions or writing unit tests or all of the other things that kind of go into this implementation
- 14:18
of something that you know you want to do, right? And, you know, I think right now the average software engineer is probably spending like 10 or 20% of the time on that first thinking part, and they're spending 80 or 90% of the time on that implementation part.
- 14:30
And, you know, what we really see is
- 14:33
Devin actually just frees you up to do more of the first part, you know? And I, I think the future of Devin, again, it's very, very early, but I think as Devin gets better, we're gonna see more of that, where Devin just frees up the implementation for you, where you don't have to go figure out how to
- 14:45
set up Kubernetes. You know, you don't have to go, like, debug all these, like, APIs that are broken. You know, you don't have to go, like, deal with version changes or migrations or all of these other things that, you know, take up a lot of time in software engineering, right?
- 14:57
But you actually are spending all your time on figuring out how to solve the problems in front of you. You know, it's, it's a little more like, um, a mix between, you know, a technical architect and a product manager almost, right?
- 15:07
And so, you know, I, I think software engineering, the job that we call software engineering, is gonna change. But I think practically, like, there's actually gonna be way more software engineers than ever, you know?
- 15:17
And, and I, I think there's a lot of precedent for that too, you know. Programming back then, you know, used to mean punch cards, and then after that, it used to mean assembly.
- 15:26
And, you know, and then after that, it used to mean C, right? And, you know, as these things have gone on, I mean, most people aren't using punch cards anymore.
- 15:33
But there's actually way more programmers than before, right? And, and I think one of the things that's, um, easy to underestimate is just how much more code there is to write.
- 15:42
Um, and you know, it's, it's, it's funny to think about, I think, because obviously we all love software here in this room. I would say I think software has been the number one driver of progress in the world in the last 40 or 50 years.
- 15:52
And yet despite that, I think, you know, our demand for software to be built is actually probably a lot more than 10X what we're currently getting. Um, and so, you know, I, I think what happens is we, we get to open up the power of software engineering to a lot more people, and every single software engineer gets
- 16:08
to be 5 or 10X more effective. But we actually do a lot more software engineering. Um, cool. Yeah, so, so that's all I had. Uh, but yeah, we'd love to open the floor if there's any questions. [audience applauds]
- 16:25
Yeah, right here in the front.
- 16:27
Oh, I'll shout out. Okay. Yeah. Well, thanks again. This is great. Uh, blew my mind, like, eight times. [laughs] So, um, how do we get access? Like, to me now [laughs]
- 16:36
Great question. Great question. So [laughs] so we've been ramping up access. Um, every, every week we've been letting on more and more people. We've also been sizing up with our enterprise customers.
- 16:45
We have a lot of wait lists to get through [laughs], so we're, we're, we're doing it as fast as we can. Um, but, but we, we'd love to get you guys access as soon as possible.
- 16:52
Thank you.
- 16:53
Yeah. Yeah. Um, all the way in the back over there. Yeah, in the red.
- 16:59
Hey. Uh, so I'm just wondering how much... Like, does Devin have access for running the code whilst in the back end? Like, how are you doing that analysis for correctness for the code in, like, the generation stage?
- 17:09
Yeah, exactly. So in our code base, for example, Devin has all the setup that it needs. It has a machine that's basically instantiated where it can run the dev environment, it can run the server, it can run the front end.
- 17:18
And so if it's... If you're asking it, "Hey, I need you to debug this particular thing," it'll just pull it up itself and then, you know, reproduce it, and then it'll debug it and try it again.
- 17:26
Yeah.
- 17:26
Cool. So it's, like, fully executable.
- 17:28
Exactly. Yeah. Yeah. Yeah. Any other questions? Right here.
- 17:34
So with all the simpler tasks potentially being solved by Devin software, how do we know if we forget about all the juniors, interns that don't know how to code yet? [laughs]
- 17:48
Yeah.
- 17:49
It would be good for you to repeat the question.
- 17:51
Oh, of course. Yeah. So, sorry. So, so someone asked, um, you know, with all of these simpler tasks getting solved, um, what happens to, you know, all the junior engineers or the interns who, who obviously need to learn how to code?
- 18:02
You know, I, I, I think- What happens honestly is I think that demand is going to just keep rising with supply, and I think the training process is gonna change a little bit.
- 18:11
But, you know, I think a lot of these core fundamentals of, you know, if you think of someone as when you say someone's a really great engineer, typically it do- you don't mean that they type really fast, although maybe they do that too, right?
- 18:21
You typically mean that they, they have a really great understanding of problems. You know, they know all the different architectures. They never miss an edge case, stuff like that, right?
- 18:28
And so those are the fundamentals that I think are always gonna matter, and I think, um, basically I think interns or junior engineers are going to get more exposed to getting to use those fundamentals earlier and earlier.
- 18:42
Yeah. Do you think one of the biggest open technical challenges you have to realize this vision of a future suite? Yeah. Okay. So someone asked what are, what are the, the biggest challenges to realizing the vision of a future suite?
- 18:54
You know, there's a lot. [laughs] Um, I mean, it's, it's basically everything as you can ima- I mean, there's speed, there's consistency, there's access, there's integrations, there's the right product UX.
- 19:07
Um, you know, and I think all of these things ... W- one of the cool things I think is just how much of a rising tide there is everywhere.
- 19:13
And so, you know, o- obviously we're, we're gonna do our best work on it, but, you know, every, every new hardware release is, is amazing for it. You know, e- every, every new foundation model that comes out is amazing, you know, every new piece of agentic research.
- 19:25
And I think this is the kind of thing where, um, I think there will be a lot of different optimizations that come in different parts of the stack that make this agentic flow better and better and better.
- 19:35
Um, but, uh, yeah, it, it won't just be one small thing. But I, I think it'll be, it'll be pretty fast.
- 19:41
And that's all the time we had, so thank you so much.
- 19:44
Thank you guys so much. [outro music]