Onsite interview process was fair. Difficulty level was average. First person to interview me had horrible communication skills. He couldn't explain coding problem clearly.
Remaining three people were very good in communication. After on-site interview, facebook requested for yet another coding phone interview.
Post onsite phone interview is what went wrong with me. This person had poor interview skills. He asked me an advanced algorithm question about graph/tree traversal (search for "same fringe problem concurrency" and you will know what I am talking about). I gave a natural solution which was not space efficient, but interviewer was looking for a specific solution he had in mind.
I lost the deal to this question. I would give thumbs up to recruiters handling interview process. I think they are one of the best in the industry.