Any answer is fine, but focus on actual coding, rather than management or entrepreneurship. Inspired by this question at Reddit.
Probably not representative of everywhere, but at one place I worked we had to pay testers a lot more than developers since they were in much shorter supply.
At least in my country (Argentina), Java is very very active. There's strong demand for Senior Java developers here. I'd like to hear what others (from other countries) think too.
I would recommend you check our Craigs List or some other classifieds for your area. It doesn't matter how much programmers are making with language X half way across the world if the pay isn't the same where you are (unless you are willing to do the traveling, that is).
In my country (Israel) PHP developers are in very high demand. There is a surplus of Java and ASP.NET developers since those languages are taught in most academic institutions and a shortage of PHP developers as its mostly self taught. With the increasing public awareness to PHP as viable platform for commercial sites the trend is only increasing.
It depends on location. Sorry but that's just how it is. Here in Iceland we have a high demand for Java and C# and they get payed well.
Financial software, in Banks and so on tend to pay the most (or did until recent times ;)). The languages vary, quite a lot of older C++ and more Java and C# coming through.
Digital Signal Processing is a high paid field. It does not only require coding skills, sometimes down to assembly level, you also need a very good math-skills.
For jobs, I would still say the financial industry, e.g. commercial or retail banks, hedge funds.
Yes, the financial industry as a whole has taken a huge hit. But many individual banks haven't taken a big hit, and they need to rebuild some of their systems to cope with a world that looks very different.
C# has been the craze from where I am (Philippines). Companies are giving a higher rate to ASP.NET C# programmers over PHP programmers. :|
People skills. Seriously.
If you think about your entire career (rather than a single gig that may / may not last in today's world), there is nothing more valuable in the long term than the ability to work with a team, figure out what a customer really needs, balance what your team think they can get done with the remaining budget, and turn it all into a consensus plan.
You can always pick up a particular technical skill. Admittedly, some disciplines have minimal intersection with others (e.g., financial management and digital signal processing) but the people problems are the same everywhere.
You can get a pretty accurate estimate for a particular title in a particular area from the Dice Salary Survey.
Beyond that I would say communication skills, both written and verbal, pay off quite a bit.
On our side in Canada, C# developers with experience with SharePoint is really in demand. Really easy to get a good salary if you know how to code with SharePoint 2007.
Of course, the rarer the framework, better the pay. Simple demand/offer equation.
According to my CS teacher, mainframe programming is a highly paid profession. Also maintaining legacy code, since it's harder to find people that can work with the older languages (ie. COBOL)