I have only worked for two large companies in my career - both Fortune 10 companies when I worked their - General Electric and Amazon.

At GE? Sure things are random. But it was also just another random enterprise company where it really didn’t make sense to work toward a promotion just to make $10-$20K more. You would be better off just getting another job (which I did after 2.5 years). There were no published leveling guidelines or procedures.

But I can guarantee you that a random mid level developer is not going to walk up to their manager with a competing offer and be handed a promotion at any of the large tech companies. The manager by themselves can’t determine a promotion. There are promo docs, committees, recommendation requirements. Etc

At 51, with just me and my wife, grown kids and already had the big house built in the burbs that sold for twice what we bought it for 8 years earlier and we downsized to a condo one third the size in state tax free Florida, the juice ain’t worth the squeeze.

But if I were 22 and had a choice between wallowing in enterprise dev making 90K doing CRUD apps or making $160K out of college and over $200K at 25, I would play the game with the best of them.

My own anecdote is that outside of BigTech now, I’m a staff consultant working at a 3rd party AWS consulting company making the same as a 25 year old SA that I mentored when they were an intern at AWS and the first year they came back