As a programmer, I feel like we are more likely to be wooed away from our jobs (for money or challenge.) Why do companies still see it as a commitment issue when it's really the company's fault of not retaining the talent?
I have been asked during interviews why I left job A or B, and I just explained "The company ran out of money" or "They hired me to do something but then completely changed direction", etc. If you have a reason to explain why you left I don't think anyone can see that as a problem.
You said it, as developers we sometimes work for unstable companies, we take a bet and sometimes we lose. So what? We move on.
I would hire a guy who changes jobs every year over someone who's been in the same position for 10 years.
However, companies try to maintain this climate of "you have to commit!" because they want to use people guilt to keep them. It always baffles me to see companies who demand loyalty from their employees but have no problem letting them go when times are tough.
Presumably there's an up-front cost to hiring a permanent employee that they count on amortising over N years - leaving after a few months means they've (probably) wasted time, money, and effort.
(Although I would agree that the onus is on the company to set expectations at the start and play fair. I've left permanent positions twice after 3 months due to terrible working environments that they refused to sort out.)
The companies are not the problem really, it's the people who think the company that need to solve this is really the problem. Want more challenges and the company doesn't have them or cannot give you these don't switch companies, work part-time on another project or your personal projects. I think that's the best plan, quitting jobs all the time is not going anywhere.
Software engineers are meant to bring value to a company at some multiplier of their own rate of consumption. In other words, we're meant to bring more value to the company than we take away in salary and benefits and such. If an engineer is not bringing in more than they are taking out, they are removed and replaced without so much as a second thought. Companies have zero problem removing unproductive employees. Software engineers work almost (though not entirely) like a commodity.
With that said, if an engineer is bringing value and the company is not satisfying the needs of the engineer in some way, then the engineer should leave and find another position in which they will be satisfied while bringing significant value to the new company.
If a company can remove an engineer at the drop of a hat, why should an engineer not be able to do the same with a company? We put far too much emotion into these sorts of decisions. When it comes down to it the average engineer has about 90,000 effective working hours to sell in his or her lifetime. It is best to get the most out of those hours possible, whether that be purely financial (trading the most dollars for those hours as possible) or some other metric (the most satisfaction per hour traded). Quitting a job whenever your value per hour is too low for a higher value per hour is ABSOLUTELY the thing you should do.
Never sit at a job longer than you are satisfied. It is up to the company to keep you satisfied just as much as it is up to you to keep the company satisfied.
Can't what you are saying be applied to all employees, and not just software engineers. If you aren't adding value that is greater than your pay then you will be fired.
Absolutely, it does. It is also why companies have to work extremely hard to keep employees. There is no reason to stay at a company which is not producing value for you just as there is no reason for a company to keep an employee that is not producing value for the company.
The one caveat in that is that for an employee value may come in multiple forms. Certainly pay is one of those forms. Some might seek upward job mobility or skills training increases. Over all satisfaction may be the highest value for some employees. In the US, medical benefits might be one. Maybe vacation pay. Value is a funny thing.
The parent of my first comment implied that companies do not need to solve the problem of people wanting to leave and being unsatisfied. It is absolutely the companies problem to solve. Some companies actually solve the problem quite well.
I disagree, isn't it better to go to another company that might provide challenge/pay rather then looking for things to do (especially on that company's dime?)
Why?
The company is not a person, it does not need you to survive and if you are not happy you should do something about it because when you'll become useless you can count on the company to get rid of you asap.
> Why do companies still see it as a commitment issue...
Multiple job-hops are a likely indicator of an individuals poor decision quality. Such a person won't put in the time required to make the work situation better. They're perceived as emotional, impatient, and poor team players.
Incidentally, the employer views your role as someone who can help move 'his' agenda forward. Perhaps a bit Old School; he's not there to mollycoddle and entertain your needs.
I disagree - I think everyone has a different needs, I would say those ones you perceive as "emotional, impatient, and poor team player" are the most loyal champions of the company and really gave it their all.
When recruiting, I do check applicants resumes for a pattern to their tenure. I am recruiting to solve a problem, and I don't want that problem to recur too quickly. I know that programmers can usually find new jobs much more easily than other professions and than spending 5+ years with one company is unusual.
I expect new grads to switch jobs after 12-18 months. This is a pattern that most (maybe all?) companies find hard to break. Wanderlust is natural at this stage in your career. It's not a problem.
It's not unusual for some people to join one workplace and leave after less than 3 months. Bad fit/dubious hiring practices/poisonous work environments happen. It's often better to leave quickly, especially if you still have irons in the fire from previous job hunting efforts. Again, not a problem.
However, an application with 10 years of experience across 10 different positions may have a problem. That does not mean that it will prevent you from getting an interview, but it does mean that I am going to ask you about it, so have a good explanation ready.
The older the company, the less they like it. Loyalty in some places will replace skill... Even when a VP asked me about my 6 jobs in 10 years, I replied: 'same as you, been working at a lot of startups'...although I dont think the answer was the most diplomatic.
Just to follow on with the OPs question, I don't understand it as well.
Given this example and considering yourself as a self-utility-maximizing-agent (just as a company considers itself), why would it be bad to walk away from 1 job to another when you are being rewarded with some financial gain that warrants it?
Eg. Working for a sweatshop earning $20 an hour and then getting a chance to work for a high-end firm that offers remote-working at $80 an hour?
As someone who has stuck with a company for four years, I am terrified that I won't be able to get another job. It seems like you are "damaged goods" if you stay at place longer than three years that isn't a huge tech company.
So, no. It's not that bad to switch jobs often. Maybe every 2-3 years.
A typical project where I work usually runs for 18months to 2 years. I wouldn't hire someone who changed jobs every year because IMO people who never stick around to see a project to completion have a tendency to make very short term project decisions and leave before it negatively impacts them.
I have been asked during interviews why I left job A or B, and I just explained "The company ran out of money" or "They hired me to do something but then completely changed direction", etc. If you have a reason to explain why you left I don't think anyone can see that as a problem.
You said it, as developers we sometimes work for unstable companies, we take a bet and sometimes we lose. So what? We move on.
I would hire a guy who changes jobs every year over someone who's been in the same position for 10 years.
However, companies try to maintain this climate of "you have to commit!" because they want to use people guilt to keep them. It always baffles me to see companies who demand loyalty from their employees but have no problem letting them go when times are tough.