Let me preface this: the work culture depends strongly on your team. That said, let's segue into the first point:
- As with all large tech companies, tech debt runs rampant, especially on direct customer-facing applications. The insane tech debt backlog can cause affected teams to divert ownership of a technical component to another team, even if that ownership model isn't the right one. Take this with a grain of salt; there are teams with smaller backlogs than others. Choose your team wisely!
Meanwhile, here are some general cons I have:
- Leadership sets very aggressive deadlines. In fact, more than half of the original project deadlines will get pushed back for reasons that aren't discovered until later. Be ready to crunch when deadlines approach and are ready to explain delivery delays when original deadlines aren't met.
- Bureaucracy. As a large company with 1.2M+ employees, it is common for leadership to make decisions without involving all the right people along the way.
- Away-team work. This is where you do development in an application your team doesn't immediately own. Away-team work is more common than you think at Amazon since project headcount isn't always sufficient. Beware of long-term away-team projects; the longer you spend on these, the harder it is to stay connected with your actual team.
- Lots of meetings. They've only increased ever since COVID lockdown began.