There are companies out there where managers, mechanical engineers, marketing, and all the other non-technology roles work at for a decade or two. It's the software developers and IT people who switch jobs after two years working there.
What's the difference between those job types? It's that software development and IT have a multimodal salary with much greater discrepancy between the companies that fall into the distribution around the lowest mode and the highest mode.
https://newsletter.pragmaticengineer.com/p/trimodal
If you switch from working at a local area company to Big Tech, you significantly increase your salary. For other careers, going from the local job to the national big company will likely give a much smaller boost.
Here are the stats for tenure: https://www.bls.gov/news.release/pdf/tenure.pdf
Table 6 (last page) shows the median tenure by job classification. Computer and mathematical occupations are the ones that were going down between 2014 and 2020. The others were holding fairly constant.
Table 2 shows 21% of people 35 and older have 10 years or more of tenure at their employer. At 45 years old, it's 45%.
I still hold that software development is the outlier for shorter tenure and the largest factor driving that is that you can quit your job and get a new one that pays twice as much.
Do you have an alternate explanation for this data or published data that contradicts this?