¶ The Foundation of Support
I had a young lady on my podcast a couple days ago, on my other podcast, who is a year and a half into being an engineer. She went to Oregon State. She got her computer science degree. She's done a half dozen internships at Meta and Apple and LinkedIn. And now she's working full-time as an engineer. And it seems like the only reason that she's doing so great is that she's just got a really great team.
She's got a bunch of people that want her to succeed. And I feel like that happened to me as well. Like I'm okay now because the first five years of my career, I had cool people. Like me? Much like you. Exactly like you. But you know what I mean? I want everyone to have that level of support. So...
Do you think that early in career people have that supportive network and that supportive moment? Like I met this young lady, it's 2025. She's thriving because her team is awesome. I feel like when we give people titles like intern or apprentice. and then say, get in there and grind, pull yourself up by your own bootstrap. It's not exactly a supportive environment. We need more structure for them to understand how to become a senior. Well, we've talked about this a lot.
software organizational structure has emerged as a pyramid, like many in many professions. And you hire junior people and early in career people. to augment your capacity, to take on the small tasks that the senior people would rather not do, because they focus their attention on more complex tasks. And the junior people get experience.
And then they get given more and more complex tasks. And so they start to grow and eventually they move up and to the next levels of the hierarchy. And some of them move up and some of them don't. And eventually you get this pyramid structure. The senior people that have been coding for 20 years and now they're in management roles, they understand codings, they can spot BS, they understand constraints and how to organize software projects.
¶ AI's Impact on Engineering Careers
With vibe coding, we run into this risk of the seniority bias. In fact, there was a paper from MIT a few weeks ago that came out. that showed that there's seniority bias already emerging in AI-first companies. And what the seniority bias they see is that they take a look at a bunch of different sectors. And they identify the companies that have leaned into AI and look at their hiring trends over the last year or so, and ones that aren't leaning into AI and look at their hiring.
And they see a shift away from hiring junior, early in career people on the AI companies. Is it a conscious shift? They're deciding or it's happening? I mean, I don't know if it's conscious or not, but it's happening. You can explain the reason it's happening is because if you and I, we talk about our vibe coding, we're great at vibe coding and very productive because we spot the nonsense of...
The BS detector is fully... Not the BS detector, but the, oh crap, the AI stuck. I know how to unstick it. Like, oh, you ran into this race condition and you're sitting here... flailing about? Well, how about if you just add some debug traces? How about if you add a sleep so you can force the raised condition and then you can see, better understand it. How about if when the thing is crashing, how about if you look at the dump of the crash?
How about when it hangs, do you get a crash dump and look at it? That's only because we've seen it before, right? Like sometimes being an old programmer, the privilege of being an old programmer is you're old. You've seen it before. Exactly. So you need an opportunity to see that. How about you call it later in career? Sorry, I apologize. Later in career. But I keep coming back to like, why are we doing okay? It's because we're still here. So the trick is to keep as many juniors.
here, not having them drop out, not having them lose their jobs, not having them leave, not having them not get the skills. The worst thing I hate seeing is someone who's been in the biz five or 10 years. And you can tell that they're missing a whole series of fundamental skills. And it's like, oh man, you didn't have the opportunity to learn running a production system. You never carried the pager. And going back to what the trends will be with AI.
augmenting senior, seasoned people, experienced people, people with experience because they know how to use the AI effectively, whereas early in career. They don't know what they don't know. So they're not as productive. In fact, they can slow down. And it's easy to see how they can get slowed down. One of those examples of the race condition.
that we talked about in part one, where it put in a sleep. And now the preliminary tests pass, but now it's in production and the thing fails because of the race condition. And they have no, they're like, the race, you know, it's fixed. It's failing, but how do I fix it? And the AI is like, well, let me sleep longer. Let me extend the sleep. And so that masks it. But they are effectively stuck at that point in really fixing it.
Whereas a senior person's like, well, that's a stupid thing to do in the first place. Never let it go into production. So the incentive is just to hire people that are experienced because they're the ones that are going to get what I call the AI boost. And the early in career people are going to get an AI slowdown, actually, because they're going to hit these problems and have- Which is similar to the Google slowdown.
that you get when you're early in career and you spend three hours Googling and you run down a forum thing and it shows that you fundamentally don't know what you're doing and you're grasping for straws and now you're just grasping for AI augmented straws. We need to come up with a better name. So AI Boost, what's the counter to that AI? Delay? I don't know. Tell us in the chat what you think. Because Mark and I are working on a paper.
¶ The AI Productivity Trap
about the software engineering profession. And we all know that we're at an influx moment. We're at a moment, a pivotal shift in what's going on. And we've got- I'm thinking about inflection. An inflection point. Not influxes. We have an influx. We are facing an influx. Influx of what? Of nonsense, of AI-generated sloth.
Slop, yeah. So yes, pardon me. Yes, not an influx of AI slop. But yes, we're at an inflection point from a hiring perspective. We need more people. We need people to have a talent pipeline. Yeah, exactly. We need more seniors. And the only way you get seniors, we keep talking about how we're going to discover them. Like there's some cache of senior people that are just out there. There are.
Of course, the layoffs right now are a challenge, but even senior people are struggling because they're looking at AI and thinking that they're being replaced by it. We don't know what our jobs are going to look like in three to five years, and I think we're all struggling with that. So we have a paper here, and in some of the sections of the paper, one of them is implications of coding agents on productivity.
And we filled the paper with references to a lot of the people that are thinking about this space. We both have referred to AI coding agents as enthusiastic interns. And even though we don't like to anthropomorphize. That's a common way people are viewing it. Is that a good way to think about it? Absolutely. But it's interns that don't learn, too, because you tell the AI one day, hey, that's not the way to do race condition.
Two days later, the AI is going to do it again because it doesn't remember that. Unless you put it in your coding instructions, but you can't put the world of tips and tricks and everything in your prompt file for the AI. Effectively, they just don't learn from the mistakes or from your guidance. They're interns that never learn. So then every developer will become an engineering manager of a team of interns.
that don't learn. But we need to bring in interns and juniors and apprentices that will learn and give them a different space in which to learn. They're going to learn differently than we learned. We learned by reading books. and suffering and writing stack overflows and things like that. You said that the value of AI is unlocked by experience. We need to give them experience. We need to give them experience and we need to...
¶ Redefining Senior Engineer Roles
Give them the room to do it. So in this world, and in fact, I had somebody on my team early in career. I had a check-in with them, and they were, after we did the how are things going, she said, I got a question for you. I'm early in career, just out of college a few years. I know I'm an experienced programmer. I know that you and the leadership, Satya, you, my manager, are all saying use AI. But how much should I rely on AI?
Because if I'm using it, I'm not going to learn. Very thoughtful. Incredibly insightful. And reinforced because we'd already been talking about this. If they're using AI, they're not going to learn. In fact, they're going to get slowed down when the AI makes mistakes and then they're trying to go figure out how to unstick it and they don't really know how to. So my recommendation then is...
We should not view the early in career people. We're going to have to shift to a model where we're not hiring early in career people to augment our capacity. Because the AI interns are doing that job that they're human. early in careers would normally have done. And the early in career people need to be given opportunities to learn with AI, but they're going to be slower than perhaps were in the past.
because they're learning new things and learning AI. And we have to just accept that. If we hire a Hanselman, that's going to be the equivalent of today's 10x developer with AI. I got an email. today with feedback for the show and someone had said that they didn't like that term 10x that we talked about before. And I know it's a shorthand and I don't want to derail too much, but like, is it?
helpful or good or problematic to refer to people? How do we talk about an AI boost? Let's say that AI is going to boost the productivity of somebody that's been in a software... programmer today, a tougher programmer that's been in the profession for 10 years, and you're going to get a 5 to 10x boost from AI. If you're shipping productivity, yeah, I mean, it depends on what I'm shipping. But an early in career person...
is going to have a 1.5x slowdown because of AI. So who do you want to hire? By the way, the 10-year person is doing all the jobs at the new... career people were doing because AI interns are doing that work, setting up the build pipeline, doing the other kind of tasks that go along.
The glue work. Yeah. Right. And we are proposing in this paper and we're proposing generally and publicly that to do that, to focus on your seniors and giving them a boost may be exciting, but it is ultimately short-sighted because... It's short-sighted for your organization. It's short-sighted for the whole industry. It's very short-sighted. So the industry is going to change and we need to have a formal knowledge transfer.
enhanced by AI between the seniors that know what they're doing right now and the early in career. And it might be simplistic to just call that an internship. Like, we should formalize internships. I think it's more than that. I think we need to make sure. Or an apprenticeship. Yeah, or an apprenticeship, an internship, moving someone to the journeyman. You and I have gone back and forth about whether I'm parsing the words too much.
and I'm interested in folks in the chat what they think, but I feel like if you put the honest on the senior to pull the junior up and give them a title to indicate that they're now a teacher, they're a proctor, they're a preceptor. rather than labeling this person an intern or an apprentice. And then you would actually...
metric and reward the senior for the more juniors that they brought up. Like if one senior is just chewing them up and spitting them out, you're like, hey, you're probably not right for this job. You shouldn't be teaching. So we need to find the best senior teachers. I definitely think that that focus on the teacher and making it clear, and our internal discussions at Microsoft are, yes, in fact...
That should be their primary job responsibility. Yes, they should still continue to code and contribute to the project, but that's not their primary role anymore. Their primary role is bringing up the junior people, sitting side by side with them, teaching them the system. looking for their weaknesses and helping them grow in those places. So that, like, let's take that vibe-coded, you know, website that from last episode we talked about that's growing over time.
Somebody needs to understand that site so that when the AI fails at it or the system fails in some way, they can figure out what's going on and what to do. They need to be mentoring people to take over that. transferring that same knowledge, like you said, about how the system works. And so that requires sitting down by giving them bigger and bigger tasks, having them use AI, but having AI also teach them at the same time.
I mean, right now we don't give the seniors enough space. They're chipping. Yeah. The juniors are getting chewed up and the seniors don't have time. to sit with them. But if it was their primary job function, if the idea that you're not a principal engineer, you're a principal engineering manager, you're a principal engineering preceptor, you're the teacher and you're going to manage by walking around.
making sure that it is now not a part-time job. It is a full-time job to make sure that the early in career engineering practitioners are guided and grown and they learn the production function. Yep. And I think...
¶ Challenges and Long-Term Investment
So we're starting a pilot on that at Microsoft. When I talk to, by the way, this topic is a hot topic in all my customer engagements. A topic of... AI boosting and what's it doing to software development comes up. And when I share these insights that we've had of the 5 to 10x boost for somebody that is senior or experienced,
1.5 to 2x slowdown for somebody that's early in career, they all say they see it at their companies. And so they're very interested in our thinking about this kind of model. And I'll caveat this, we talked about last episode about... making declarative statements and then retrospect being completely wrong. I'm open, and I think this is part of our growth mindset, Satya would call it, to being wrong.
to not having the right formula here for this and learning as we go. Yeah. I have found in the pitching of this idea, as we've been kind of shopping it around, both internally and externally, that... it is easy to just say oh so interns like you want like more apprentices because everyone's done that before oh it's a boot camp it's i
It's not. It's inverted. It's changing the job of the senior. And if you think about this case of learning the code base, learning the system, it can't be an internship. That takes a lot of time and experience and energy. To learn the whole system and how it works and the reason why things are the way they are and the complex interactions and have that world model.
10 microservices that we've got at play here, and these are the different roles, and here's how they interact. And if you change something over here, well, that has ripples through the whole thing. That is what Preceptor has to download. And there's a scope, there's a time scope as well. People want to do these things in 90 days. Everyone, oh yeah, they're an intern and they're an apprentice, they'll do a 90-day program. This is a year, two, three, five years. Yeah.
My instinct is that this is a three-year thing. Three-year? Yeah, I think it's an investment. I don't think... Okay, so then here's a question then. What if you're a small company? What if you're only 10 people? Big companies can absorb... stuff like this? How would a small company run a pipeline like this? Well, actually, that's an interesting question. And I actually think that small companies don't have to face this kind of problem. It's when you start to get medium-sized.
When you have complex systems and you've got a longevity where you have to have this knowledge download, the system architecture is complicated, it's evolved over time. When you're a startup, I wouldn't do this. There's no point in doing it. Who should the startup hire then? Medium? Yeah. Medium experience. I wouldn't hire early in career at a startup.
I'm saying, by the way, this is all smeared across time. Today, maybe I would. In a year or two years as AI agents become even more... When AI is everywhere in engineering. I wouldn't because it's just going to slow you down and you don't need the talent pipeline as a startup. That's a problem for the future. It feels like traditionally...
early in career people have been hired by small companies and then they build up to the large company, you're almost implying that large companies should start hiring early in career and training them. And then they can go off and do startups.
¶ AI for Guided Learning and Education
Which is the inverse of what we do now. I mean, that's why you need, for every senior person you've got, you probably have to, you still have to have, you don't have the 100 to 10 to 1 kind of pyramid anymore. Right. It's a lot more narrow, but you need some expansion at the bottom. Hey, I'm going to hire four people for every senior that I've got to grow them because I know that two are going to go do a startup.
one is going to decide that this is not for them. Yeah. And we also propose that the way that models, coding models, talk to the engineers would be different for juniors versus seniors. Like I'll tell... I was telling a Claude Sonnet model on GitHub Copilot yesterday to stop being so sycophantic. You need to put that in your Claude instructions. You're absolutely right. You know what? If you just told it...
Tomorrow it's going to do it again because it won't remember. I know. But the argument being that... Could you make a model that is explicitly supportive of early and career engineers? Because I've done talks on how early and career engineers should prompt and should talk to the models so that they might learn and prompt, no pun intended.
reflection prompt explanation and uh not every model works for every i think absolutely early in career to make to learn while they're using ai and again in that um that model where, hey, we want you to learn, that's your primary job, is learning, not necessarily number of lines of code you're putting into production. I imagine, and already we're talking with GitHub about this, of...
The agent is saying, when the user comes and says, hey, go write a function that does this, the AI can say, oh, why don't you sketch the outline for that for me first? Or... Here, I'll go do it. Now explain to me why I did this thing and how it works. So interactive, and this is like Conmigo, which is the educational chat bot that helps students learn math and science in that same way.
Instead of giving them the answer, kind of guiding them through the thought process to get the answer, quizzing them about how deeply they understand the answer, and building up, by the way, knowledge about where their weaknesses are. I think you seem to need the same thing here. So this, that model, that kind of model, I think translates really nicely. So as we end, we're at an inflection point.
What should university students that are studying CS right now, sophomores, juniors, seniors in CS, be thinking about as we are in that point? So this actually, I have a friend that's got a student in computer science that's a junior, and he said he was talking to them. Instead of asking them, do you use AI? And he says, yeah, a lot of my fellow students are using AI. I don't use AI because I want to learn the hard way. I think both is the right answer, though. I think it's both.
Here's what I'll tell you. Right now, I think that universities don't have a good model, you know, consistent. No, they're behind. Academia might, but like research level academia. We're not for teaching. Not for teaching undergrad, right? Not for teaching undergrad. And actually, I think what is coming to view for me is that you need classes where AI is considered, using AI for certain projects or certain classes is considered cheating.
And not to say that you don't have classes and projects in some classes where the student is told to use AI, but you need to have the main... basis for the education on computer science and programming to be AI-less because that's the only way the student's going to learn. I've been saying drive stick shift and I get told that I'm being gatekeepy when I say that. I don't think you are.
There was a great study of a couple, three months ago from MIT where they took, these are not students, but they took people in careers already in the workforce and they divided them into three cohorts and had them write. essays from the SAT. And they had one cohort just do it with their own closed book, just write the essay. They had another cohort that got to use Google, and they had another cohort that got to use ChatGPT.
And they looked at their EEGs and they quizzed them afterwards, right after, and then like a week later. And the results were exactly what you would expect. The people that wrote it... could answer questions about what they wrote, even a week later, and their EEGs showed that they were burning a lot of wattage. The people that were using ChatGPT, an hour after they wrote the essay, they couldn't remember what they'd written.
That's the thing. It's just not even there. Yeah. That makes me really sad. I very much enjoy using AI to brainstorm, to plan, but then I want to do the writing part. to vibe your way through life has me concerned. Well, it's just lots of critical thinking. And they call this critical thinking deficit is what it's creating. Which we already have from social media. Yeah, we already have.
And if you're talking about the early in career programmers that we've been talking about, wanting to hire at a company, you want them to know what a race condition is. You don't want them to have vibed it and AI is like, you know, a race condition, AI will fix that. Because... at some point as we've said i think with the limitations of ai and software program at least for the foreseeable future somebody needs to know yeah well we are interested in what you think
Please, comments are appreciated. We read every single comment. And if you think this is an interesting conversation, certainly we'll share the paper as it makes its way out into the world and we're shopping it around. But we're interested in your thoughts. And hopefully you'll subscribe and you'll share this podcast with your friends and colleagues. As always, thanks for hanging out, Mark. Yeah, thanks, Scott.
