The software industry here in London is really badly paid, for salaried jobs outside finance at least. I know plenty of developers who started at £20-25k as graduates from decent universities and whose salary has slowly risen to 40k over quite a few years. PhD graduates making £35-45k too.
That tends to be the case mostly everywhere in Europe. For that matter, most places in the world outside the US (and Silicon Valley) tend not to pay software engineers very competitively. I am from a fairly small central European country and programmers there barely make more than other professions; the salaries often amount to the national average.
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.