This seems strange to me, as it takes a few years for someone to get good at software (the supply is constricted), and where I've been involved in recruitment, finding good people is difficult.
It's also interesting to see that people get paid so much more in finance, or at American companies. That is, a finance house could probably hire any good 5+ year C++ developer at the 'normal C++ developer' rate of 30k, and get good results. But they choose to pay 50K for a 'finance C++ developer', whether he was earning 30K last week or not.
That says to me that pay is not set by supply by labor supply and demand but something else. That is, you don't get rich by having rare skills that make people money, you get them by knowing which industries pay over the odds for labor. I think that's a good thing to realize if you want to be comfortable.