The process took 2 days. I interviewed at Amazon (Seattle, WA) in Sep 2010
Interview
I had two phone screen interviews with Amazon team for kindle.
The interviews went extremely well and I was told that the next step would be to fly me down. But i was rejected without any constructive feedback.
Although, it was a good experience and I learnt that Amazon is migrating from C++ to Java; hence it would be advantageous for someone with experience in both or in java primarily to find a place. I am speculating thats the main reason i was rejected, I being more well-versed in C++.
Interview questions [4]
Question 1
Give two arrays. Return an array with product of all elements in the array divided by the element at index.
Example A[3] = { 1, 2, 3 } return
B[3] = { 6/1, 6/2, 6/3}
In O(n)
Gave an example and asked to choose array or link list for its implementation.
Requires many read operations based on position of element. Minumum insertions.
The process took 1 day. I interviewed at Amazon (Seattle, WA) in Aug 2010
Interview
After reviewing my resume they arranged a phone interview. I was contacted precisely on time and spoke to a member of the team I would be working for. The interviewer immediately wanted me to code for him, and provided a link to Google docs to do so. After programming we chatted about the company and I was offered a chance to ask questions. Interview ended positively but I later received a rejection letter.
Interview questions [4]
Question 1
Given two lists, A and B, of sizes n and k, respectively, describe an algorithm to determine the intersection, C, of the two lists. What is the complexity of your algorithm? (The obvious solution is O(n*k)). Can you describe a solution that is faster? (An optimized solution can do it in O(n+k)).
An integer is represented in binary as a sequence of 0's and 1's. Write a function that returns the number of 1's in the binary representation of a given integer.
Suppose you have a system that keeps track of thousands of users' contact information, including email address. This information is stored in plain text, on disk in a hierarchical directory structure (on a Unix operating system) organized by year, month, and day it was entered in the system. Something bad happens and the system crashes. We want to get the email address of all these users to notify them. How would you parse these directories and files to generate a simple list of email addresses?