I am absolutely convinced that you one make a very good living as a consultant that helps customers with deep understanding of and practical knowledge in one of the following topics
- Time zones, daylight saving time and leap days/seconds in software processing any kind of events
- Character encodings
Both are small niches hard to get right if you are lacking knowledge and profound experience but come up in many projects. Hence, there would be customers who want to avoid mistakes, and those who have messed things up and need help urgently.
However, those topics are unsexy and probably full of many details that most would find boring, but I know that there are people out there who thrive on solving hard problems of any kind. So my questions are:
- What are similarly bland but important and highly specific niches in the kind of software you develop?
- Do you know people that actually do consulting on one of these topics?
Edit: I'm talking about a skill level that goes beyond being able to build a decent implementation on your own -- to be able to quickly bring a system towards best practices after other people have really messed it up. The latter is not something you can quickly pick up.
Oh, and btw: I'm not thinking about moving into these areas, and wouldn't do it for a lot of money. That's exactly why I think that this boring kind of stuff could earn somebody a good living.