Stay or Go
Why do good engineers stick it out in an org with a lot of problems? It’s obvious why they stay in the good orgs: quality coworkers, competitive pay, supportive management, interesting problems, etc. But what about the disorganized, uncoordinated, and directionless orgs? What about the ones saddled with tech debt? You’ll often find good engineers in those, too.
It’s not for lack of other options. In the current market, a good engineer has an inbox full of messages from recruiters and old co-workers. A better title or more pay is just an email away. So why do good engineers keep struggling along with an org that’s in trouble?
Ask different people and you’ll get different answers, but reflecting on my own experiences and what I’ve observed in others there are two major factors that stand out.
The first: is improvement a viable possibility?
I’ve worked in engineering organizations that were a total mess, with no hope of things improving. Either management was top-down and wouldn’t allow grassroots experimentation, or the people at the grassroots level weren’t interested in collaborating to find a better way to do the work. These are the orgs good engineers can’t wait to leave. There are other orgs that recognize their problems and want to improve. Maybe they don’t know how to improve or it’s just a really complicated problem, but these orgs offer a hope that things can get better. Good engineers will stick it out in these.
So if you’re an engineering manager, make it clear that you’re open to experiments. Identify the engineers who can help move things in the right direction and communicate to them that you’re open to doing things differently. Support new approaches, solicit new ideas. If you do that, your organization may still be a mess but it’ll be a mess with a potentially bright future. Engineers like to tell stories about how they helped turn an org around. Make it clear that you want to help make that underdog comeback a reality.
The second: is the work interesting?
It takes a lot of sweat and investment to turn an organization around. If the work is boring, then putting that labor in is not an appealing proposition for an engineer.
What constitutes “boring” work is going to vary by the engineer, so as an engineering manager you need to sound out those critical people and see how you can help make the work more interesting. Can we eliminate tech debt by using interesting technology? Is there business context and perspective you can share that will reveal the seemingly boring work isn’t really so boring?
If I’m interested in the work and I believe the org wants to improve, I’m going to work through the bad times in search of the good ones.