I had a phone interview with Facebook London as first round for position E4.
It was 45 mins round with 2 questions, in which first 5 mins were reserved for introduction and last 5 mins for Q&A. Questions were 1 easy and 1 medium leetcode problem, which I don't want to share because of interview terms and conditions.
I got rejection even after doing both questions on time, with communicating my approach and complexity analysis first with interviewer and running on a test at last. But I learnt following points about Facebook interviews/interviewers:
They want BEST possible solution. Explain the BEST which you know. Don't waste your precious 35 mins in explaining bruteforce approaches which nobody cares. Also, if a solution has two approches, one with recursion and one without recursion and if both are taking almost same time for you to code, then always choose without recursion. For me, the second problem I solved in linear time and linear space complexity. But later I realised that with a different approach, it could be easily solved in linear time and constant space complexity. It might be a reason for rejection.
They want BUG FREE solution. Remember BUG FREE. Explain and implement all corner cases which you can think. Note that you will not be given IDE or you will not be able to run your program somewhere. So use your brain and point out corner cases, before the interviewer tells it to you and it leads you to rejection.
Keep your code SIMPLE. Don't use or just remove unnecessary variables/code from your implementation. Variable names should be self-explanatory (not like plain English characters).
Manage your TIME well. You are to clarify questions, edge cases, explain one or two best approaches to interviewer, write clean code quickly and then run on test cases. So, keep practicing and don't be nervous.