| I've been coding since I was 14 (I'm 27 now) and went to uni; I usually never have a problem with technical interviews, but I applied for Facebook just to try out their interview process (because one of my academic-minded software engineering friends told me that he didn't pass the third interview - So I was intrigued). I thought that their questions were mostly good but the interviewer makes you code live in realtime - I found this really stressful and I froze several times. I remember one of the challenges they posed in one of the interviews was to flatten a JSON multidimensional array that had an arbitrary level of nesting. I implemented the recursive solution without any problem (which is the difficult part right?) but then the interviewer asked me to come up with a non-recursive solution - This is actually easier, but because I was under stress and was still thinking about the problem in recursive terms, I just froze. I even asked "Do I need to use a fringe list?" (referring to a structure used in several search algorithms) but I don't think the interviewer understood my question and they weren't able to give me any guidance for what they were specifically looking for so I just asked to skip that question because of time pressure. Then later they asked some really easy questions about HTML and CSS (which I've done thousands of time) but because of the IDE they made me use, I couldn't actually run the code to test (and under stress, I forgot the exact syntax for a few things). I guess this is an interview process you need to really prepare for. I suppose the process makes sense for FB; the feeling of 'being watched' which I felt in the interview is probably common while working there day-to-day (considering the open workspace environment) - They need engineers who can perform in such an environment. I'm definitely not one of them. |
I've frozen in interviews before under similar circumstances. The only blame I place on myself is not being a better interviewee... it really is a skill unto itself quite apart from the job and apart from programming.