Contracting at Microsoft
I was a contractor for Microsoft some years ago (local employer, figured it'd be good for my resume). Local law [1] requires a 100-day break after each 1-year long stint [2] so as to avoid having to give employees the same benefits as a full-time employee.
What has resulted is that contractors will work for 1 year at one local company, then 1-year at another company, then back to the first company the following year, ad nauseum. This has lead to issues where contractors stagnating because they end up under the same manager they had a year ago and their re-hiring process is just a formality. It gets to the point where there are no new ideas coming in, just the same bland one getting spread between two companies. This process has spread from Microsoft and is now affecting Amazon, Boeing, Expedia, F5 Networks, Nintendo of America, Starbucks, T-Mobile, Valve, and Zulilly. Every once in a while you get something like AWS, but then they contractors working on it go over to Microsoft and you end up with Azure where they will start to homogenize and become indistinguishable (AWS sinking and Azure slightly improving until they meet in a mediocre middle).
This isn't just a localized problem, its become deeply embedded into the Silicon Valley region, and its taking a stronger hold as there are a lot more companies to cross-pollinate between and many people in niches where they can only get hired at a single company and its competitor.
[1] Not so much a law as a legal precedent set by a lawsuit that the local companies are trying to avoid falling afoul of
[2] There are specific types of contracts that can get around that, but that's a discussion for another day