My previous job was full of time-serving pot plants, so my bar was pretty low after that, but coming to Amazon felt like a night and day improvement for a number of reasons.
My standard answer when people ask me if I like working at Amazon is "the idiot ratio is low". You will be working with smart, committed people and spend a much smaller amount of time dealing with idiots than I have experienced in the past. I've now had 3 managers; 2 of which were awesome and 1 whom I think should not be a manager.
One good thing about Amazon is that it's pretty easy to switch teams (after you've been in a team for a year). This allowed me to move to a manager and organization that I trusted.
Amazon is very good at focusing on things that matter (hence the title of my post). The leadership principles are used every day, and that is really helpful if you're a software developer to prevent people from wasting time on things that are 'cool' but don't have an impact on the real world.
Yes, it means you don't get to spend lots of time refactoring code or using the latest fad NoSQL database, but it does mean that you're forced to try and maximize your impact on the customer. In the long run, I feel like doing a job where your work feels valued is better than having a perfectly architected codebase.
The horror stories are true if you have a manager or organization that is a slave driver. Upper management is pretty ruthless in not investing in things that don't have a direct financial impact. Hence, internal tools and development environments can feel very underdone.
The on-call/pager duty situation for some teams is out of control and means you can never make any forward progress. These teams are few and far between, but from my observations, they are the ones with enormous turnover.
Don't blatantly violate your own principles by not selling the Apple TV / Chromecast on Amazon.com.
Otherwise, I think that good vision and management are some of the best things Amazon has going for it.
Before being considered for an interview, you will need to pass an OA. The interview process will consist of three interviews. * The first interview had two coding questions. * The second interview included two behavioral questions and a LLD qu
The first round was a two-question online assessment. The second round was a virtual onsite with four rounds. Each round, the interviewer spent about 30 minutes covering leadership principle questions and left about 30 minutes for technical coding
There was an OA, a phone round with the recruiter, and then a loop with the panel. This included medium and hard LeetCode problems, followed by system design.
Before being considered for an interview, you will need to pass an OA. The interview process will consist of three interviews. * The first interview had two coding questions. * The second interview included two behavioral questions and a LLD qu
The first round was a two-question online assessment. The second round was a virtual onsite with four rounds. Each round, the interviewer spent about 30 minutes covering leadership principle questions and left about 30 minutes for technical coding
There was an OA, a phone round with the recruiter, and then a loop with the panel. This included medium and hard LeetCode problems, followed by system design.