(Well, there was one hiring manager idiot who could not conceive of anything other than linear non-concurrent contracts as being honest - that interview did not go well, but I dodged a bullet!)
I've not experienced a layoff, but I also think its extremely abnormal to be in a position for so long and only have one manager.
It's also the case that the "everything is transactional, fuck your coworkers, leave your job the minute you can plausibly say you learned something and move on, chase impact at any cost because you only have one career" live-to-work contingent is just much louder online, especially here. After all, these are people that are investing a lot in their career, while IME most of my coworkers, even managers (though I don't personally know very many VP-and-up managers) are work-to-live people, mostly interested in their families and hobbies, and seem to rarely post on forums like this.
In any case, I'm fairly certain that there are (or were until recently) Labor Department researchers who have figured this all out empirically and could give us an answer if we knew where to look.
That said, I don't think one can blame the devs for it, since it is the companies themselves that have created the environment where the above holds true. I never understood why - intuitively, it doesn't make sense for the company to underpay its devs to the point where they leave for a competitor, and then come back and get rehired at a much higher salary anyway. But it is what it is, and the workforce has caught on.
It's because they are unable to tell who is worth what. So they outsource it to the market. If you managed to pass the interviews and get hired at the other big tech company, that's proof of value.
It's also self-reinforcing. If you don't leave, it's a signal that you don't trust your own market value to be higher.
For every dev that is able to make the "Microsoft -> Google -> Amazon -> Microsoft" circuit, you have n others who look hardly distinguishable to management who can't do that if they tried quitting. In other words, quitting is risky, in game theoretic terms it's a costly signal of competence.
I also wouldn't be surprised if it had some internal politics reasons that there are certain rules/power games around salary raises that don't apply when someone is hired from scratch.
Regarding this:
> It's because they are unable to tell who is worth what. So they outsource it to the market. If you managed to pass the interviews and get hired at the other big tech company, that's proof of value.
They still hire people who do not come from other big tech, though, so there is a process in place that at least claims to tell who is worth what.
The other problem is that the filter is in practice not for competence but for tolerance of risk.
This is different than what GP asked, it excludes anyone who might prefer stability over fast raises. Are the job-hoppers the majority, or are they just more visible because they're always interviewing?
At my last job people came and went, but I'd say that the job hoppers would be more inclined to say for 3-4 years rather than 1-2 years.
As a further insight, I'd say that my current job is at a big company, and in my town there are probably only four or five other companies of comparable size, while my previous job was medium sized and there were probably a lot of companies of that size that you could move to.
Anecdotally speaking, I spent 6+ish years at my first "old tech" company. My org in this (very large) company was constantly simmering with resource actions (mostly small scale layoffs). There was lots of negative energy there. I left to take a programming/data analytics gig in a large, privately held financial company that had never had a layoff. This was unfortunately timed, 2 years later the financial crisis of 2008 kicked off and I (and my entire team) were all laid off. I have been with my current employer for approaching two decades and several of my peers have been on our team for that much time.
I have had a SINGLE manager in that time window. I can't even name all the managers I had in my first job due to near-constant re-orgs and layoffs.