What is the geographic area? How is the pay band of the company compared to local competitors? How are the perks?
I don't expect managers in a tech hub to be able to keep younger employees for many years, when they can jump ship after 1-3 years to get a huge pay raise somewhere else.
Then there's the grade of the company, if you're at a lower grade company (low pay, mediocre projects, no pension, bad health insurance) good luck keeping people around. They will figure out soon enough the grass is greener elsewhere.
The few people I met with 10+ years of tenure were mostly in large companies with benefits and comfortable positions. They've changed roles internally a few times over the years.
It was also important to keep employees for a long time. I worked for a Japanese corporation, and my boss was 7,000 miles away, and didn't speak English.
So, for me, keeping my employees happy, and feeling valued, was important. Since these were fairly senior (C++ programmers that had been coding around 30 years or so), I gave their families and personal space a lot of respect.
This was appreciated, and I was rewarded with personal loyalty.
The risk to the corporation was that it was personal loyalty. I have no doubts, whatsoever, that, if I had left, the entire team would have left quickly behind me.
My management was not as respectful of my personal life, as I was of my employees, but I enjoyed a pretty remarkable level of trust, as I have some fairly well-considered personal Principles.
Ah nice. Used to work in a large corporation with a major office in NYC (I am in London).
Also recruiting C++ developers, had a few folks with 30+ years of experience.
I think the key is to have developers who are good, but not too great that they can pass interviews in other places (tech interviews are getting impossibly difficult nowadays).
Give them decent work-life balance, decent pay/perks, and decent teammates/manager. They will stick around for a while. Not looking too hard and if they look there's a good chance it doesn't conclude (interviews are too time consuming with a family and too difficult).
There's still quite a bit of attrition though. NYC has a lot of strong opportunities (FANG, banks, hedge funds) and C++ developers have niches in demand (finance/high performance).
Top developers will get a better opportunity eventually. I've seen the case where another company decided to take over somebody or a whole team, it's unstoppable.
A couple of them were really sharp, and now work for another heavy-duty (this time, German) engineering corporation.
Not everyone wants to be a CTO. Many of us just want to do what we love, and be respected and supported, while doing it. For many people, that's a dream job.
When I left my job, I could have gone on to management at another company, and be making fairly decent money. Instead, I decided to "retool" myself, and return to my production engineer roots.
It's a field that is dominated by a lot of ruthless, young, hungry people (and a management culture that has adapted to this), and I may never get anyone to pay me to code ever again; even though I have the ability to make others a lot of money.
For some reasons this makes me think of the generational struggle.
The difference between the 50-60 folks who bought a home before the bubble (if not multiple homes) and can be pseudo retired. Still working for another decade but typically not caring too much about salary.
And the 30-40 folks who is facing the housing bubble with a lifelong mortgage and soon university fees for their children. Typically caring quite a bit about compensation because they're struggling to make ends meet. Sadly they really missed the boat if they stayed a decade at a company (with little raise/promotion).
Obviously they're managed quite differently and have very different concerns in life.
The parent specifically mentioned keeping senior level employees. Juniors can easily jump ship for pay raises, but as you get senior, other values start to becomes more important. Your wage level is likely “good enough” and so stuff like stable working hours, a team that you can rely on, stability etc. become more of a deciding factor, especially once you start settling and having a family. 10 years + doesn’t sound implausible, especially if you had 27 years to build the team. The ones that stick around for longer than the initial period tend to stick around long.
I don't expect managers in a tech hub to be able to keep younger employees for many years, when they can jump ship after 1-3 years to get a huge pay raise somewhere else.
Then there's the grade of the company, if you're at a lower grade company (low pay, mediocre projects, no pension, bad health insurance) good luck keeping people around. They will figure out soon enough the grass is greener elsewhere.
The few people I met with 10+ years of tenure were mostly in large companies with benefits and comfortable positions. They've changed roles internally a few times over the years.