> Two year tenures isn't job hopping. It's a reflection of how this industry works. Very few companies offer sufficient breadth and depth of product complexity, career advancement, or other similar things to make it worthwhile. I'd say the sweet spot is 2-4 years, except at very large companies (e.g. Google) (EDIT:) or companies which are developing complicated products with physical engineering or regulatory factors complicating development. Anything longer, especially if there is a lot of long-term stasis on a resume (e.g. "tech lead on product X" for more than a year or two), is an indication to me of someone who either isn't capable of stretching himself or doesn't want to. Anything less, especially if more than one project per job exists, indicates an inability to see a project through to maintenance or someone who is easily bored.
I don't work for a large company, my job title hasn't changed, and my salary has doubled from the starting salary over 5 years.
Sometimes stasis exists because valuable people are paid extremely well not to leave. So well they can't actually find a job that will compensate them comparably despite repeated attempts to find one.
Why exactly should people like me leave when even places like <insert large company> want to pay me 10% less than I make now?