I applied online. The process took 2 weeks. I interviewed at LinkedIn in Sep 2014
Interview
Applied online, got the phone screen with HR. They asked basic questions about your career and what you have done so far. Then got the 1st phone interview which was very simple and easy coding question. The 2nd phone interview was much harder and requires a thorough amount of studying. Be prepared!
HR was very nice and responsive.
The recruiter contacted me through email and arranged me a technical phone interview. I'm a little disappointed though, the interview was scheduled at 6:00PM Eastern Time.
During the phone interview(using collabedit.com), the interviewer asked two coding questions:
(1) the deepest common ancestor of two nodes of a tree
(2) all permutations of a string.
The questions were reasonable, but I failed to solve the second one. Also the interviewer thought I'm not engaging enough(didn't talk much).
I applied through a recruiter. The process took 2 weeks. I interviewed at LinkedIn in Sep 2014
Interview
I was contacted by a recruiter on LinkedIn, who later called me and informally discussed the position they were looking for and asked about my background. After this phone call, the recruiter scheduled an hour-long technical phone interview with two software engineers based on my availability, which happened to be 2 weeks after this initial phone call from the recruiter.
The technical phone screen was conducted using collabedit. First, the interviewer asked about my background and what my favorite project was that I had worked on. Then, the technical questions began. He said, depending on the time, that 2 coding questions would be asked and we had enough time for both questions plus extra time for me to ask them questions. I coded my answers in C++.
I was notified 3 days after the phone screen that they would not be moving forward with me.
Interview questions [2]
Question 1
Implement double pow(double a, int b) without using any already built-in functions (aka, don't use an already defined pow function).
Given two (dictionary) words as Strings, determine if they are isomorphic. Two words are called isomorphic if the letters in one word can be remapped to get the second word. Remapping a letter means replacing all occurrences of it with another letter while the ordering of the letters remains unchanged. No two letters may map to the same letter, but a letter may map to itself.
Example:
Given "foo", "app"; returns true
we can map 'f' -> 'a' and 'o' -> 'p'
Given "bar", "foo"; returns false
we can't map both 'a' and 'r' to 'o'
Given "turtle", "tletur"; returns true
we can map 't' -> 't', 'u' -> 'l', 'r' -> 'e', 'l' -> 'u', 'e' -'r'
Given "ab", "ca"; returns true
we can map 'a' -> 'c', 'b'