I applied through a recruiter. I interviewed at Meta
Interview
I applied online,using the friendly Facebook career website.
I received an email followed by informal phone interview.Afterwards,I got the chance for a tech interview.
The first questions were a little general,tell me about yourself kind of thing.previous experience and the challenges faced.
There were 2 coding problems, one based on recursion,factorial kind of thing...
And afterwards ,a question on merging two sorted arrays in linear time.My approach solved the problem in quadratic time and was asked to improve it to the best I can.
At first I couldn't really see how;but the interviewer was really nice.He gave me hints to start with. At first I stumbled because I could not immediately get the whole idea.I kept on saying stuff without changing the code until I said the right thing and he agreed with me afterwards.
I am waiting to hear the outcome of the interview which I have hope I passed and will get the chance to work with such wonderful and humble people.I really liked the guy,so down to earth...I feel like crying right now...
I applied online. The process took 1 week. I interviewed at Meta in Feb 2015
Interview
I applied online and was approached by the HR to initiate the interview process. My next interview was a technical one and I had hoped to clear it, but failed. The interviewer was helpful, but failed to see my perspective. I initially approached to solve the problem in O(N) time using an algorithm that I thought I knew. But I got confused and 15 mins in the interview, I asked whether I could use another approach. This is when I got shaky. I proposed a solution in O(N^2) time. He asked to make it faster and using Hash Tables, I improved the time to O(N) and space to O(N). And with a hint from the interviewer, I ended up solving in O(N) time with constant space (and then started writing the code). During the whole interview session, I accidentally kept confusing things (for instance calling a node,a root node because I was thinking in terms of sub-trees and recursively). This generally doesn't happen even when working under stress. I felt the interviewer grossly underestimated me, but I blame myself for that. If there is anything I would different then it would be to use the easiest approach to solution the question first. A positive start boosts up the confidence. Make sure to explain CLEARLY (using the correct terminology) how to tackle the problem. One more thing: embrace the fact that there is always a possibility of getting rejected. So, blurt out whatever you solution you think should work. There is not enough time to derive your approach. And be confident. Sometimes you can trick the interviewer into believing that you know exactly what to do, even when you don't (if you are close enough).
Interview questions [1]
Question 1
A modification of the lowest common ancestor problem (bonus points if you answer using RMQs)
I applied online at the Facebook website. They came for a tech talk in my university.
After a few days I got an email for a phone call. It wasn't a technical interview. Just a brief introductory call. After the call they setup a technical interview.
The technical phone interview involves coding on colabedit.
Interview questions [1]
Question 1
Don't just go through the difficult questions online. Do the basic ones too that involve logic.