Very little is known about the Life and Mating Habits of the common Code Monkey. But that should come as no surprise to anyone who has observed a specimen in the cubicles of Asia. But observations from cubesville have often been indicative of a certain flux in the population - a trend to migrate over longer distances. Unlike the famed lemming of the north artic tundra, which takes a downhill (to say the least) approach, this migration is more often in search for higher ground. Is there some herd mentality to it or is it merely an individual moving on ? Join me, as we dig deeper into the mysterious world of the code monkey.
Of late, I've been feeling the urge to leave Yahoo! and go do something else. I couldn't explain exactly why, because I probably have the best job imaginable - work on what I want, from wherever I want, a couple of meetings a month and play pool all afternoon. But the urge was still as strong as ever. It needed a rational explanation and I started to itemize and categorize the possible reasons as objectively as I could. A couple of recent discussions on slashdot and india-gii have added fuel to that fire and then I read this.
Career Phases: In general, the company you work for is really really important for your first couple of jobs. It should come as no surprise that junior engineers want to work with a strong brand. This sets them up to move onto be senior engineers in places which pay better. Experienced engineers are not too desperate to seek out things which look good on their resumes - they're interested in other aspects of the job than how good it will look on their resume in a couple of years.
There's a flip side to the career phases argument too. If you've read the Discworld series by Terry Pratchett, you might remember a class of wizards known as the Sourcerors. Now that nearly all magical spells have been formed out of the raw magic, the discworld needs no more sourcerors.
Now, software companies are like miniature discworlds. There is a phase in the company's life cycle (it is a cycle, it repeats) when the ground is fertile for new ideas. And this age of miracles, attracts the brilliant miracle worker who can shape reality around such ideas. But such proto-geniuses have little to do in the adolescence of the company. As the work force muscle builds up, the concept of a superstar engineer dies and slowly but surely, the emphasis shifts to overall throughput of a team than individual brilliance. When a manager (and his team) can outperform any individual engineer at the same task, the company needs the best managers they can get, rather than a couple more brilliant code monkeys.
People outgrow companies and vice versa.
Wages: Money is like air. A little bit more doesn't do much when you have enough, but you'll know it when you are running short. But there does exist a certain stress level beyond which people do not think it is worth their pay to work - but a large percentage of salaried workers never approach that limit. That is where an interesting economic hypothesis pops up - Efficiency wage hypothesis. Even when you get paid enough, merely the fact that you are paid does not induce any sort of gratitude or loyalty towards your employer - it is money in return for services rendered. But as the shirking model in the theory indicates, often you do get what you pay for.
Pay hikes are often nominal and are significant only when you are promoted. Meanwhile people being freshly hired are being hired at pay scales more in terms with the market demands. Over a period of two or three years, the difference between your hiked pay and your peers being freshly hired climbs to a significant value to prompt you to get back to level. Most companies to refuse to raise the pay of a long standing employee to the levels of a freshly hired of similar level, giving various excuses - the most general of which go - who told you that ? That's not true. And in this world of salary confidentiality, rather than counter that argument, you'd probably try to get a better pay package elsewhere - and you probably will.
Raises don't match lateral entry pay packages.
Vertical Space: Most indian companies don't have a good technical ladder. In an industry where company half lives are measured in years, waiting around for those above to retire is hardly any option. Generally the way to climb the ladder is to move somewhere where you're closer to the top and work towards building the rest of the ladder downwards. In other words, the easiest way to get promoted is to be somewhere small and grow along with it - after all companies don't need to be promoted (*sic*) to grow. But some are unfortunate enough to end up pushed down as the management brings in fresh talent to supplement the growth. This is somewhat in line with the career phases argument where fast growth, high risk approaches are suitable after the initial few years of establishing a brand pedigree.
Last one out is a...: Community is a usually disregarded factor when considering job hopping. But the web of friends can outweigh some of the advantages a job hop might bring. More important would be your relationship with your direct boss. Having to work under a new person and develop the same rapport takes quite some effort and the average asocial code monkey dreads the thought of having to go through that *again*. On the other hand, this explains how much more precious a manager can be, because when he leaves he disturbs the general inertia of his direct reportees.
The moment the community at work starts breaking up, be it due to overwork or attrition, the downsides of leaving start to diminish. Eventually, you'll be able to point out a single departure which snowballed into a mass attrition throughout the company - even if everyone went in their own directions. At some point, a $n people can't be wrong correlation turns into a causation going into a spiral of departures.
Attrition turns into super-attrition when a strong community breaks up.
I've sort of started to understand why people need to switch jobs, about every couple of years - not out of greed or disloyalty - but as suggested by pure common sense. But a closer inspection of the scenario does indeed suggest that status quo is an assumption - a valid assumption for vast majority. That could change, I suppose (or rather, hope).
There's a corollary to all these observations, but I'll leave that as an exercise for the reader.--
The biggest mistake you can make is to believe that you are working for someone else.