I applied online. The process took 2 weeks. I interviewed at VMware (Palo Alto, CA) in May 2011
Interview
Initially communicated by HR which was basically a phone screening on the job description.
Then had first phone interview with the Staff Engineer of the specific team.Questions started with general questions on Java such as Hashmap vs Hashtable, usage of synchronization in Java etc and then followed by a coding question.
Write a function which takes an array of integers and outputs the array with all odd integers followed by the even integers.
2nd Phone interview: Debugging question on Reversing a linked list. Code was given and I was asked to find error.
Onsite Interview:
Implement a circular queue. Follow up question: How to make it thread-safe
Given a binary tree output should be the mirror image(left child and right child of each node interchanged) of the binary tree.
Debugging question on a Producer Consumer problem.
Function to find str1 in a string str2 (should return true even if all the chars in str1 are present in non contiguous order in str2)
Interview questions [1]
Question 1
Please refer interview process section for questions
I applied through an employee referral. The process took 2 weeks. I interviewed at VMware (Palo Alto, CA) in May 2010
Interview
2 Phone interviews followed by 4 onsite interviews. Onsite interviewers were not so professional and some of them did not even had a clue how to conduct interview. It was more like a one way communication.
I applied through a recruiter. The process took 2 weeks. I interviewed at VMware (San Francisco, CA) in Mar 2008
Interview
A recruited contacted me for a position with a specific team looking to fill a spot. Had a phone interview, then got flown to CA for a round of in person 1:1 interviews. Very algorithm based, problem solving, seeing if you understand how to code something. Very standard.
Interview questions [1]
Question 1
I don't remember exactly, but some standard low-level C/C++/Java questions. Maybe something about string manipulation, bit play, recursive algorithms, threads, networking, etc.