Pros
Amazon is doing lot's of cool stuff...but lots of boring stuff too. There are really well run teams...and very badly run teams. The experience for software managers and engineers is all over the board, from really run low operational load teams to teams where people burn out after a year. - Amazon is built, quite deliberately, to be Darwinian. You can generally expect that anyone who's been here for more than 2 years is competent and motivated or they wouldn't have survived. You can count on them as long as your priorities are aligned. There aren't many slackers here, and they don't survive long. - We work on so much stuff that there's always an opportunity to find amazing cool stuff to work on (note that it's an 'opportunity', one that you have to pursue) - A chance to make a huge difference - A place where you can learn a lot about all kinds of things, both technical and about yourself - Amazon encourages high mobility - even your manager can't prevent you from moving to another team within 6 weeks (normally, more than a few months under unusual conditions). - Your friends and family have actually heard of the place you work and have at least a vague notion of what Amazon does without you having to explain
Kontras
- You're responsible for your own career progression and finding the places and teams that are doing the stuff you want to do. No one is going to take you by the hand and help you with that. - Amazon is built, quite deliberately, to be Darwinian. The strong survive and the weak perish (metaphorically speaking) and the 'bar' is constantly increasing. The level of performance that would have been acceptable five years ago will get you canned today. It's a kind of crucible that'll help you develop a harder edge, if you can survive, that can serve you well in your career and in life, but it's often not a pleasant experience. I wouldn't recommend it as a place to work for just anyone.