High performers job hop when they can't find a high performance culture
thedailydeveloper.substack.com
thedailydeveloper.substack.com
I always ask people to just explain why they left their last few gigs. You can read between the lines on the answers and typically they're straight-forward, sympathetic reasons.
Because holding a single mission at a customer as a (probably expensive) consultant for a year ... I'd say my average is 8 months. My record is 2 years 7 months.
So if they are going to leave after a year, that's a big disincentive to hire, regardless of how they are at problem solving.
Sure, there's good reasons to leave quickly, but if these stack up, I'm inclined to pass.
Do you want someone who has strong evidence of job-hopping, and believe they will commit more time than average to your environment, on the basis that the job hopping is due to high performance?
Or do you want someone who's going to stick around a bit longer, on the basis that much of the value of someone in a job is actually domain knowledge specific to the business and the code, rather than transferrable skills?
When I see a lot of job hopping on a CV, I tend not to take a chance. Those folks haven't shown evidence of investing in non-transferrable knowledge and processes. They might have high performance transferrable skills, but chances are they'll want to change how things are done, then not stick around to see them all the way through.
I find that I can’t bring myself to care too much to evaluate people on if they are “job hoppers”. Every place I’ve worked at that wants to avoid it based on what I am told by my leaders and HR, also doesn’t give raises even keeping up with inflation unless you manage to get promoted. And they usually have a million reasons to not promote someone come yearly reviews.
This industry incentivize job hopping and you’re better off treating employees as a stream and figuring out how to manage project estimates and knowledge transfer around that.
Obviously doesn’t apply if your company really puts in effort to maintain employees long term, but you’re in an exceptional case if that is true
Yup, it's totally this. I think on average I've moved every 2 years or so (some longer, some shorter), but every time I've done so I've taken the offer back to my current company and gone "Look, I don't want to move jobs, that's a hassle, if you matched the offer (or even just came close enough) I'd stay" and never, not a single time, has a company ever done that. At the end of the day, I've gotta look out for myself.
For job hoppers, I often see folks who don't realize they are leaving behind landmines for their colleagues. They haven't had as much of a chance to learn from their mistakes. They learn from inheriting, but often not at a 'senior' level of decision making.
So we hire fewer and slower, and work to maintain a team that values doing well at their craft and building ambitious things that take time.
Yes - people who never live with the outcomes of their own work / decisions are less likely to have learned good longer-term practices.
Seniority of the candidate is another thing to consider. Job hopping every 1.5 to 2 years in the first 5 or so years of one's career is normal and often expected among US software engineers. However, having a bunch of short stints later in one's career, in my experience, has translated to weaker hires.
I understand this can look like a “weaker hire” to an employer but as an older engineer in this industry, my radar for BS is keen and I don’t want to waste my time at a place where I know I won’t have an impact.
I've also seen the 50 year old eternal junior engineer who seems to scrape by from employer to employer by way of momentum and "years of experience" alone.
Do the incentive structures at your company match this? If they do, thats great, but I've worked at places who don't even give raises that beat inflation and still wonder why people leave within 1-3 years.
Typically what I've seen of job hopping, is more often than not their previous employer simply didn't have a proper incentive structure to keep a good engineer around very long. Alot of people leave when they realize they'll never get more than a 3-4% raise, for example.
If you desire employees to stay around for awhile and really learn the product and business deeply, it needs to be incentivized properly
Instead, they recruit wet blankets that will take one for the team with 3-4% raises, for 3 to 4 years or more. If indentured servitude contracts were still legal, they would be a fan.
I've also been in the hiring manager role and have no problem with job hoppers. I find them to generally be more ambitious.
Sustainable environments seek a pace conducive to life rather than absurd crash schedules, drama, churn, and burgeoning tech debt.
I would change jobs, but I hate interviewing and everything else in the process, so instead I work at my standards and stopped trying to impose them on others.
I'm not satisfied at work, but personal projects and activities help fill the void (as a software engineer). I'm never sure if a down period is temporary or not, so I'll always tough it out for a bit.
I started looking for a new position very recently, though, since it's been long enough.
Networking helps. Who did you work with in the past that meets your standards... Get in touch, ask them where they're working and if they know of any openings.
Often times you skip at least some screening BS, you may also get more of the interview time set for them convincing you to join, rather than trying to see if they want you. Depends on the place and the strength of recomendation.
It can't last forever, though, so there's an inevitable reckoning on the horizon.
I feel this somewhat but I’ve realized it’s somewhat seasonal and more a matter of perspective.
I’ve had good times and bad times at work and they just come and go. During the good times I double down on my work. I put in more because I get more out. During the bad times I focus on personal projects. I do the job as a professional but don’t waste time trying to knock it out of the park when I know I won’t.
I just look for fulfillment where it comes naturally and don’t try to squeeze it out where it doesn’t.
Others in the company simply putting in a basic 9-5 don't necessarily appreciate raised expectations or a higher throughput. Managers/execs enjoying fruits of expensive 3rd party contracts (travel, dinners, kickbacks) push back hard when the high-performer suggests doing those tasks/functions internally. Colleagues, even if well-meaning, may not be able to "keep up" or worse, make the same mistakes repeatedly. Getting support from other departments can be very difficult due to "how we've always done it" or "not how we do things here" syndromes. Mismatched levels of effort or motivation among team members. Etc etc, the list is nearly endless, but they all usually lead towards the high performer looking for work elsewhere.
Another trap to avoid nearer to the high performance side is allowing elitism or tiers of snobbery. Hire people who are regular cool or who you can at least tolerate.
Early in my career I joined a company and I knew from day one that it was going to be an awful experience. I knew the product was going to fail, and my team seemed unconcerned about this inevitability. I hadn’t realized this in the interview. I left after six months, and I spent all of them preparing myself and searching for the best possible next move. When I looked back two years later the company no longer offered the product I was working for, and every single member of my team also left. The experience was an expensive lesson in what things I should look for in a job interview.
Everyone decides for themselves and you own your career and growth though.
- They aren't compensated proportionately for their work.
- They aren't recognized proportionately for their work. e.g. I have seen solid engineers leave because management thought they were just doing "maintenance" only to have entire product lines go on fire after they left. Turns out, your remaining high performers can get overloaded too.
- The culture undervalues that individual's ethos. Some high performers prefer collaboration, others prefer competition. If the work environment cannot suit their ethos, they will leave to find another place where they can thrive better.
I know hires that I have passed on for major red flags who have went on the Meta/Amazon/Apple. I've also had the pleasure to work with phenomenal new grads who should have been at Meta/Amazon/Apple, but for whatever reason struggled to even be interviewed.
Statistically, it's likely pretty rare to be working in a job that closely meets your competency and drive. It's much more likely that you are above/below your preference, which in my experience causes anxiety - when you are outclassed, but also especially when you are the lone "rockstar ninja" on a team.
Solving placement is a problem that the industry isn't interested in solving. Why do I say that? The value in solving placement is worth billions of dollars, and yet nothing really seems to have changed in the last 20 years. If anything, hiring is far more complex/expensive, but the quality of placement is no higher than it was in the early 2000s.
That’s just as true for average performers.
I just don’t buy the premise here that high performers think different on this.
Everyone wants to work for a pleasant, high performing, well managed company not just high performers.
Professional job hoppers on the other hand is absolutely a thing. Realistically that is the most reliably way of earning more
Human psychology is a funny thing.
Using length of previous employments as a metric in ascertaining someone's skills isn't worth it. There's too many variables and the possible reasons are too varied. Maybe they're absolutely amazing and all those companies aren't. Maybe they're really bad and they can't keep up. Maybe they had family issues and they were demanding jobs. Maybe they had health issues and they care more about money now than they did before. Maybe they exited on a side project and they don't care about money nearly as much as they did before.
It depends on the nature of the type of labor needed. If an employer needs a warm body, then evaluating length of previous employments might be worth it. If an employer needs a high performer, then it might not be worth it.
We tend to avoid "rockstar developers" in my current company because many wouldn't be happy here.
I happened to be a "rockstar" right now because my skills and culture are an ideal match. My team is small and does a lot, so we really can't afford to hire the wrong person. Better to leave the position open.
Turns out, people are often intimidated in talent when they have no desire to replicate it - this is especially true for management. Even if I was able to influence others, there’s nobody left to influence me.
Not to mention, it’s makes your workload significantly more when you’re the only one researching things, asking question, improving things, etc.
So, in short, yes you can be talented and elect to quit rather than influence.
But the weed-common presence of conservative management is what makes disruption possible.
Swings and roundabouts.
We spend so much time screening engineers, going through code tests, assessments, live code interviews, whiteboard interviews, system design interviews etc.
Yet, we don't have the same vetting standards for managers, at least from what I've seen. There is no "Cracking The Engineering Manager Interview" book, for example. The gauntlet isn't there the same way. There also seems to be far more hesitation to look at management as an issue for negative outcomes vs how its ascribed to engineers[0] much more quickly, yet a manager can make or break an entire team - even turning good engineers into bad ones.
While I suspect that management looks out for management on this, you'd think a broader trend among the community would raise awareness around this, but many well meaning engineers continue to look only at their peers, unless management is particularly ineffective or egregious, rather than evaluating possible management and team practices
[0]: which is the reason given for why engineers have these arduous interviewing requirements, to weed out any possible "under-performers"
I'd think that high performers would develop that skill fairly quickly. If they're job hoping they'll learn to sniff out the signals.
For example: if they say they encourage change for the better, but continually overload those who may be able to influence the changes with day to day work, then those managers / that culture will be resistant / allergic to influence.
If Sprint X is dedicated to learning and improvement but always seems to be full of last minute bug fixes, testing, overflow work, then even if influence is on their menu, they ain't got the ingredients to cook it up.
So - high performance aside, this is the route I took in my last company. I felt the engineering team was good - great, even - but the engineering manager left and I moved into that post because I felt that an external hire might risk the team's currently effectiveness. It was a big change though; IC to 25-person engineering team across multiple products, and in a regulated environment. It's not done lightly, and given people can (or could) get paid loads for doing IC work, moving is also a good choice.
Even someone with a perfectly innocent reason for job hopping (say for example, the candidate's spouse has a job that requires the candidate to move cities often) is still someone who is a high risk to job hop on me.