I used to have a metric that if an engineer had a long tenure in a company, they were in a good company and were good to work with or for. I have come to learn that this is not always the case. A lot of the time, a long tenure means that you have a lot of patience and a high pain threshold.
So what is a long tenure in 2021? In my opinion, anyone that makes it past a year in a company is doing well. And they only make it past a year because interviewing is so laborious right now.
Why would you only do a year in a company? There are many reasons for company dysfunction, also known as politics, spending more time in meetings than building products. Inability to have an impact due to technical debt. Date-driven development, sales-driven development other types of driven development. Anything that detracts you from building product.
In my opinion, it is not possible to know if a company has any of the above dysfunctions in an interview. To do that, you got to work there for a while. After about one month, you will have a good sense if the company is a good fit or will be somewhere you exit after a few months/year.
Keep job-hopping until you find one that fits you.
I would recommend making a list of your values to match the company. Mine are simple.
- I am mostly ambivalent about the tech stack.
- I care about the team I am going to work on. Are the team collaborative?
- I care about quality and doing the job right from quality, operations, testing, developer experience and how long it takes to change the software perspective.
- I love learning and getting better. It’s why I got into software development.
If these needs are not met, I start looking. If you don’t have patience for dysfunction. Rip it off like a band-aid.
Engineers are in an enviable position that currently, there is a global shortage of engineers. While this continues, you can have a low tolerance for situations that you don’t like.
While engineers can job hop, it does not have to be this way. There is hope for companies, and they can extend the tenure of engineers. It involves listening to their needs. If you meet the needs of the individual engineer, you will hold on to them; it is doable and scalable.