The Death of the Junior Developer, and Other Lessons Learned — A Discussion with Gene Kim
Steve Yegge argues that generative AI is creating a sharp divide in the software industry: developers who actively learn to work with LLMs are achieving five to ten times productivity gains, while those waiting for tools to mature risk falling irreparably behind. Drawing on his own return to hands-on coding as an individual contributor at Sourcegraph, Yegge contends that senior developers are the primary beneficiaries of today's AI tools because they can validate AI-generated code, decompose large problems, and manage LLM "assistants" the way a chef runs a kitchen — a workflow he calls Chat-Oriented Programming (CHOP). He also warns that organizations blocking AI experimentation are inflicting serious competitive damage on themselves, while the notion of the "junior developer" as a distinct role is being fundamentally disrupted across law, publishing, and software alike.
In this talk, you'll learn why current LLM tooling favors experienced engineers over novices, what CHOP looks like in practice, how to think about agents versus today's chat-based workflows, and what technology leaders should do right now to avoid being left behind.
Chapters
Full transcript
The complete talk, organized by section.
Host Intro (Gene Kim)
Up next is Steve Yegge, the Cody platform guy from Sourcegraph. Anyone who has studied Amazon or Google probably knows his name. He notoriously gave the world an inside account of the famous Jeff Bezos "thou shalt use APIs" memo, and that accidental post led him to being on the front page of The Wall Street Journal.
I got to meet him several months ago, earlier this summer, and he is as hilarious, irreverent, and brilliant as you might expect. We had this head session where we shared stories about how AI is affecting work, and one particular theme emerged: it seems like GenAI can help senior technologists more than junior technologists. What came out of that was a post called "Death of the Junior Developer." This is really based on what he's seen happening in the industry.
I'm so excited that he presented in August, and since the conference, I've had the chance to pair program with him for two hours. The results were just so mind-blowing to me. I got to build something that would normally have taken me a week.
Steve, I'm so glad you're here. Before we begin, I would be remiss if I didn't ask you about the origin of that famous Wall Street Journal post, because so many in our community were influenced by the teachings in that post, where you described how Amazon responded to over-coupling within the organization and that audacious memo that led to hard modular boundaries appearing between teams. Can you maybe briefly share the story of how you ended up being woken up in the wee hours of the morning by the Google PR team?
Steve Yegge
Sure. Hey, Gene, can you hear me okay?
Gene Kim
Absolutely. Thank you, Steve.
Steve Yegge
All right, awesome. Thanks for having me here.
That was pretty straightforward. I was trying to get what's called a Stubby service, which is now known as gRPC in the open-source stuff. That word "Stubby" is proof that this was actually intended for internal and not external use.
The Code Search team, bless them, wouldn't give me an API. They wanted me to use their product, their tool, and screen-scrape it or wrap it or something. I was like, what? So I started complaining to one of my coworkers. I said, "You ever have one of those days where you just feel like everyone's against you?" And he was like, "No." I was like, "I'm going to go take a break."
So I went home and started drinking, and I was pretty thoroughly drunk by the time I hit the send button. The rest was history.
Gene Kim
One of the things you were complaining about was that there was no internal sandbox environment for Google+, unlike almost everybody.
Steve Yegge
There wasn't. They were like, "Oh, we don't need that." It's funny how fast they decided they did need that after my post.
Gene Kim
Thank you for that amazing post. I'm so glad it's been archived, since that original post has been taken down.
Can you tell us about what you're working on at Sourcegraph? One of the things I'm just super interested in is that you chose to go from engineering leadership to becoming an individual contributor. Why did you do that? How's that working out? Any surprises on that journey?
Steve Yegge
Wow. Gosh, yeah. I didn't really expect you to ask me about that.
I was the head of engineering and vice president of engineering at Sourcegraph, and I was also a VP of engineering and head of engineering at Grab before that. I've had a long career of engineering leadership and tech leadership.
This was a different situation, Gene, because AI is different. I realized, man, I have to get back into the fray. Honestly, if I had not made this transition -- I just went to my boss and said, "Dude, I have to get back to coding again." He was like, "Okay, we'll figure that out." We did some juggling of roles and stuff.
That's the way I figured out the material for my post, "The Death of the Junior Developer." I was doing it myself. I wouldn't have known otherwise.
Gene Kim
Can you say a little bit more about the why? In other words, you felt like you had to go back to being an IC in order to get the hands-on experience of this crazy new thing. Is that what I'm hearing?
Steve Yegge
Yeah. Because it's changing so fast. It was hard to keep up with it. If you're one or two layers removed and you're asking people, "How does this work? How does that work?" and trying to put it all together in your head, you can do that if you've been working with these systems forever. But these are new. I didn't have the intuitions for it.
So yeah, I think it was right. I haven't looked back. It's been great. I'm so excited.
Gene Kim
That's fantastic. In your talk, you made the claim that coding is shifting out from underneath us. Can you say more about that, and why you believe that so strongly for maybe the unconverted out there?
Steve Yegge
I mean, Ido just said it, right? He's on point. The chat and completions modalities are maybe not the future. It's a complicated problem for all of us. I could talk your ear off about that, so I don't know if you want to get into that yet.
Gene Kim
Just maybe substantiate the claim that the nature of coding is changing dramatically.
Steve Yegge
Look, Jan said that too. He said, "The tools today are appropriate for people like me," and he pointed at himself, meaning Eugene, me, Steve, him, Ido, senior devs. He said, "We want to make the tools work for everybody no matter where they are in their development." That's lovely and all, but that's going to take years and years.
Why? Because it's an engineering challenge, not an AI challenge. It's an engineering challenge to wire up, to make the LLM a puppeteer that can actually use your IDE on your behalf.
The first thing that we've seen is the inline-edits feature of our coding assistant that you used during our pairing session: the ability to go in there and have the LLM make targeted changes in different places in a single file. But then Jan brought up, what about if there are multiple changes to multiple files? Now you've got a list of changes to work with, and it's a batch thing, and it starts to get more complicated.
This is just straight-up IDE coding. This is tools coding. It's not just your IDE. You have to teach the LLM, you have to wire it up to every single tool on your desktop, everything available to you, in order to have it help you do your job as a developer. You have to do that wiring, and that's going to take years.
In the meantime, everybody who can actually do that hard thing that Ido was talking about, which is have chat solve your problem for you, actually, and then you go and do the last mile of copying this stuff in -- if you can type fast and you can read fast and you can think fast, which is all true for what I would call senior developers, or more like a whiz developer, it is not really a function of how much seniority you have. It is partially a function of how much seniority you have, but it's also your aptitude for how you're picking up this AI stuff. Do you have your head buried in the sand, or are you going after it?
There's an opportunity today for people who actually want to learn how to do this without waiting for the tools. You don't want to wait two or three years for the tools to be good enough. You want to make it work now, because the LLM can solve your problem no matter how big it is, as long as you chunk it up into the right set of smaller tasks.
Gene Kim
You had made this claim, so let's talk about whether the juice is worth the squeeze in this difficult period where the tools aren't perfect. You said that for senior developers, there can be a 5x to 10x productivity improvement. I felt that when we had the assists working so much in your favor. Can you substantiate that claim, or why you believe that claim?
Steve Yegge
I've been programming all year now using this stuff, and it is spiky. Sometimes you get a 5x or 10x boost or bigger, and you're like, whoa. That's what gets you hooked on chat coding in general, because you can get those big spikes. Then sometimes it's only a 2x boost, and sometimes it's a wash, and sometimes you even go backwards with chat.
It can be a little frustrating. That's not a workflow that's really settled in with a lot of developers. A lot of developers were weaned on IDEs where everything is perfect, all the refactorings are guaranteed to compile, you can trust it, and blah blah blah. In the new world, there's no trust.
Every single answer that you get from an LLM is going to be partly wrong. You can't just assume that sometimes it's wrong and you'll notice, and sometimes it's not. You need to build in validation as part of your workflow more deeply than you did before. You should have been doing it deeply before with unit testing and all that stuff, but you've got to do even more validation now, because the LLM could be giving you code that's wrong.
Again, that's an area where senior developers can just look at the code and say, "Oh yeah, it does what I asked, but it's also terrible, terrible code." A junior developer might not know that. We may be entering an era where people are checking in terrible code that works.
Gene Kim
I think I'm going to attribute a quote to you and combine it with Simon Willison, who said LLMs are like super summer interns that have infinite energy, are infinitely fast, never get tired, but also might be hopped up on hallucinatory drugs, and so cannot be left unchecked. Did I get that gestalt right?
Steve Yegge
Yeah. I call it Chat-Oriented Programming, CHOP, because I like the kitchen metaphor. You're getting in there and making stuff happen with a bunch of assistants that are really good at cooking, but they also have their own ideas, and they want to add really weird ingredients to their part every once in a while.
You're running around the kitchen as a CHOP programmer, basically having your assistants -- the LLM parallel tasks that you're managing -- and you're making sure that they're cooking something delicious, that it's a delicious meal. They're able to do it, but they're like children in a sense.
Gene Kim
I think I lost your audio. Nope, or it might be my headphones. Keep going. Sorry.
Steve Yegge
It becomes this sort of babysitting exercise. You have a really smart junior developer, or a team of them, at your disposal as a developer. This is a new workflow that developers aren't used to either, having assistants. The whole thing is new, and everybody is going to have to learn how this stuff works.
You can sit back and try to be patient and say, "I'm going to wait for the tools to get better." But what's happening is all of the savvy developers, all the ones who realize this is speeding them up in those 5x to 10x spikes -- and remember, those spikes are getting wider and closer together, so more and more of the time we're seeing 5x to 10x improvements -- there are people out there doing that today.
Now we've got this dichotomy in the industry of the wait-and-see developers, who all lump into the junior category, even if they've been in the industry for 30 years. You're pretty junior if you're looking at AI today and going, "I'm going to wait and see." Then you've got the early adopters, the people who are confident, who are going to learn new things, who are learning how these tools work and making the tools work for them. They're the ones that are pulling ahead and surviving. That's what's happening right now. You have to be on the right side of that divide, or you're going to get left behind.
Gene Kim
To recall one of the provocative statements, one of many provocative statements you made in that presentation, the organizations that prevent their people from exploring these new technologies are at grave risk, right?
Steve Yegge
Oh yeah. This is a serious problem. There are companies out there who are only just now beginning their AI evaluations, and they haven't allowed any of their developers to use any GenAI for coding at all so far. These are big names. They're so behind the eight ball, and they don't realize how much untold damage they're doing to themselves, because their competitors are way ahead. They're doing sci-fi stuff with the APIs that we've given them.
Cody has a really cool API to wire up your own context. Ido brought this up as well. The tools are trying to do a good job of showing you the context, finding the context automatically -- that's RAG -- and also giving you the ability to manually manage the context yourself as sort of a workshop. That's a new thing, context management, that the tools are starting to do.
There are people who are on board with it and they're running with it, and there are people who have no idea what it is. It's shocking because the people who are on board with it are flying right now.
Gene Kim
By the way, I mentioned John Willis, a friend of mine and co-author in The DevOps Handbook. He said day two of the Enterprise Technology Leadership Summit felt like being at the Velocity Conference in 2009, where John Allspaw and Paul Hammond gave the famous "10 deploys a day" every day at Flickr talk, where it seemed so outrageous, so irresponsible, so outlandish, and yet it changed an industry.
Before we talk about the pair programming session, let's talk about your "Death of the Junior Developer," because it led to so many interesting conversations for me. Can you tell me about why you wrote the post and the ideas that you wanted to convey in that post?
Steve Yegge
The primary idea is that LLMs are going to be writing all of our code sometime soon. We can't predict exactly when, but for some people it's kind of happening already. With Chat-Oriented Programming, you just have the LLM do everything for you, and your job is to pop it in there, wire it up, and make sure it works. A very different kind of job.
I've talked to a bunch of very senior, very smart, seasoned developer friends of mine who've got just as much experience as I have, but they've been programmers for much longer than I have because I spent a lot of my career being a leader. These folks are telling me that they feel like they've switched over and feel like a nanny, almost like a code nanny. Like you said, we have these assistants running around now that we can make do the work.
I started hearing that from more and more people. Then I was talking to Eugene, and this is how it actually got started. You said, "You know what, that's happening in other industries too." I'm like, what? That's when we had that conversation where you told me all about the legal firm. Do you want to share a little bit about that for our viewers?
Gene Kim
I have a friend, a managing partner, or was a managing partner, at a 50-person law firm. I asked him how he's using LLMs. He said, "Yeah, I'm doing a lot of work myself using LLMs that I would normally give to an associate."
One of the things that was so interesting was his adamant declarations that, as an associate, if you're going to use an LLM, you have to declare it. And two, you have to check your work. No one is going to check your work for you. It struck me as so familiar: no one's going to test your code for you, no one's going to secure your code for you. Just the eerie familiarity of that. Back over to you.
Steve Yegge
You were seeing it in editing as well, in publishing. It's happening all over the place as LLMs start to take on lower-level work that can be handled up to a certain granularity. Then they'll poop out, which is why, by the way, I don't believe in agents.
I think everybody working on agents is kind of ahead of their time. It's not like agents will never work, but if you're trying right now, it's like you just discovered 3D printing and immediately went and tried to 3D-print a car. You can't 3D-print a whole working Cadillac SUV. You have to build it a piece at a time with real people in a real assembly, maybe robots or whatever. The 3D printer's not going to do it for you. It does pieces of it.
That's what Chat-Oriented Programming is. It gives you big building blocks and pieces, but you still have to build the car.
People don't understand that. People went after agents because everybody understands there's a task graph, and anybody who can traverse that graph and do pieces of the task can help automate part of the graph. People realize LLMs can do this, but everybody has read way too much into it. They think that's the next evolution, and a lot of people are worried that agents are going to replace programmers.
What I believe agents are going to do is speed up Chat-Oriented Programming. They're going to speed up CHOP by making it easier to get those big pieces that you would have had to do by hand. That's it. You're still going to be a programmer for the next four or five years at least, maybe longer, which is infinite in our timeline.
Gene Kim
As you said, if you haven't tried these tools since February, that's so February.
Steve Yegge
Oh my gosh. At this point, if you haven't tried them since May, you're behind.
Gene Kim
There's a story that you told me that I found just head-spinning. Can you tell the story about your head of AI and the project he undertook? I think it says so much that's important for technology leaders.
Steve Yegge
Like I told you, a bunch of really smart people who are really experienced are adopting this, and they're finding these 10x speedups. I was talking to our head of AI, Rishabh, who was showing me a context ranker that he had put together. We'd been talking about a context ranker forever. To do a ranker, to train a model and do all that work, it's a task. It's a challenge. It's not hard; you would give it to an AI intern. But it would take them six weeks, after hiring the best AI intern you can find.
He did it in an afternoon, less than an afternoon. He was so excited to show me. First he showed me the tool, and a lot like your tool that we did in the pair session, Gene, it was a good tool. I was like, man, this is really doing the job. Good job, your team's got a great tool now. And he's like, "I did this yesterday." I'm just like, what?
He said this would have been a six- to eight-week intern project before, and for him it would have been probably at least a week. He got it done in a day. So there's your 5x to 10x speedup right there.
Gene Kim
I felt like that was one of the messages in the "Death of the Junior Developer" post. This is what Dr. Matt Beane, who will be speaking momentarily, calls the novice-optional problem. If I could recast and confirm that this fits your story: your head of AI, Rishabh, did something that required a novice, required a team until very recently, where now he could do it himself. This is the spot that technology leaders are increasingly going to find themselves in. Does that resonate with you?
Steve Yegge
It does. It's spot on. It's a very uncomfortable place for us to be in right now. The industry is in an uncomfortable place. It's concern. Everybody's worried: are junior developers going away? Do I have to relearn my job? How is my job going to be changing? We had a lot of those questions at the webinar you and I did. People are really concerned about it.
But it's the reality. Stuff is changing, and you have to change too.
Gene Kim
We had a chance to pair together for two hours. That came about because the challenge you gave me was: is there something that I want to achieve in two hours? I'm like, holy cow, yes.
In a talk, a podcast, and a YouTube thing, I've been using LLMs to take the screenshot, extract a podcast name, episode name, and most importantly the current playtime. I wanted to generate these video summaries. It was something that I knew maybe I could have given to a summer intern and it would have taken a couple of weeks, but it was just never a good month for me to work on it.
It was amazing to me that we actually built something. My first attempt was a lecture by Dr. Erik Meijer, one of the most prominent authorities in programming languages -- contributor to Haskell, Visual Basic, and C#. I got to post the summary. It was great. It got 200,000 views, and most importantly, it got a reply from Dr. Erik Meijer saying, "Great work. That was a heck of a summary."
One of my main observations, one of the most memorable moments for me, was when you said, "Gene, you're doing an awful lot of typing. You have to lean on that LLM more." What were some of your observations and takeaways, and maybe beliefs that either got confirmed or disconfirmed?
Steve Yegge
Did you say 200,000 views?
Gene Kim
Yeah.
Steve Yegge
Man, you are just so famous, Gene. It's so awesome.
Gene Kim
That was lucky. I chose the right talk, I suppose.
Steve Yegge
Okay, rephrase the question. Make sure I understand.
Gene Kim
What were your observations watching people try to do this for the first time?
Steve Yegge
It was so shocking, because you were the perfect audience for this. You're a senior, seasoned developer. You knew what CHOP was. You heard my talk. You have hundreds of hours of Copilot experience. You were working on a codebase that you were familiar with already, because you had written it. You were the perfect audience for this. You knew what CHOP was, and you sat down to do it, and you weren't actually doing it.
It was because the tools aren't intuitive today. The technique isn't intuitive today. Like I said, it's an uncomfortable place for us to be in. You found that discomfort. Even so, you got the entire project done in two hours-ish, three counting all the chitchat that we did.
There were a couple of observations. One was that it worked. That's the big one. We actually proved to ourselves that this is real. Two is that it was hard as hell for you. So imagine how hard it's going to be for the average Joe developer who hasn't been following this stuff and doesn't know all the tips and techniques and tricks. I can't even imagine. It was a really eye-opening session that we had.
Gene Kim
It's so great. We recorded the whole thing, and I'm hoping we'll be able to release it with some editing. Dr. Anders Ericsson, who studied skill acquisition -- playing a musical instrument, sports, et cetera -- one of those things is you need fast feedback and you also need a coach. That was such a tremendous experience. If you're interested in that, put that in the Slack and we'll put you on a list.
One of the things you kept saying during the pairing session was, "Ah, dev UIs are still so far from where we need to be." If you could wave a magic wand, what would be the ideal dev experience for you?
Steve Yegge
Wow. Well, I am waving that magic wand. That's why I gave up my engineering leadership role: to go grab a wand of my own so I can help build it.
I have a pretty clear picture of where it's going, but it's years out. It's going to take years for us to get to the point where the LLM can truly get all of the context it needs. Obviously I don't want to be doing copy and paste myself all day long. CHOP is not an ideal workflow right now. Ido nailed that. CHOP is not a great form factor today. But it's inevitable that it's going to be good at some point, and the tools will get better.
Honestly, I just want to talk to my computer now like Star Trek.
Gene Kim
Typing is often a bad muscle memory. What help are you looking for these days, especially in this community of technology leaders?
Steve Yegge
We need to drive this stuff forward. This is our ticket to getting productivity unlocks that we've been waiting for for 40 years, since we switched from assembly language. This is the big one.
Everyone should speed up your AI evaluation. Get a coding assistant; it doesn't matter which one. As an industry, we need the feedback from you. What's working for your orgs? What do you need? Over in Cody land, we've been doing a ton of enterprise stuff, and we've got a bunch of great enterprise features. But we want to hear from individual users too. What do you want? I know what I want, but I want to hear what you want.
Gene Kim
Fantastic. We know how to reach you, Steve. Thank you so much for joining us, and looking forward to more fun adventures ahead.
Steve Yegge
Looking forward to it. Thanks for having me.
Gene Kim
Thank you, Steve.