Genuine question as I'm surprised by the Amazon comment given their well known interview process, are there really programmers there who can't program very well?
Anytime I interview I get that impression, but when I work with teams of varying talent levels, there are a lot of people that can write good code it just takes a long time. In the long term these people are more useful than people who write ok code quickly, because they, slowly, reduce the amount of tech debt.
One problem is that it is extremely hard for management to tell good devs apart from bad devs. So that puts a huge randomness in as far as who is given authority and interesting projects and so on. Some of the best devs I have worked with, the best bosses I have worked for would not rehire. It is quite odd.
Anecdotally I would say that standards are going down for Amazon hires. Recently I've seen some average and below-average people move there. They also seem to be expanding their hiring locations geographically. IMO the reason for all this is because they have grown to such a size that they are exhausting the supply of talented developers in the world.
Yes, I've interviewed several AWS SWEs and was shocked at the lack of basic proficiency / competence. It's not just Amazon, though. This is everywhere.
Interviewing is it's own skill, and even then some complete head scratcher cases get through (who can't code and interview poorly).