The way it works at amazon is, if anyone doesn't like you, you're out. It doesn't matter if its relevant or not. It doesn't matter if the person who doesn't like you knows nothing about programming. My boss- the one with the criminal justice degree- would often veto people because they "weren't good programmers". Of course, he had no clue who was a good programmer and who wasn't because he couldn't program!
Sometimes, a person will be angling for the position you're interviewing for. Only, that person will also be included in in the interview loop. They have an incentive to say no, because they want the job.
Inside Amazon, this is called "keeping a high hiring bar". So, they go thru great expense and hassle to bring people in, and then pat themselves on the back when they arbitrarily rule someone out. Saying no, means they're doing their job, keeping that bar high! They once said no to a guy I'd worked with previously, who, as far as I'm concerned, was a much better programmer than me. (Better looking, gets along with people better, etc as well.) I mentioned this to the hiring manager, and he said "We have to keep a high bar!"
How many people do you think want to interview with Amazon again after going thru a 6 hour process like that?
Since their process is completely arbitrary, sometimes they get really great people (god only knows why they stick around-- I think a lot of engineers don't really know their own worth) but they also get a lot of people who randomly rub the right people the right way and get hired. It was completely arbitrary, it seemed to me.