In a competitive market, companies pay wages equal to Value of Marginal Product of Labor (VMPL) = P * MPL (Price of marginal output * Marginal Product per hour). (In programming, each output is like a new feature or bug fix, which don't have prices attached, so P here is actually more like the perceived/estimated value (impact on company revenue or cost) of the output.)
When AI increases MPL, it can paradoxically decrease VMPL by decreasing P more, even if there are no new entrants in the programming labor market. This is because each company has a limited (especially in the short run) set of high value potential programming work to be done, which can be quickly exhausted by the enhanced programming productivity, leaving only low-value marginal work.
A more detailed explanation expanded by AI from the above, in case it's too terse to understand.
Let's unpack why programmer wages might stagnate or even fall when tools like AI dramatically increase individual productivity, even if the number of programmers available hasn't changed. The core idea lies in how wages are determined in economic theory and how hyper-productivity can affect the value of the work being done at the margin.
1. How Are Wages Typically Determined? The VMPL = Wage Rule
In standard economic models of competitive labor markets, a company will hire workers (or more specifically, worker-hours) up to the point where the value generated by the last worker hired (the "marginal" worker) is just equal to the wage that worker must be paid. This value is called the Value of Marginal Product of Labor (VMPL).
Let's break down those components:
So, the rule is: Wage = VMPL = (Value of Marginal Output) * (Marginal Output per Hour).
2. How AI Creates a Potential Paradox: Increasing MPL Can Decrease Marginal 'P'
AI clearly boosts the MPL part of the equation. You get more done per hour. Naively, one might think this directly increases VMPL and thus wages. However, AI's impact on the marginal 'P' is the key to the paradox.
Here's the mechanism, focusing solely on the existing workforce (no new programmers):
3. The Impact on VMPL and Wages
Now let's look at the VMPL for that crucial marginal hour of programming work:
Even though MPL_boosted is higher than before, if P_marginal_task has fallen proportionally more due to task saturation, the resulting VMPL_marginal can actually be lower than the VMPL_marginal before the AI productivity boost.
Conclusion:
This explanation shows how a massive increase in individual productivity (MPL) can, somewhat paradoxically, lead to stagnant or falling wages even without any change in the number of available programmers. The mechanism is the saturation of high-value work. Because companies hire based on the value generated at the margin, and high productivity allows that margin to quickly shift to lower-value tasks, the perceived value ('P') of that marginal work can decrease significantly, potentially offsetting or even overwhelming the gains in physical productivity (MPL) when calculating the VMPL that determines wages.
I initially tried to use Gemini 2.5 Pro to write the whole explanation, but it kept making one mistake after another in its economics reasoning. Each rewrite would contain a new mistake after I pointed out the last one, or it would introduce a new mistake when I asked for some other kind of change. After pointing out 8 mistakes like this, I finally gave up and wrote it myself. I also tried Grok 3 and Claude 3.7 Sonnet but gave up more quickly on them after the initial responses didn't look promising. However AI still helped a bit by reminding me of the right concepts/vocabulary.
Thought it would be worth noting this, as it seems a bit surprising. (Supposedly "phd-level" AI failing badly on an Econ 101 problem.) Here is the full transcript in case anyone is curious. Digging into this a bit myself, it appears that the "phd-level" claim is based on performance on GPQA, which includes Physics, Chemistry, and Biology, but not Economics.
This is because each company has a limited (especially in the short run) set of high value potential programming work to be done, which can be quickly exhausted by the enhanced programming productivity, leaving only low-value marginal work.
This makes perfect sense when you put it this way, and yet I imagine that if tried to make a similar argument on internet, I would immediately get a "Lump of labour fallacy" reply.
(I guess the problem is with words such as "short term". Are we talking weeks, months, years? In a relatively static economy, or approaching singularity? Basically the speed of discovering new high-value work vs the speed such work becomes obsolete.)
I am not sure how universal this experience is, but I don't think my salary was ever related to my productivity. Only on the most general level: without being able to program I wouldn't be able to apply for programming jobs. But when I am already in the "software developer" set, other factors typically matter much more.
In my experience, most companies have a problem finding enough programmers. They also seem to have a general idea that they should pay "enough, but not too much", so approximately as much as other companies in the same region are paying their programmers. As a result, the programmers' salaries are mostly similar, regardless of whether the work is simple or sophisticated, easy or difficult, and whether the programmer is competent or not. This might be a European thing.
What actually matters here, is mostly the country. If the same company has branches in two countries, one of them in Western Europe, another in Eastern Europe, there may be e.g. a 3x difference in salaries for people with identical qualifications, doing similar things, sometimes working on the same project. So, forget productivity; the most impactful thing for your salary is to relocate. (Of course, that may increase your costs of living.)
Within the same country, it seems that some companies are generally more generous, some others are more stingy. The programmers working for the generous company get higher salary than the programmers working for the stingy company, regardless of their productivity. Yes, the generous company may be more picky at the job interviews, but it seems to me that in general, all companies are trying to hire, the differences in salaries are not advertised sufficiently (I do not clearly understand why), so the programmers apply more or less randomly, the competent ones get hired quickly (and their salary depends on the company they chose), the hopeless ones get rejected everywhere, and the mediocre ones need to make a few interviews until they find someone who desperately needs them (and gives them approximately the same salary as to the competent ones).
What didn't increase my salary: working harder, learning new technologies, accepting new responsibilities.
What did increase my salary: doing job interviews at many companies and choosing the one that paid most, calling my friends and asking how much they make at their companies and applying at the generous ones.
Not sure what this means for the impact of AIs on programmer salaries. I kinda expect that nothing will change (the programmers will be able to do more, the companies will want more to be done), but who knows.
Yes, I should be clear that compensation for individual programmers depends more on other factors than productivity. Productivity matters more at the macro level by setting the conditions of the market in which individuals operate.
I think this is one of those classic things that people get tripped up on, and I didn't go out of my way to dispel the confusion in my post.
Thanks for this post Gordon! I was about to Google something similar but realised that if I would find a decent post about this anywhere it would be here.
I am learning to build apps with LLM assistants, having never built software before. I’m wondering to myself if it is the right direction to go with my career. Given how easy it is, it no longer seems like a secure job.
On the whole, i don’t things these worries are well founded. Firstly, reminded of the Jevons Paradox, software has suddenly become a lot cheaper to build which means we will build lots more of it. Lower value features for big organisations are now above a threshold that make them worth building, and organisations that couldn’t afford to build software before suddenly can. Secondly, these organisations still need technical people to manage and oversee these systems and the LLMs that are building these systems. Whilst LLMs might be able to build software logic easily, they are a long way off from dealing with the messiness that comes with real world systems. Shipping 2/3 x more product means 2/3x more mess.
Sorry, i’ve gone on a bit of a tangent more relevant to my problem than yours! Back to your question of whether wages will increase. I think you are right. I can’t see wages going up 2/3x to match productivity. However, i’d also add that productivity increases in tech much faster than other industries. Programmers are seeing higher wages, but productivity has probably grown probably 60x or more compared to the 6x of other industries. So from that perspective programmers are getting just as bad a deal as everyone else!
I tend to explain wages in terms of ease of replacement. Companies will only pay a lot for something they can’t get for cheaper. If AI makes it possible for more people to code, then coders are easier to replace and wages should go down. For entry level jobs this effect is clear, but for senior positions it depends on how easy it is for an employee to get these productivity boosts with AI. Right now there’s a spectrum where almost anyone can make a simple website with AI, but beyond that people start to get filtered out. I expect the distribution to increasingly skew towards high skill programmers until eventually everyone is filtered out and the AI can do the job alone.
In the short term, I don’t expect the wages of high skill employees to change that much. On the one hand, if companies can rely on a few high skill workers, that saves money on hiring, training, and other logistics. Companies will pay higher wages if it means saving a lot of money in other areas. On the other hand, if there are fewer roles, there’s more competition for them, which drives wages down. These pressures act in opposite directions, so they approximately cancel out unless one turns out to be much stronger.
Since the 1970s, productivity has outpaced wage growth in many sectors. One sector where wages have kept up with productivity growth is tech, especially among programmers. But, I suspect this is changing thanks to the use of AI coding assistants.
To quickly review the relevant economic history, before 1973 wage growth roughly tracked productivity in Western economies, but since then productivity has grown 6 times faster than wages in most industries. Economists have given many possible explanations for this change: globalization, automation, declining union power, and policy shifts. There's not a clear consensus about the causes, but it's clear what the effect is: less value is being captured by labor and more by capital.
Programmers, however, have been largely exempt from this trend. Instead, they've seen a rapid rise in wages, especially over the past 20 years, and an even more rapid rise in non-wage compensation (stock, perks, etc.). Why? Because the production of high quality software is hard to automate, hard to outsource, critical to businesses, and protected by skill barriers.
AI is changing all this. It's beginning to automate many programming tasks. It allows outsourcing some programming work to AI. And as we've seen with the rise of vibecoding, AI is reducing skill barriers to producing functional code.
I've seen these changes in my own work as a programmer. I use Claude Code nearly every day. Although it doesn't let me do anything I couldn't do before, it lets me do everything I need to do faster and easier. Gone are the days of spending long hours reading docs and StackOverflow, trying to puzzle out how to make something work. Now I just ask Claude and, most of the time, it figures it out in just a few minutes.
But these gains in productivity may have come at some personal cost. I'm probably 2-3x more productive than I used to be in terms of time to ship code to production. I'm not, however, suddenly being paid 2-3x times more for doing this. In fact I'm being paid just about the same as I was before I started using Cluade Code even though I'm doing a lot more. And looking at public job listings, I don't see signs that anyone else is getting pay raises either.
But if I and other programmers are becoming more productive by using AI, why aren't we seeing an increase in salaries? It could simply be lag. AI is new, and the market hasn't had time to respond. But I'm suspicious that something else is going on.
Across many industries, labor saving devices have failed to increase wages proportional to the value generated. Some of this makes sense: it takes capital to operate these devices, and capital is going to need to recoup those costs. But naively you might think that, if labor is now more productive, it should be worth paying more for.
What I think this analysis misses is that wages are set in a competitive environment. I'm not actually paid, directly, based on how productive I am. I'm instead paid a wage that clears the programmer hiring market at my level of skill. And since the main effect of AI coding agents is to allow more people to write more code, we've effectively increased the supply of programming, putting downward pressure on the hiring market's clearing price.
We already see signs that the bottom of the market has been priced out. New grads from computer science programs report great difficulty finding jobs, whereas just a few years ago they were receiving multiple offers. Coding bootcamp grads face similar headwinds. And even among experienced programmers, although there are many open roles, hiring processes are increasingly competitive and companies are increasingly choosy about who they hire.
What does this mean for programmer's career prospects? I'm not certain. I might be jumping the gun in my analysis, and in 12-18 months we may see wages catch up with productivity gains. But if that doesn't happen, then I strongly suspect that programmers will see their wages stagnate even as they become more productive. The silver lining is that, at least for now, many programmers receive equity compensation, which allows them to capture some of the value of their productivity gains that are going to capital. Hopefully that will be enough for me and my fellow programmers to stay solvent in the years ahead.
Cross-posted from my blog, Uncertain Updates.