In my 20+ years as a developer, I've always advised developers working under me to move around and not stay in the same place too long. After 3 years it's potentially time to start looking around..
It's not just about the money, you also want to acquire varied experience and see how different teams work and tackle different problems, and expand your own experiences.
You can even come back to a previous company some years later and probably come in at a higher spot than you'd have been able to get if you stayed put and tried to climb internally! I've seen this many times.
We called it the "zig-zag"..
You do make a good point about sticking around long enough to see the outcome of decisions and the successful(?) launch of products or projects.. That is important for sure, and it should impact the timing of making a move to a new thing.
That said, things are a bit extreme right now in terms of how quickly people change jobs, but as someone else said the way salaries have exploded, you can move to the literal same job somewhere else and get a 30% raise, so it makes total sense why people are doing it.
That may not last forever, so get your raise while you can! New opportunities will always be there.
It's totally possible to get that, within a company. I worked for a Japanese company for 27 years, where they rotated assignments as a matter of HR policy. They also enforced things like code Quality, formatting, process, etc., to allow easy changes of personnel. Heavy-duty mentoring (by some of the top people in the entire world) and training. There was a direct career matrix, and the corporation took very good care of its employees.
This did not come without cost. The overhead was staggering. Lots of what I call "concrete galoshes"[0].
Retaining talent is not easy. It takes a great deal more than just bucks. It requires a loyalty (true loyalty, not the "weasel" loyalty that corporations like to put into glossies), from the corporation, to its employees, and this needs to be inculcated into the DNA of the entire management chain; from the CEO, to the first-line managers. Like I said, it needs to start at the top. I seriously doubt there's many top-level folks that have the stomach for it.
I did it, under very challenging conditions, for over 25 years. When they finally rolled up our department, after nearly 27 years, the engineer with the least tenure had a decade. These were top-shelf, highly-experienced C++ image processing/algorithm engineers; not tired, sub-par, oldsters.
Yes of course there are different experiences and paths, I certainly wasn't implying that there was only one way.
The company you worked at sounds like it had a really good structure and really put in the work and time to help employees grow, and unfortunately that's not the case everywhere.
But I would say from my experience across many jobs, and from speaking with all my peers, consensus is that doing diagonal moves in your first 10-15 years on the job will land you in a better place than staying put that whole time, both from an experience and skills perspective, and from a role/seniority/salary perspective.
It's not just about the money, you also want to acquire varied experience and see how different teams work and tackle different problems, and expand your own experiences.
You can even come back to a previous company some years later and probably come in at a higher spot than you'd have been able to get if you stayed put and tried to climb internally! I've seen this many times.
We called it the "zig-zag"..
You do make a good point about sticking around long enough to see the outcome of decisions and the successful(?) launch of products or projects.. That is important for sure, and it should impact the timing of making a move to a new thing.
That said, things are a bit extreme right now in terms of how quickly people change jobs, but as someone else said the way salaries have exploded, you can move to the literal same job somewhere else and get a 30% raise, so it makes total sense why people are doing it.
That may not last forever, so get your raise while you can! New opportunities will always be there.