• Hard to beat the size and scale of the problems you can work on. • Great products with a focused approach to the business. • The breadth of projects and size of the company means if you move around, you can try a lot of different things (you'll have to make it through the first year first, though). • Lots of smart co-workers. • Great for networking: Continuous hemorrhaging of high-quality employees means you can quickly broaden and improve your network outside of the company.
Amazon is an industry leader. There is a huge variety of positions and products available. You can learn a lot, both good and bad, in a short time at Amazon. Constant employee churn means you will soon find you know more people outside of Amazon than in. This will help when you decide to jump ship as well.
Amazon facilities continue to expand. They offer few amenities comparable with their peers, but they do offer a downtown campus in Seattle which may be appealing. They dominate the South Lake Union neighborhood north of downtown Seattle, so you may find yourself in new construction in a growing neighborhood. There is, however, a lot of friction with existing non-Amazonian residents.
Extremely high turnover of SDEs and dev managers. You are unlikely to see your third anniversary, no matter your commitment.
Too risky for people with families.
Performance management and stack ranking may be creating perverse incentives that are harming company culture.
Pay is so-so in comparison to peers.
Benefits are not comparable to peers.
Frugality can make it hard to do your job.
On-call and operational load can be onerous, depending on the team.
Work/life balance can be bad.
A large proportion of new employees don't make it through the first two years, and not simply because of burnout. My impression is, at this time, far more new employees are actively pushed out within one or two years than leave voluntarily. If you are young and single and can approach Amazon as a temporary gig, it's worth a try, but I would NOT recommend uprooting a family and moving to take a job at Amazon. It is far too risky. I've seen too many solid engineers who delivered well get booted unreasonably before two years are out. (For confirmation, check out the tenures listed in these Glassdoor reviews. Take those with less than three years' tenure with a grain of salt.)
The stack ranking and performance management system is not transparent and can at times be erratic in nature. Bad luck, as much as underperformance, can end your career. To survive the stack ranking process, you must have a manager who will go to bat for you. If you have a weak manager, or worse, no manager, you are at real risk. New employees are restricted from moving in their first year, so you'd best hope that you end up with a good manager on a solid team when you arrive. If you arrive to a managerless team, a troubled team, or an org under new management that is seeking to clean house, you will have little means to improve your situation and may very well be swept out despite your best efforts.
Manager turnover is a constant. Not only does the software engineering staff turn over or get pushed out at a phenomenal rate, but the dev manager staff also turns over quite quickly. I have been at the company for a very long time and generally have seen dev managers have tenure of under a year in any particular position on average. Not surprisingly, the quality of the dev managers I've seen over the years consequently has been quite variable. You can easily find yourself with a manager with little technical skill, poor ability to manage upward, or little ability to coach employees toward growth. Even if you find a high-quality manager, it is likely you will find them gone before you've built a solid relationship with them. I highly recommend sticking close to good managers if you can, and you will generally find when one moves within the company, all the savviest employees under them will stick with them and move too. If you are new, and find all the senior staff fleeing, take note; you may want to jump ship as well before it goes under.
For many years, what I appreciated about Amazon was that the business leadership was smart, open to being challenged on the fundamentals, and tended largely to make correct business decisions. In the past few years, however, I've seen a notable uptick in bad behavior and employees optimizing for themselves over the best interests of the business as a whole.
With a company of Amazon's size, it is difficult to extrapolate one's own experiences to the wider company, so I'm not sure if this is a problem local to my group or reflective of a wider culture shift. I will note I have seen this as a pattern in most of the recent groups that I have worked with, and many of my friends who are senior SDEs in other departments across the company have left in recent years citing similar problems where they work - an increase in employees seeking their own advantage rather than doing what's right for the customer and the company.
The general assumption I've seen others make has been that the performance management system is starting to create perverse incentives for employee behavior, and that either in many cases it is too risky to do the right thing for the business, or that over time we've gradually weeded out employees to the point where we now have a disproportionate number who are adept at gaming the system by seeking their own advantage above all else. But all that is, of course, speculative. It is increasingly hard to operate outside of the narrow confines of the expectations for your role. These constraints can make it hard to step up and do the right thing when a need exists.
In general, Amazon does pay well in comparison to small firms, but does not pay well in comparison to other companies of similar size and prominence. Given the rate at which I've seen new employees get fired recently, I wonder whether they aren't also gaming the compensation system by offering a significant chunk of compensation in stock options that many employees will never see since they will not survive beyond two years. If you find yourself comparing an Amazon offer to another large employer's offer, take under consideration the likelihood that you will not see the full value of your stock grant.
The benefits are also notably shabby in comparison to other large corporations. And Amazon's ever-present frugality can be wearing. The majority of the staff I work with bring in their own basic equipment, down to mice, keyboards, monitors, and even CPUs, because they get sick of the low-quality tools the company offers. Frankly, it's embarrassing.
Most groups have some level of on-call commitment. I don't find this onerous, but I know many do; it generally varies in quality and load from group to group. Ask carefully about this if it is important to you before accepting a position. I've known many an employee get caught by surprise when they arrived and discovered they were going to be regularly on-call. Ask what the ticket count is of any group you might join. It will give you a good sense of how out of control their operational costs are. Numbers in the hundreds is a serious red flag.
While I think Amazon still has a bad reputation for technical debt and heavy operational load, I do think that this has vastly improved across the company in recent years and the internal dev tools do seem to be getting significantly better. It is a big company, though, and an old company (relatively speaking), so you will find a lot of old code coupled with the high employee turnover, which means there is a good chance you'll end up owning a lot of poorly understood and poorly written code. If this is something you want to avoid, try to join a new team without much product history.
Inflexible use of stack ranking is starting to harm the business. The hidden costs of pointlessly churning through new employees is never adequately assessed. (Amazon has never been good at assessing these sort of hidden costs across many different domains.)
Employees across the company are prioritizing their limited and temporary personal needs over the needs of the business. The culture of the company is changing in a way that is making it less flexible and adaptable as a consequence.
Amazon has always had a bad reputation locally for employee retention and relations. This too has hidden costs that continue to rise for the company.
1. Online Assessment Interview Invite to schedule. 2. Hiring Manager Round 2/3 LPs and 2 LeetCode medium problems. 3. Interview with SDE II Half an hour with LPs, and the other half doing a coding question to write maintainable code. 4. Bar Rai
After passing the Online Assessment, you then move on to the Final Loop Interviews, which consist of, but not necessarily in specific order: * Behavioral Interview * Technical Coding Interview (Leetcode style) * Low Level Design interview (OOP)
It went well, with half an hour for leadership principles and the other half an hour for coding and system design. It’s a great experience overall. System design, they expect more clarity.
1. Online Assessment Interview Invite to schedule. 2. Hiring Manager Round 2/3 LPs and 2 LeetCode medium problems. 3. Interview with SDE II Half an hour with LPs, and the other half doing a coding question to write maintainable code. 4. Bar Rai
After passing the Online Assessment, you then move on to the Final Loop Interviews, which consist of, but not necessarily in specific order: * Behavioral Interview * Technical Coding Interview (Leetcode style) * Low Level Design interview (OOP)
It went well, with half an hour for leadership principles and the other half an hour for coding and system design. It’s a great experience overall. System design, they expect more clarity.