Yes, pretty much. You did hit on part of it, a big chunk of the software jobs are in the places where startups are, which is predominantly the Bay Area, NYC, Boston, and Austin, so location alone is a big driver. Keep in mind a decent nanny in the Bay Area makes $75K.
Regardless of anecdotal anti H-1b stories, there's undoubtedly a shortage of actual software engineers (as opposed to "IT professionals") who can write good code and the growth rate of industries requiring them exceeds the rate of people going into the field. And as one poster I think correctly stated, your brain has to be wired a certain way to be a good developer so it's not like we can just increase the size of the CS class at Cal by 10X and 4 years later, problem solved. So given that a big chunk of jobs are in expensive areas and there is a supply and demand imbalance with a very inelastic curve and few good replacement options, econ 101 gives you a high marginal price which every employer pays regardless of where they are in the U.S.