If you’re a professional software developer, it would behoove you to page through the How to Keep Your Job presentation from The Pragmatic Programmers. I’ve talked about the risks to software developers from increasing overseas development, and as you advance in your career, you are always in danger of being replaced by somebody younger, cheaper, and if you’re not on your game, perhaps better. The presentation discusses these risks and some steps you can take to make sure that you’ll be employable for your entire career.
One strategy I’m going to be looking at very soon is diversification of my skills. A few years ago, I decided that I needed to move more into hardcore software development, and so I abandoned my Perl/PHP/ColdFusion ways and dove headlong into Java programming. That was a decision that paid real dividends, as it helped me learn about object oriented programming, debugging, real build environments, and lots of other things on top of just learning the Java language. I think the next step for me is to learn C#. I don’t know that I want to be in the Microsoft world full time, but I’d like to work at jobs with broad responsibilities, and familiarity with the Microsoft world can only help in that regard. I’d also like to deepen my Java skills, but I don’t want to be tied to Java for my future career prospects.