First off, let me just say that the interview experience with FB was great. Everyone during the process (except the rejection) made me feel better and more comfortable than any other interview experience I've had.
Pretty standard process. Recruiter reached out to me through email and I decided to pursue even though I was not actively looking. After the initial call with the recruiter, I had a technical interview. Nothing hard, simple array manipulation. After passing that, I was set up for the "on-site" which is fully remote these days. I had 3 coding, 1 system design, and one behavioral/coding. I felt that I performed very well especially considering the interviewers were reacting so positively. I think that the behavioral part was my downfall. I was asked the question 'Tell me about a time you had a disagreement with your boss,' and the interviewer did not appear to like my answer. It's always difficult because really they want to make sure that you're some who expresses yourself while not being a pushover; seems like there is an extremely fine line there.
After about a week, received the standard email that I was not going to receive an offer. And, as usual, they provided ZERO feedback. FB people, if you read this, I know it's policy, but that should definitely change. If you're telling a candidate just to re-apply in 12 months, you should give them a reason as to why you aren't hiring them now. How is someone supposed to know if they're a terrible person, terrible coder/designer, and be able to improve on those things in a years time if you aren't even going to tell them!?