I was watching an interesting conference video by Trisha Gee at the Goto Conference where she was giving lots of career advice, and one bit really struck a chord with me as it essentially outlined my philosophy on my career progression.
What Trisha talked about was not limiting your career by being type cast into one particular area or discipline, and she gave examples where she switched from web development and went into server side development across multiple business domains, and this is exactly what I have done. I did this because I believe it opens your eyes to different ways of thinking, new technologies, and working with different types of people.
My career has gone from Junior Developer Roles, to Developer, then Senior Developer, Lead Developer and then a departmental Development Manager, but I have done this via 3 different business domains. These are Computer Games and Games Middleware Tools, Financial Institutions both online and retail, and then (where I am now) into Pharmacy and Healthcare for a large Retail and Distribution operation.
By working across all these different business domains and effectively switching gears multiple times it has allowed be to diversify my skills yet pick up new specialisms over a 16 year period. This includes working in C and C++ and then moving on to C# where I have worked on multiple projects doing WinForms desktop applications, ASP.NET websites, ASMX and MVC back end web services, and be in-charge of designing different high availability deployment architectures.
As I progressed through the programming ranks I have picked up invaluable people and soft skills as-well as technical skills As I have developed, I have really enjoyed working with and mentoring developers to pass on skills and help with their career progression.
The key to this story is not to box yourself into a corner with your career and, like with one of the key tenets of Agile Development, Embrace Change, by switching gears every now and again. If you feel like you are getting stuck in a rutt with what you are currently doing, learn a new technology, run a pet project or open source project until you can show good competence in your new technology. Then change jobs, possibly into a new business sector. It can be quite scary doing this, but ultimately it is very rewarding and it gives you a very well rounded and broad CV which is very appealing to future employers as it shows you are prepared to take chances as-well as invest in yourself.
Perhaps it is time to look at where you are in your career, see if you are happy, and potentially start planning for the next chapter in your life.