Recently I read an article (http://lifehacker.com/is-it-bad-to-stay-at-one-company-for-very-long-1295782130) that stated that if you are at the same company for more than a few years, it will harm your career.
I don’t agree – consider any successful CEO, musician, or master-level craftsperson – those people may have been doing the same thing for decades. They certainly haven’t damaged their careers by being the best in the world at what they do.
But I do think that if you’ve had the exact same role at a company for more than a few years, you should be able to show that you’ve done new things and been able to adapt to change. Once, when I was a manager, I had an employee tell me that he wanted a raise because he had "10 years of experience". Sadly, what he really had was 1 year of experience, 10 times. Personally, I’ve had a lot of jobs, in companies large and small, and even my own company. My track record was anywhere from 2 to 6 years at a single company.
On October 1 of this year, I start another chapter in my career. No, I’m not leaving Microsoft, but I am changing jobs. That’s one of the advantages of working at a large company – it’s so large that there are a lot of different jobs that you can do without leaving. In fact, Microsoft in particular encourages us to change roles from time to time, so that we cross-pollinate within the company and challenge ourselves constantly to learn new things. In my seven years here I’ve worked on the SQL Server Product Team, as a field technical resource for SQL Server and then Windows Azure, and now I’m taking a global corporate role.
I’m joining the the Windows Azure Platform Team as a Worldwide Senior Technical Specialist. My area of specialization will be data – SQL Server, Oracle, MongoDB, PostgreSQL, Linux Hadoop, etc. on Windows Azure IaaS, Windows Azure Table storage, Windows Azure SQL Databases (the Artist previously known as SQL Azure), HDInsight (Hadoop), and High-Performance Computing. My career for the last 30 years has been focused on data, and now it’s focused entirely on that space – from on-premises to distributed computing.
So should you change careers every couple of years? Absolutely. Even if you stay at your current employer, you should always be stretching, learning, and moving forward.