I had two phone interviews and SIX back to back onsite interviews. The second phone interviewer did not call at the assigned time, I had to track the recruiter - when they finally tracked the guy down, they arranged for another call. The interviewer was clearly frazzled and had no idea how to frame questions - he got lost explaining the question itself!!
Anyways, I aced both phone interviews and go invited to on-site and they scheduled me with the same guy for the first interview. Guess what? He doesn't show up, AGAIN! I sit in the room with my 'oh so cool iPad' waiting, then finally he shows up 45 minutes late and they made him come back again after my last interview.
Total 6 on-site interviews with coding and design questions. The design interviewers weren't really sure on what they were looking for - they didn't even know how to explain the question well or how to probe deeper. After all six interviews (majority of which ended up in the interviewer clearly impressed and one even saying 'hope to see around here soon'. I got a small tour of the company by the recruiter.
The next day recruiter calls me and says that they were very impressed with my interview feedback and wanted to see where I fit and he wil call back and arrange a phone call with a hiring manager and then prepare an offer.
Few hours later the recruiter calls back and tells me that none of the hiring managers found me to be a good fit so they are not proceeding an offer at this time and gave some vague assurances that they will keep looking for a fit (wth?!)
I found the whole interview process totally BACKWARDS. Why would you put a candidate through EIGHT HOURS of interviewing - not to mention waste his entire day and energy - and then have all your interviewers give positive feedback AND THEN find out if he is a good fit or not.
In any mature stable company, that kind of stuff is cleared out BEFORE the first phone interview or DURING the phone interviews or DURING the on-site interviews. Not AFTER the whole process.