It seems like the most devastating career risk people face is getting stuck doing one thing for too long without branching out. As a result, they become unemployed or underemployed, doing work that is not challenging, poorly paid, or nearing obsolescence. To this end, I have a framework that I currently use to think about the next few years of career development and being proactive about learning. I think about it mostly from the software contracting and business consulting perspectives, although it could be applied to other disciplines. I think the big differentiator is how quickly the field changes and how much one feels a need to hedge their career options.
It's useful to note that all of the following stages are generally in play at any given time. If you focus only on the future, you might starve. If you focus only on the present, you might become short-sighted and hurt long term results. The idea is that one should have:
- a list of skills that have general value today,
- a list of skills that are becoming obsolete, and
- a list of skills that just might become very useful in the near future.
Essentially, it's skill diversification, much like people diversify stock holdings.
The Cash Cow
This is something that you are very good at and is currently in hot demand. It differs from a core competency because this is something that you can make money doing for the near foreseeable future. This is web programming (and others) in the late 1990s. This is probably Ruby (and others) today. It might be something else tomorrow. Hopefully you will have learned enough about tomorrow's cash cow in the second phase (small bets) to be good at it when it changes.
There are different kinds of cows. It could be that COBOL programming is the thing you are best at and can easily find a variety of work for. This would fit the criteria that I laid out. You might have some that are solid, and some that are getting to be less profitable.