Engineer currently working at Amazon here, and I agree with most of what's in the article. Obviously, there will be different opinions on Amazon depending on what team you work for. I can speak in detail for my team in particular, and the biggest complaint that employees reported in the annual survey is the high operational load, which cuts deeply into your personal life for a week once in a few months. In a nutshell, you have to cancel all activities during your oncall week and you will most likely get awoken almost every night of the week. Random stuff happens (host failures, overload and random internet weather/congestion) and there's a certain stress that hangs over your head as you are the primary person for keeping the service up and running at all times. Although...I do have to say operational load has gotten better over the past year as we've made it a goal of ours to reduce the number of pages we get.

Most of my friends who don't work in tech think that Amazon must be a great place to work for since it is a pretty successful tech giant and they think all tech giants give amazing perks and benefits to their employees (probably due to the standards set by places like Google and Microsoft). But this frugality to their employees is one of the main keys to Amazon's success. Amazon's goal is to make the customer happy, and they will be frugal on expenses that don't contribute to that goal. I mean, why would the customers care whether employees get free lunches everyday? This type of thinking is much different than a place like Google's where the obsession is towards making the employees happy, which in turn makes more productive employees.

As for stack ranking employees, it depends on the team you work for. My team in particular does stack rank people. Basically if you get ranked in the bottom 10% bucket for two years in a row, then you're fired. Yeah I know this system sucks sometimes as an employee but it does do the job of keeping people on their toes and making sure the quality of the people on the team is high. I personally tend to not like to work with people who coast at work and produce results at a slow pace, so I have no complaints about the stack ranking.

The pay is actually quite decent for a new grad. You might get slightly less in absolute pay from a place like Google or Facebook, but this is offseted by the lower cost of living in Seattle and also the no state income tax in Washington. But the pay on average for mid-level and senior engineers do lag significantly behind that of other tech giants. Again, this goes hand-in-hand with Amazon's concept of frugality and lower costs for the customer.

I would agree that Amazon is not always a fun place to work for due to high pressure to produce results and also the pager duty. If you want to have good work/life balance, then Amazon is not the place for you. Some of my co-workers originally from Microsoft who have gotten used to the comfortable lifestyle there are finding this out the hard way. Those who enjoy the relatively fast-paced work environment and the great potential for individual growth are the ones that are most successful and stay at Amazon the longest, while I've seen others who have more or less burned out by 2-3 years and have left the company.

In all, now is a great time to join Amazon as it's experiencing unprecedented growth and more buildings are being constructed now just to have enough office space for everybody. If you were to think about working for Amazon though, I would recommend some teams in AWS as the projects there are more technologically interesting and the hiring bar (and in turn quality of your peers) is higher than most other teams at Amazon.