Criticisms of Amazon do need to overcome a fundamental problem.
Unfortunately, it's not this problem..or at least, that's not the biggest problem.
Criticizing Amazon because of the policies held in Team X is like saying 'The U.S. talks way too fast' after visiting New York (caveat, long time New Yorker here). Each state is different in the US. In the same way, each team is different in Amazon: the Whispersync team is much different than the Amazon FedCloud team, and both are much different than the fulfillment team.
Perhaps because it has grown so fast, and been so innovative, the company is not homogenous. So when you criticize policies..please criticize specific policies, and specific teams.
I do not work for Amazon, am not a shareholder, but I do have several friends that work there, on different teams.
Edited to add some thoughts on stack ranking...
I have been at a company that did formal stack ranking. I was never in the lower tiers..but I hated it, because I saw all the stress and drama caused by it. It pit team members against each other and disincentivized team mates helping each other. Stack ranking is also the reason I didn't sign on with one particular company (not Amazon).
I've also been at other companies that did what amounts to unofficial stack ranking: manager has a pool of $Xk to divide amongst pay raises on the team and must justify it by some kind of metrics.
Neither are good for teams, for the people at your company. What isn't good for the people at your company is not good for your company. People are what any company is made on. Innovation, hard-charging business, can cover this to some extent for a while (perhaps a long while), but it always takes a toll in the end.
Perhaps the best compensation structure I've seen (on paper) is at Fog Creek Software (now Glitch), in an article that's now 20 years old:
https://www.joelonsoftware.com/2000/08/30/fog-creek-compensa...
I'm curious to see if Glitch uses that, how it worked in practice, and what the thoughts are about it now - 20 years later.