For last 10 years India has been producing more smart engineers than local market is willing to pay for. Note that the demand is more than supply but Indian companies still will not pay engineers top salaries.
So for years it became easy for companies like Amazon, Adobe, Microsoft to pay top of market and get their pick. And these engineers, historically, were willing to grind to any levels for a ticket to US. And Amazon offered that. 1.5 years in almost 70% of their Indian employees move to US on L1 visas. Even lower tech market salaries in US are life changing for most of these folks. Which is why 50% of lower level engineers in Amazon are Indians and around 70% are asians.
It hasn't mattered to Amazon if people leave after 2 years. Because they always have a next batch coming from India. But then local companies started to pay and Amazon struggled to hire top talent. At this point they were smart enough to realise they need workers more than engineers. And now Amazon hires more engineers than any product company in India. It goes to more colleges than any other company. It pays them in top 80 percentile of market, they get to go to US where get paid top 70 percentile of market. So what if they get treated like shit for couple years. That's the cost of buying a 3 bedroom house for many of them.
The day Indian market is big enough to absorb these engineers at their price, Amazon recruiters will be on their knees for their next batch. Unfortunately due to pure currency difference it's always going to better financial decision for most Indian engineers to go to US, at least for next 10 years and Amazon will not have to treat it's employees like humans.