People who predict #2 ("sharp reversal of software developer salaries") are modeling software development jobs as an "inelastic" commodity.

Oil is the quintessential inelastic commodity, so I can break that one down as an analogy and that may make it easier to discuss whether it's appropriate to view "software development" as crude oil, or any similarly inelastic commodity.

A -- Everyone who currently consumes oil, needs oil, it's absolutely non-negotiable for their existence. (Is this true of software development?)

B -- When oil (gasoline/petrol) prices are high, people will complain loudly about it, but they will still pay whatever the asking price is. People almost never "figure out how to commute fewer miles" to save gas when oil prices are high. (A tiny bit maybe, but it's quite negligible).

C -- Oil is fungible. (This is admittedly not very true for software developers, which is why sub-specialties do get paid differently).

The A, B, C are true, then it follows that whenever there is even a VERY SLIGHT [actual] shortage of oil (0.5-1% less supply than demand at any price), then the price of oil has to rise very, very, very high to knock the 0.5%-1% of lowest-value use out of the bidding market. Maybe prices have to double just to get 1% lower use. Don't evaluate this statement for "software development", evaluate statements A, B, C, and D instead. If they are true, then this result necessarily follows.

D -- Most of the cost of supplying oil is in the form of capital expense, not marginal expense. The first barrel of oil from a well costs $200 million (SD: student loan/time) to get out. The second and all other barrels costs $20.00-70.00 to get out (SD: rent, food, gas, daycare).

E -- When oil prices are low, that does not induce additional demand. No one says "oh hey, gas prices are so low that I can move my home 30 miles farther from work later this month". (a tiny bit maybe for things like cheaper plane tickets, but I argue this is also fairly negligible against total market oil consumption)

F -- There is competition in the marketplace. No single buyer or seller can swing the price of the market. (Note: OPEC used to be able to double prices by adjusting their supply by a few percentage points - they would lose 2% of volume, but gain 50-100% in price. OPEC can no longer do this due to huge supply of american shale oil/fracking, so now OPEC can still double prices but it would require them to reduce volume MORE than 50% so they can't come out ahead on net revenue).

If D, E and F are true, then when there is an OVERSUPPLY of oil, the price drops to the highest marginal production price. There's always a desperate oil producer who spent $1 Billion drilling 5 wells and needs to pay to keep the lights on, debt payments going, etc. Now, instead of buyers bidding for oil barrels, each barrel is bidding for a buyer: "Please buy me, please buy me". The 0.5%-1% of oil barrels which CANNOT be priced lower than their competitors will not find a buyer - this can be a problem for companies/individuals who are desperately RELYING on this income (Venezuela needs it for all government spending, wildcatters/startups need it to keep the lights on, Chevron miiiight be a little more flexible)

Oil has a more efficient market than software development does, so the speed of change will be much faster. However, the effects should eventually be the same for any inelastic commodity.

I would personally argue that the supply of software engineering is fairly inelastic over 5-10 years. Even if every buyer was willing to pay $500,000 for a fresh graduate ML engineer, it wouldn't make more of them pop out of the woodwork THIS YEAR. It takes 5-10 years for the supply to adjust to the price.

If you believe that the demand for software engineering is also inelastic (If webdev engineers got paid $40,000/year, would a lot more companies actually be using them?) Then maybe the price won't fall as far as GP argues it will. However, if you think that everyone who WOULD hire software developers at bottom-barrel prices are just like the people who buy gasoline - while they complain loudly about high prices, but they are already paying whatever the asking price is -- then you believe that software engineering truly is inelastic.

In that case, salaries could fall to whatever salary makes 5-15% of the engineers leave the job market and go do something else.

However, that applies separately to each category of engineer. Whereas most barrels of oil are reasonably similar enough (location, composition) -- software engineers are not nearly as fungible for SOME uses. So instead of "one" market, there are multiple software engineer markets which may each have their own price forces. The highest-tier software engineers may see very little change in their price, while commodity engineers may feel lots of pain.