Microsoft execs worry AI will eat entry level coding jobs

4 min read Original article ↗

Microsoft Azure CTO Mark Russinovich and VP of Developer Community Scott Hanselman have written a paper arguing that senior software engineers must mentor junior developers to prevent AI coding agents from hollowing out the profession's future skills base.

The paper, Redefining the Engineering Profession for AI, is based on several assumptions, the first of which is that agentic coding assistants "give senior engineers an AI boost... while imposing an AI drag on early-in-career (EiC) developers to steer, verify and integrate AI output."

In an earlier podcast on the subject, Russinovich said this basic premise – that AI is increasing productivity only for senior developers while reducing it for juniors – is a "hot topic in all our customer engagements... they all say they see it at their companies."

The problem is that AI agents can claim success when in fact the code is bad, with issues such as:

  • Significant bugs
  • Implementing inefficient algorithms
  • Duplicating common code throughout the codebase
  • Dismissing crashes and hangs as not relevant
  • Leaving debug code behind
  • Making code work for specific tests but not generally

The paper cites a race condition that an agent attempted to fix by inserting a delay in the code with a Thread.Sleep, which at best might disguise the problem. Only an engineer familiar with synchronization code has the confidence to "point out the agent's mistakes," the paper states.

The snag is that the natural action of organizations observing this issue is to hire fewer EiC developers. A paper from Harvard University, referenced by Rusinovich and Hanselman, studied the impact of generative AI adoption on job postings, and concluded that "junior employment declines sharply in adopting firms relative to non-adopters, while senior employment remains largely unchanged."

The logical outcome is that "if organizations focus only on short-term efficiency – hiring those who can already direct AI – they risk hollowing out the next generation of technical leaders," Russinovich and Hanselman state in the paper.

The two execs argue that large companies must continue hiring EiC developers, accepting that they initially reduce productivity, and make guiding and training them an explicit goal. In a "preceptor-based organization," senior engineers pair with EiC developers to direct AI coding agents.

Another suggestion is that coding assistants could have an "EiC mode" in which the agent does the coaching – although given the kinds of agentic mistakes Russinovich and Hanselman identify, this might not always work as intended.

In their podcast, the two executives also state that universities do not have the right model for teaching computer science to undergraduates. "You need [some] classes where using AI is considered cheating," said Russinovich.

The paper is presented as opinion from Russinovich and Hanselman, not as official Microsoft research. "While AI is boosting software development, examples of frontier coding agents exhibiting intern-like behaviors demonstrate their limitations," the pair state, reflecting a more nuanced view than that given by the relentless promotion of AI from their company.

It's not clear if Microsoft itself has caught up with these recommendations. In May last year, the company revealed plans to reduce staff with software engineering suffering the largest cuts, and in their podcast, Russinovich remarked "we're starting a pilot on this at Microsoft." Hanselman was asked on LinkedIn whether senior engineers will now be assessed on their human as well as their product impact, to which he replied: "That is our goal."

Meanwhile, things are moving fast in the space. AI coding agents are likely to improve, and according to a recent workshop on AI development hosted by Thoughtworks, junior developers have some advantages when using AI, as they have fewer preconceptions about how coding should be done. ®