Working from home is largely a non-issue (mostly; there are no clear rules).
Get rated based on results, not time spent at your desk (but these results might force you to perform overtime). Internal transfers are easy (unless a manager prevents you from it).
Work with mostly smart and funny people.
I have to preface this by saying that Amazon culture can apparently vary wildly depending on the team and org. I've only worked in one team and two orgs myself. That being said, I think there are some things you might find to be fairly consistent across Amazon.
It's a Java shop with enormous legacy baggage, and mostly lacking in will and competency to change that. Yes, there are teams with a heavy emphasis on Go or Python, but once you go off the Java path, you will find yourself having issues. Co-workers are afraid of using other stuff, and existing infrastructure caters largely to Java devs. It's IMHO a legacy language, and people who are good at using it also IME usually come with a legacy mindset.
It's stingy. They call it frugal. It means it's up to you to explain to your friends that you don't get a free or even discounted Prime subscription as a full-time employee. It's also up to you to figure out how to cut down your server pool even further every couple of weeks to save on operational costs. Amazon is famous for having an abysmal perk philosophy. Which would be great if you would instead get more salary compared to other big IT companies, but you don't.
It's political. Annoy the wrong senior manager, and you're good to go on your path out. Managers have the means to control your career and well-being at the job. If you're a good little member of the sweatshop who doesn't voice their opinion, you're probably good (although you still might find your promotion hard to achieve after 6 years on the job as an SDE2).
It's hypocritical. Leadership Principles sound awesome, but they get abused like there's no tomorrow. Like "being a leader" means to do overtime when required, not being able to have a say in things. Or "make decisions based on data" is fine if you're supposed to justify your decisions, but when you're about to get fired, data matters little.
Oh boy, I wouldn't know where to start.
If I had to choose one thing among many: start valuing your employees as you do customers and revenue, and you might get better.
I had one phone screen and 4 additional remote interviews for my 'loop'. They were all pretty much the same, with a technical question and behaviorals. 3 of the 5 interviewers were very nice and enjoyable to interview with, while 2 of them were unhel
Coding + Behavioral questions: The interview will include a combination of coding challenges and behavioral questions, focusing both on your technical problem-solving abilities and on how you collaborate, communicate, and approach real-world team si
Interview process: Online assessment, followed by a recruiter screen, then four technical rounds — two coding interviews focusing on algorithms and problem-solving, one coding interview like low-level system design, and one system-design interview ev
I had one phone screen and 4 additional remote interviews for my 'loop'. They were all pretty much the same, with a technical question and behaviorals. 3 of the 5 interviewers were very nice and enjoyable to interview with, while 2 of them were unhel
Coding + Behavioral questions: The interview will include a combination of coding challenges and behavioral questions, focusing both on your technical problem-solving abilities and on how you collaborate, communicate, and approach real-world team si
Interview process: Online assessment, followed by a recruiter screen, then four technical rounds — two coding interviews focusing on algorithms and problem-solving, one coding interview like low-level system design, and one system-design interview ev