Major Company Interview Questions
Major Company Interview Questions
[top]
Amazon
2. Talk about your favourite project? What part of a Software Project do u enjoy
most?
3. What is black box testing?
4. What do you include in a test plan?
5. How would you detect a repeated element in an integer array. Discuss various
solutions and the order of the algorithm.
1. tell me a situation when u had to face problems and the requirements were not
clear. how did u handle the situation?
4. say there is a problem with calculation of taxes on the amazon.com website. How
would u isolate the problem. once isolated and fixed. how would u go ahead and
test it?
QA engineer -
1. say you have a calculator service running on a server. Automate the process of
testing it. i.e. by one click of a buttonu should be able to test it.
2. how would you do the same if you did not have access to the input and expected
output. for example. no excel sheet that has the expected values. generate the 2
inputs on the fly. now how would you automate the testing.
3. discuss data structures for NOTEPAD. discuss with reference to bufferer write.
Offer
i have emailed the recruiter, but they havent gotten back to me.....should i safely
assume that I have lost it? comments? 8
Name: divya (11.19.2005)
Position: SDE
Job Type: full time
Division: Ordering
Status: Received offer
Interview
generic questions on software development
exception handling, C++ basics, bitwise operations
code to shuffle a standard deck of cards
algo to find nth node from the end in a linked list
algo to find duplicates from an array - discuss different approaches 8
algo & code to serialize a binary tree, discuss various solutions 5
algo & code to find 2 numbers whose sum equals a given value 7
Name: DM (12.11.2005)
Position: SDE
Job Type: Full time
Division:
Status:
Interview
Find Nth last element in a linked list 4
Print BST level by level 6
Given 2 files, each with names of thousands of customers who bought something
from Amazon.com on that particular day. Find the common customers (i.e. common
names in file1 and file2) 5
Check if binary representation of an int is a palindrome or not. 20
Test an ATM in a distributed banking system.
Name: SJ (12.14.2005)
Position: SDE
Job Type: Full Time
Division: Personalization
Status: Rejected
Application Process
Why do you want to work at Amazon?
Which project are you most proud of?
Describe the project you are currently working on
Difference between Hashtable and Binary tree? When would you use them?
Complexities of insertion, deletion
Algo to print a 2 dimensional array in a spiral clockwise manner?
e.g. A[3][4] =
123
456
789
Print :
123698745 11
Complexity of the above algorithm. 1
Interview
How did you hear about Amazon?
Why do you want to work here?
What is an array? What is a Linked List, Map.
Complexity of insertion and deletion for linked list.
8 balls question. (Find heavy ball) 4
Given 3 files, each with names of thousands of customers who bought something
from Amazon.com on that particular day. Find the common customers (i.e. common
names in file1 and file2 and file3)
Modify this algorithm so that it takes less memory
What is the complexity of this algorithm
Favorite feature on Amazon personalization site
Who would you design this feature?
Name: ola (1.23.2006)
Position: Software Dev Engineer
Job Type: Full Time
Division: Unspecified
Status: 1st Screen
Application Process
Submitted via Monster
Comments
Interviewer was not exactly forthcoming with suggestions
Interview
Tell me what you are doing.
What is your stronger language (Java or C#)
Reverse a linked list 9
Count characters in a string, wanted to see a hashtable used. 5
count bits in an integer. Solved using mask, did not attempt -1 approach. 5
Write in java a method to parse an integer from a string 2
Any questions.
Name: other (1.30.2006)
Position: Software Engineer
Job Type: Internship
Division:
Status: N/A
Interview
Given an array of integers where every int has exactly one duplicate except one,
find the number with odd occuring number. 21
assume your computer is reading characters one by one from a stream (you don't
know the length of the stream before ending). Note that you have only one
character of storage space (so you cann't save the characters you've read to a
something like a strong). When you've finished reading you should return a
character out of the stream with equal probability. 11
Determine is a graph is circular. 4
Name: ybh6336 (2.9.2006)
Position: Software Technology Developer
Job Type: Full Time
Division:
Status: Awaiting result of phone interview 2
Application Process
Asked a lot of questions about my last project (it was a J2EE application).
You have an unsorted array of some million random positive integers with no
duplicates. Find two integers from this array which add up to 50. The guy was really
cool and gave me a lot of hints. 7
You have an unsorted array of integers with duplicate entries. How would you get
rid of all the duplicates. I started off by copying all the entries to a
HashTable/HashMap, by keeping a count of number of times I come across an
integer and copying over only count 1 integers over to an array. He then wanted me
to do it using absolutely no additional memory. I was stuck for a long time, and he
wanted me to co-relate this problem with stripping of duplicate characters from a
string. 7
What happens when you call the add() method on a Hashtable?
OOPS principles: Polymorphism (give a real world example); how would you choose
between an abstract class and interface; difference between method overloading
and method overriding
Interview
Unix: You have 50,000 html files in a UNIX directory structure, some of which
contain phone numbers in the format ***-***-****. How would you create a list of
all the files which contain phone numbers? (Assume that you already have the
regular expression) 5
Unix: You want to kill a process that has been running for a long time, how to do
that? 2
Java: Differentiate between final, finally and finalize
Java: Talk to me about the Java Collections API
Java: How does the synchronized keyword work? What happens when you use it on
a static method?
XML: How have you used XML in your previous projects?
XML: Differentiate between SAX and DOM. 1
Data Structures: Time complexities for HashTable, Linked List, Binary Search,
Array.
Algorithm: You have a tree (not Binary) and you want to print the values of all the
nodes in this tree level by level. Discussed on phone and asked me to email Java
code for my algorithm. 2
Name: dotNet (2.20.2006)
Position: Software Development Engineer
Job Type: Full time
Division:
Status:
Interview
The bigger the ratio between the size of the hash table and the number of data
elements, the less chance there is for collision. What is a drawback to making the
hash table big enough so the chances of collision is ignorable?
How could a linked list and a hash table be combined to allow someone to run
through the list from item to item while still maintaining the ability to access an
individual element in O(1) time? 3
Given two log files, each with a billion usernames (each username appended to the
log file), find the usernames existing in both documents in the most efficient
manner? Use pseudo-code or code. If your code calls pre-existing library functions,
create each library function from scratch. 6
Name: bl (2.23.2006)
Position: No clue since they contact me first
Job Type:
Division: Multimedia & customer service support
Status: 3rd phone screen, waiting for feedback
Application Process
I posted my resume online, they contacted me 1
Comments
1st phone interview is very pleasant experience and it was conducted by a principle
engineer. 2nd didn't go well since i am a little bit nervous and also i am surprised
they were so obsessed with linklist reverse and sorting algorithms. I gave the
answer to reverse a linklist by call collections class. and they seemed want me to
give the answer by using the current class's method. After the phone interview, I
just found what did they mean but i guess it's too late. Then next day a recruiter
called me and told me they are going to arrange another phone interview today.
3rd interview is awful. I thought I screwed up...:(
Interview
more architectural view about solve problem capability. I think the intervier was
more realistic than the other two . Not just because he recommend to 2nd
interview, since I also have the experience with recuriting other employees in the
past. I felt the potenial is more than anything in work. Coding is just one thing ,
maybe the one who can solve the tricky algorithms is good in some way, but how
about the one who has been out of school for several years and I cant remeber
anything about mergesort or quicksort or how to find the shortest path blah blah.
But I do have the confidence I am very good at work. No matter where I go, I
found most people are not that smart and if you are willing to learn, you can be the
best. Of course, you must have the potenial first. Like you are willing to learn and
you like your job...
MultiThread, Garbage Collection. Tomcat distribute request(Java Spaces), http
protocal. Socket programming...
App server+DB server, solve the querying delay problem...
focus on my last project
2nd phone interview: reverse linklist(so stupid, I was too focus on the rule using
the exist library much better than build something new(Effctive Java) and when the
intervier insisted on asking me to give the non extra memory consuming answer, I
was stucked for a while then I told her to move on the next topic. Find the duplicate
number from an array. I gave the hash solving method.but I also gave her other
answers.
3rd phone interview
classpath package, RMI, vitual method difference between Java and C++, = and
== and equals() difference. What's the latest book I read. reverse vowels of string,
then read out and send him in memory. First I thought it's simple and I made a
mistake for the for-loops and then I send another version with a for and while loop.
I don't what 's gonna happend, but I have no regret if they don't want bring me on
site. I feel it's too much algorthms thing that I am not good at it anymore. and I
don't want spend a lot time to review something you seldom get the chance to use
it in future.
Name: Kartik (2.24.2006)
Position: Software Design Intern
Job Type: Intern
Division:
Status:
Application Process
Gave a resume to recruiter at job fair, got interview.
Interview
Here is a graph of distribution centers and the weight to go from one to another.
How would you represent this using a data structure? Code an alogrithm that allows
me to check if there is a path from one node to another and what the weight of this
path is. 1
Multiply a number by 7 without the * operator. 5
I want to see if all the ones in a number appear on the right side of the number and
all zeros appear on the left, how can I do this most efficiently? (i.e. 00000111 is
true but 100010 is false) 4
Here is a tree. It's a binary tree but in no particular order. How do you write this
tree to a file so that it can be reread in an reconstructed exactly as shown? 26
I want to code the game of chess. What classes and objects and hiearchies would
you use and why?
Why do you want to work at Amazon?
What was your hardest techincal project?
What was the most interesting thing you have ever done (technical or non
technical) ?
Offer
In a week hopefully :)
Name: Nancy (2.27.2006)
Position: SD
Job Type: Full time
Division:
Status: n/a
Application Process
I was scheduled a phone interview today. However, the interviewer didnot contact
me. I've waited for several hours! I reached the HR person, who scheduled the
interview, finally. She did not know what happend but promised to find out. She
rescheduled me another time. I am wondering in what situation could an interview
forget an interview. If they don't want to know me more, they shouldn't schedule
the interview. If they changed their mind, they should inform me. 2
Name: sweety (3.24.2006)
Position: Support Engineer
Job Type: Full time
Division:
Status: Just attended the first phone interview
Application Process
first phone interview
Comments
this site has really helped me alot in preparing 5
gayle keep up the good work
Interview
database question like self joint with tables given by him
no.of 1 bits in a number ---program
to find a telephone number in dir and subdir (find command is the answer)
general questions
what do you like in a job 2
what you don't like in a job
gave some description about the job and then it is done
Name: AJ (4.24.2006)
Position: SDE
Job Type: Full Time
Division:
Status:
Application Process
applied through monster
Comments
Gayle, nice job, hats off to you for it
Interview
Print out a multiplication table, i wasnt told what kind of data structure it is, just
that it has 1*1=1, 1*2=2, ...... 200*200=40000, ..... values. 2
What is Polymorphism, how do virtual functions work
Design a deck of cards
When would a program crash in a buffer overrun case. Gave me,
buff[50];
for( int i=0; i <100; i++ )
buff[i] = 0;
What will happen to first 50 bytes assigned, when would the program crash
Given two dates, Design an algorithm to return whether the dates are exactly a
month apart, less than a month apart or more than a month apart.
Name: Peter (4.25.2006)
Position: Software Development
Job Type: Full Time
Division: Supply Chain
Status:
Application Process
Singleton Class implementation
Given void f1(string arg1, vector& arg2)
Write code so that "f1" prints all the anagrams of arg1 present in arg2 1
Modify the above code to weed out the duplicate anagrams
Write function to print all the anagrams of a given string 1
Differences between "new" and "malloc".
Name: Kiran (4.25.2006)
Position: General
Job Type: full time
Division:
Status:
Interview
Mailed me this code and asked to find the mistakes in the code
class Base {
public:
Base(int numElements) {
m_baseArray = new int[numElements];
}
~Base { //non-virtual
delete [] m_baseArray;
}
private:
int* m_baseArray;
}
class Derived : public Base {
public:
Derived(int numElements) : Base(numElements) {
m_derivedArray = new int[numElements];
}
~Derived() {
delete[] m_derivedArray;
}
private:
int* m_derivedArray;
}
int main(int argc, char** argv) {
Base* base = new Derived(3);
delete base;
return 0;
}
Oblivious to me, aparantly this kind of shuffle is used a lot in online card games.
Silly me :P
Interview
Discussed the proof and solution to my card shuffle problem
Asked me to reverse a Linked list without re-creating a new one. I did it recursively
going all the way to end and linking it backwards after the recursive call. Had to
pass in two nodes though, one previous and one current. He said he likes iteration
better becoz its more resource friendly :)
Asked me to take some time around 1 hour and create an API that could read
names,emp ID's,phone numbers, office names in that order from a file and stores
them and has the following functionality:
1) getEmployeeById
2) getEmployeeByName
3) getEmployeesByName
4) editEmployeeInfoById
5) editEmployeeInfoByName
I took around 2 hours to do a good job for this becoz he wanted propper OO
concepts. Created the util class as a singleton with synchronization for the add and
edit methods with exceptions being thrown when employee's arent found etc. He
seemed to like it from the reply mail i received
Interview
Asked me the differnce between using Abstract class vs interface on a real world
problem im working on (at one point he settled for an answer where is said "it's
just intuitively wrong" - however, he tried to trick me into justifying using the wrong
thing, I had to say that there is no justification for using this technique here, took a
little bit of guts but he liked it)
The hardest question to date on a phone interview. he asked me to take 2 hours
and write the following API.
Create an LRU Cache that caches some key/value pair and kicks out the Least
Recently Used when you run out of space. Wanted run times and asked me to
comment on how good my implementation is and whether its good for industry
level usage.
I managed to do both Lookup and LRU Eviction in O(1) by creating a hybrid
datastructure for the application. Combined a Hashtable and a LinkedList. The
hashtable would be used for constant time lookup, when something is lookedup it is
enqued to the front of the linked list. (the hastable had an object that stored the
value and a reference to a LinkListNode).
And when I ran out of predifined room in the hastable, i kicked out the least
recently used by dequeing the tail of the linked list, and kicking out the
corresponding key/value pair from the hastable.
I also made the hashtable 2 times the capacity of the size of the LRU cap so that
we would hopefully never have to grow the hastable as the critical load factor would
never be aproached
The standard stuff had to be added to the api like synchronization, singleton etc.
Interview
its coming up soon, hopefully ill do good :D
Name: Kiran (6.12.2006)
Position: Software Development Engineer
Job Type: Full Time
Division:
Status: Waiting...
Application Process
How would you declare a class such that one and only one instance of that class
can be created? 5
Detect whether a list is circular or not?
How would give an estimate for a client who wants to know the cost of cleaning all
the windows of all the building in Seattle?
Interview
Algorithm and code to detect occurence of a string(patterns) in another string ex:
aab, aababa 2
OO design related question? How would you design a class structure for animals in
a zoo
Difference between class and object?
What are thread, why are they used in programming?
Difference between polmorphism and inheritance?
Offer
Code reverse of a string?
OOP design related.. Given Vehical base class which have a move() method, car
and jet subclasses both with a overridden move(). Design JetCar class amd move()
without having to code much? (using the Jet class and Car class overridden
methods)
Name: abc (3.28.2006)
Position:
Job Type:
Division:
Status:
Interview
find dup number for n+1 numbers from 1...n 1
Name: AP (4.16.2006)
Position: SDE
Job Type: Full Time
Division: Fulfillment Management Systems
Status: Received
Application Process
Had 2 phone screens with the same team .. started way back in mid-November ..
My advice would be to follow up with them asap especially for the phone screen as
it might take a while for them to get back to you. All expenses paid onsite visit to
the beautiful city of Seattle.
Interview
Phone Screen 1: Serialize and deserialize a binary tree/graph
General Unix questions
C++ questions
Design classes to represent a deck of cards
Phone Screen 2: Check whether the bit representation of integer is a palindrome
[top]
Apple
[top]
Athena Health
Bank of America
[top]
Bloomberg LP
void example
{
int bytes;
virtual functionName{ };
}
4) For a balanced binary search tree find the number of leaf nodes for a tree with
depth 10.
5) What is a void pointer. How will you convert this pointer to an integer pointer.
5
Onsite interview (all expenses paid)
-------------------------------------
1st interview (interviewed by two people) lasted about 1 and 1/2 hrs.
1) Several questions on projects....
2) Program to detect a palindrome.
3) 8 ball balance puzzle in PIE.
4) Imagine you have a listing of student names and marks. Give the best data
structure to store the same. Now imagine that you have range of student names
starting from a to l, m to z. Use a data structure for such a layout.
5) Was given two pages of code. Was asked the output. (The code contained static
and global variables in different functions being caaled from main() plus some
printf("%d") statements which should print garbage values).
6) Asked about different CPU scheduling algorithms.
2nd interview with HR
3rd interview with the manager....pretty senior guy who had been working since 12
years
This guy didtnt smile at all.....was trying to make me as comfortable as possible.
Class A
{
int x;
}
Class B
{
int y;
}
Class C : public A, B
{
int z;
}
A *aa;
B *bb;
C cc;
aa = &c;
bb = &c;
return main;
How much memory will it use each call? (Depends on compiler optimization or not)
15
Remove characters from a string. What is the running time of your algorithm? Can
you do better? 1
While writing the code, they would question it and laugh, trying to trip you up, even
when you were right. Supposedly to see how you handle under pressure I guess.
Offer
I wouldn't have worked here if I got an offer, but I guess I don't have to worry
about that thank goodness! 3
Name: Parag (2.24.2006)
Position: Financial Software Developer
Job Type: Full Time
Division:
Status: Invited to onsite interview (all expenses paid)
Comments
Interviewed by two persons 3
Interview
Seems to me interviewer studied my projects really well and asked about every
projects listed on my resume in detail.
Asked some basic questions about C++?
Difference between malloc and new.
What is reference in C++? Where will you the use it? 1
Difference between reference and pointers? How can reference go bad? 2
Asked about virtual functions and function pointers?
Some questions about STL? How can one store different type of objects in vectors
or list?
What is auto pointer in C++? 5
Name: Karthik Srinivasan (4.17.2006)
Position: Financial Software Developer (Entry Level)
Job Type: Full Time
Division:
Status: Reject
Comments
PS NOTE: If pointer's is ur weekpoint, don't even dream of taking the interview...
These guys focus on Pointers and Arrays..
The Interview is for 45Mins telephonic.. 8
Interview
Interviewer> What's the differnce between C# and Java?
My Answere> C# can overload operators but Java cannot and Java is platform
independent and C# is not. 1
Interviewer> What's the differnce between C# and C++?
My Answere> C# code does not require header files..C# does not have multiple
inheritance...
Interviewer>If there are variable defined where the variable stored in the memory?
stored in Stack)
My Answere> Stack is a storage location with push and pop operations..
Interviewer> Since STACK does push and pop, so what if the stack pop's the Global
variable?
My Answere> Variables are poped only if it's out of scope..
(My answere was wrong....he said that the Global variables are not stored in
Stack!!)
Interviewer> What was the most challenging project ever done? Why?
My Answere> Blah...Blah... (We discussed for nearly 10 Mins...these guys know we
are talking abt)
Interviewer> What is a delegate in C#?
My Answere> They are reference types which performs indirect calls to methods
...blah...
Interviewer> What is a event and how is it related with delegates?
My Answere> Blah....blah..
Interviewer>What's the difference between Events calling delagates in C# and
Pointer calling a function in C++?
My Answere> !! No Idea....Silent !!...
Interview
Interviewer>Does delegates have performance improvements or any advantages
over functions calling in c++?
My Answere> ...No Idea .. 5
Interviewer>Let us assume there is variable size (size cannot be determined) of
string data coming over a network how will u
don;t remember..
Interviewer>Assume that we have a string being passed to a function with a char
pointer, write a pgm to reverse the string?
My Answere> blah...blah..
Interviewer>How do u copy the reversed string into another variable i.e. if we have
'hello' the other variable should have
'olleh'?
My Answere>Well I just gave an idea on how to get it woking and he bombared me
with questions such as "how can determine the
stored in Stack)
My Answere> Stack is a storage location with push and pop operations..
Interviewer> Since STACK does push and pop, so what if the stack pop's the Global
variable?
My Answere> Variables are poped only if it's out of scope..
(My answere was wrong....he said that the Global variables are not stored in
Stack!!)
Interviewer> What was the most challenging project ever done? Why?
My Answere> Blah...Blah... (We discussed for nearly 10 Mins...these guys know we
are talking abt)
Interviewer> What is a delegate in C#?
My Answere> They are reference types which performs indirect calls to methods
...blah...
Interviewer> What is a event and how is it related with delegates?
My Answere> Blah....blah..
Interviewer>What's the difference between Events calling delagates in C# and
Pointer calling a function in C++?
My Answere> !! No Idea....Silent !!...
Interview
Interviewer>Does delegates have performance improvements or any advantages
over functions calling in c++?
My Answere> ...No Idea ..
Interviewer>Let us assume there is variable size (size cannot be determined) of
string data coming over a network how will u
don;t remember..
Interviewer>Assume that we have a string being passed to a function with a char
pointer, write a pgm to reverse the string?
My Answere> blah...blah..
Interviewer>How do u copy the reversed string into another variable i.e. if we have
'hello' the other variable should have
'olleh'?
My Answere>Well I just gave an idea on how to get it woking and he bombared me
with questions such as "how can determine the
[top]
Bocada
Name: (7.28.2006)
Position: SDET
Job Type: Full time
Division:
Status: rejected
Application Process
This is a small company in downtown Bellevue that does data storage and
protection software.
I was contacted without having applied, had first interview/screen on UW campus.
[top]
Boeing
[top]
Broadcom
[top]
CapitalIQ
[top]
CGI-AMS
[top]
[top]
Citigroup
[top]
Citrix Online
Name: Jack (5.6.2006)
Position: SW Engineer
Job Type: Internship
Division:
Status: Pending
Application Process
CS fair and applied via website.
Comments
No subsidized housing/airfare.
Quiz follows 1st interview. Following the quiz is a phone interview. Finally, they fly
you in for an on-site interview. 3
Internship based in Ft. Lauderdale, FL.
Interview
1st interview with recruiter.
Rate your C/C++/Java knowledge.
Describes interests relating to Citrix.
Name: Jack (5.17.2006)
Position: SW Engineer
Job Type: Internship
Division:
Status: Declined
Application Process
Received call from a 2nd recruiter, probably for the same position.
Comments
Citrix continues to interview even though a position might be filled.
Interview
When contacted the 2nd recruiter, she told me the position might be filled but I can
still interview in a week. A little akward.
Name: Anonym (4.6.2006)
Position: SDE
Job Type: Full Time
Division: Unknown
Status: Declined
Application Process
How do you transform a arbitrary tree (a tree in which a node can have multiple
children). Answer, Left-most child maps to left child. Right-hand brother maps to
right child. 1
TCP 3-way handshake procedure. TCP termination procedure. When one party
sends FIN to terminate the connection, can the other side keep the one way
connection and continue to send data? The answer is yes.
[top]
Deloitte
[top]
Deshaw Inc
[top]
EFI
[top]
Electronic Arts
[top]
Expedia
1st interview continued: e asked a few more technical questions on interfaces vs.
abstract and do you really need a VTBL in Java all the time since virtual functions
are implied? I refered to a Use Case diagram to explain why interfaces are
important. Also asked some basic questions on Java like what is a final class,
abstract class? Asked to describe my experience.
Name: XXXX (7.14.2006)
Position: Software Design Engineer
Job Type: Full Time
Division:
Status: Pending decision
Application Process
Phone Interview, and then onsite call.
Comments
Company looks cool. People are dynamic, relaxed. There's no dress code. Some ppl
are in shorts!
Drinks are free!
No cubicles, a room for everyone!
Interview
Phone: Given a character array, print all the subsets of those characters
Design a deck of cards
Onsite: How do you determine the starting point of a loop in a linked list? Write
code.
What's the worst case runtime for this?
Given an string that has an IP address, write a function to return an integer that
has the four parts of the IP address in its bytes.
Implement atoi()
Similar questions..
[top]
EZ Prints
[top]
Gabby
[top]
GameLoft
[top]
Geofields
[top]
Georgia Pacific
Interview
Phone screened by project manager.
Invited to on-site interview. All behavioral questions. Asked to describe what I
wanted to do in GP and general thoughts on advancements in technology.
Half of interview was in office. The 2nd half was a tour of the facilities.
[top]
Globaltech Research
Name: Jack (5.3.2006)
Position: Soft Dev.
Job Type: Internship
Division:
Status: Pending
Application Process
Submitted resume.
Comments
1st interview via IM to test writing skills.
Interview
The purpose of this interview is to evaluate your written communication skills. I will
ask you a question every few minutes; before I ask the question, I will let you know
exactly how many minutes you will have to answer. I will keep track of the time,
and I will prompt you for a response if you haven't provided one already. I am
going to ask you a total of 9 questions. The whole evaluation will take no more than
an hour. Whenever your box fills up with a part of your response while you're
typing, just send that part in and then continue typing the rest.
kanariay: Your response to each question should be at least 4-6 sentences. Please
answer the questions in complete sentences to the best of your ability. Don't worry
about making mistakes - I am aware that your answers may be less polished than if
you had more time to revise your grammar. Feel free to be creative - there are no
right or wrong answers. Are you clear on how the interview will work?
What is one of your favorite meals or snacks to prepare, and how do you make it?
(3 minutes)
Identify, in your opinion, three of the biggest problems plaguing the world today,
and suggest a possible remedy for one of them. (8 minutes)
You have received a fantastic job offer and know that it is because your professor
highly recommended you to the company. Below write a short thank you note to
her/him. (Do not include the heading, i.e., Dear Professor X,). (8 minutes)
Describe a challenging experience you've had and what you did to overcome it. (5
minutes)
You really want to attend Hudson University in New York. It is your first time visiting
an American university, and you do not want to apply without seeing a dorm room.
However, the security guard at the front desk tells you that you need a Hudson
University Student ID to enter the building, no exceptions! How would you get into
the building? | Come up with at least two strategies. You may not offer her money
or any other favors, and you do not just happen to have a fake ID with you. (7
minutes)
A friendly alien from a distant galaxy is visiting Earth. It wants to know how to
greet a dog. How would you instruct the alien to approach a dog and express
affection? The alien can see and hear you, but it cannot understand your language.
(10 minutes)
Pretend you are writing a letter to your university to complain about an unfair
professor. Write the first paragraph of this letter. (This time, include the heading.)
(8 minutes)
Have you ever led other people? Please describe the experience. What did you like
and not like about it? What did you learn? (5 minutes)
Please list the most important technology hubs (by city area) for:
(at least 5 each)
Asia
Europe
Americas
(6 minutes)
[top]
Gold-Tier
[top]
Goldman Sachs
[top]
HCL
[top]
Hewlett Packard
[top]
IBM
[top]
Iconologic
[top]
Infosys
[top]
Intel
[top]
Interactive Design
[top]
Intuit
[top]
JP Morgan
[top]
Lime Systems
[top]
Lincoln Labs
[top]
MarketRX
[top]
Merrill Lynch
[top]
Micron
[top]
Microsoft
Flown out to seattle, all expenses paid, where you interview with 2 groups. You are
typically are scheduled for 2 interviews per group, plus an initial interview with the
recruiter. Note: everyone on your interview loop will be emailing each other
throughout the day. Between interviews, you'll be asked to wait in the lobby while
your previous interviewer gets the next one... what's really going on is your
interviewer is emailing everyone else to say what they asked you and how you did.
They're also supposed to give a "hire" or "no hire" recommendation, though they
don't always 1
... but, if (and only if) your day is going well (you have two "hire"'s from the same
group), you'll normally get an "as app" interview (though they won't tell you that's
what's going on). An as app interview is an interview that you aren't told about in
advance and is with a manager who makes the "final" decision 5
Comments
Microsoft is fun to work for, but some groups are doing stuff which is sort of boring
and unimportant. You may want to request a group, if you have that option.
However, if you request a group, they'll try hard to accommodate you which can
mean getting you an interview which you otherwise would not have gotten.
Free sodas :-)
My internship was great. Interns are treated like full time employees and my code
will ship.
The final round is in Seattle - all expenses paid
Interview
Questions on experience 1
Coding/Algorithm: Since XML is very verbose, you are given a way of encoding it
where each tag gets mapped to a predefined integer value. The language/grammar
looks like:
Element --> Element Attr* END Element END [aka, encode the element tag, then
its attributes, then tack on an END character, then encode its children, then another
end tag]
Attr --> Tag Value [assume all values are strings]
END --> 01
Tag --> some predefined mapping to int
Value --> string value END
- Coding: Write code to encode xml element (as char *) as Byte *
- Algorithm: Is there anything else you could do to (in many cases) compress this
even furthur? 8
Coding: Game of master mind: you have four balls, and four different colors, as a
solution. The user tries to guess the solution. If they guess the right color for the
right spot, it counts as a 'hit'. If it's the right color, but the wrong spot, it counts as
a psuedo-hit. For example: if the solution is 'RGGB' and the user guesses 'YRGB'
they have 2 hits and one pseudo hit. Write a program to, given a solution and a
guess, calculate the number of hits and pseudo hits. 15
Coding: You have an n pointed star with points labeled 0, 1, ..., n-1 (assume points
are numbered in order). You want to draw this star (imagine a kid's scribble for a 5-
pointed star... That kind of star). Assume you have a function drawLine(int
indexOne, int indexTwo) which can draw a line from one point of a star to another.
Write a program to draw the star. 15
Coding/Test: I want to be able to maintain a list of my family's birthdates and print
them in oldest-to-youngest order. Implement the classes and methods that I need
for this
Test: how would you test this (if you were doing black box testing)? 13
Offer
In California office: real salary = base salary + 15% (to account for higher cost of
living) 1
Dev and PM's get about the same salary, test gets a bit less 3
Signing bonus: some stock grants
Vacation: 3 weeks + 10 paid holidays
Relocation:
- One month free temp housing
- Two weeks rental car
- 20,000 pounds shipped
Name: Feng Zhao (4.4.2005)
Position: Software Design Engineer
Job Type: Internship
Division:
Status: Accepted offer
Interview
Coding: function generate nth fibonnaci number
- what's the largest n could be? 8
Coding: Reverse linked list 6
Coding: Write code to compute the intersection of 2 rectangles 8
What's the difference between c++ and java? 7
Coding: Many overlapping rectangles - want to return which (doesn't matter which
one, if it's over several) rectangle the mouse is over. 20
Coding: I have a HxW picture, 32 bit picture --> represented by int array. How do
you rotate the picture by 90 degrees into a new array? Write the code 15
Name: Steven Saviano (4.4.2005)
Position: Software Design Engineer
Job Type: Internship
Division:
Status: Accepted offer
Interview
Questions about prior project
Coding: binary search tree:
- find element with given key and return
- node deletion 1
Algorithm: You have a video card with memory. You can read and write to it.
However, you can only write to it through a byte mask (if bit of byte mask ==1,
then you can write to that bit, if == 0, the bit stays unchanged). Also, you can not
read the byte mask (you can only change it). How do you determine what the value
of the byte mask is (you can write to the video card as long as it is restored to the
same condition as you left it). 3
Coding: 2 arrays, a and b, both are sorted ascendingly
you know the size of b
you dont know the size of a but you know a can at a minimum hold the size of the
current valid values of a (all valid values are at beginning of array) plus the size of
b
- How do you combine the two arrays into a while keeping a sorted when returned
(no extra array to use) 12
Coding: You have a linked list
struct node
{
int selected;
struct node *next;
struct node *child;
}
intitially all childs are null and it is just a linked list
given a list with some marked and some not, make a linked list such that:
there is a linked list of just the not_selected, then the last element in that list is an
element without any data but its child is pointing to a linked list that has all the
selected nodes (the last element of which points back to the one with the child
node)
- how would you traverse this new structure (even if there was a child that had
other childs
- what if that circular connection was cut, then how would you traverse it?
- what if you can add a boolean value to the structure (that you can only set as you
traverse). then how would you do it 1
Coding/Algorithm: You know how web adresses convert spaces and such into
special characters
i.e., space == %20
- given a string, convert the string to a string where all spaces are %20
- what are the different ways to do it
- what if unlimited memeory, what if you cant have any memory and the string has
extra space at the end that isnt used (buffer)
- what if you want to say if the string will cutoff and only convert if cut off 4
Name: Ravi Chugh (4.4.2005)
Position: Program Manager
Job Type: Internship
Division:
Status: Accepted offer
Interview
Interviewed with Project and Office Shared Services
Design: How would you implement scoreboards for different games played on Xbox
Live?
- Databases, API, …
Design: How would you design the interface of Project for CEOs?
Design: How would you present the data to Jeff Riggs?
What's the biggest mistake you ever made?
What's the best designed technology?
Design: Design a remote control for blinds in an upscale home. Design it to control
multiple blinds. Is it easy enough for your grandmother to use?
Design: [Shown picture of climate control system for a car]. Redesign the climate
control system for the next model year.
Pitch a new product to Bill Gates. Why should he invest it, how will it be profitable
to the company?
Imagine a bulldozer - thick tank tread, rotating cabin, extendable arm with claw on
the end to pick up things. It is parked on the edge of a cliff. Fifty yards away a
house is on fire. Lois Lane is on the third floor. Woody Allen is about to get into the
bulldozer and rescue Lois Lane, and then speed after some bad guys in the
bulldozer. Design the controls in the cabin so that there is a zero learning curve to
figure out how to control all operations. 1
Name: Chao Cai (4.4.2005)
Position: Software Design Engineer
Job Type: Internship
Division:
Status: Accepted offer
Interview
Code: Reverse C-Style String. (C-String means that "abcd\n" is actually
represented as six characters") 13
Code: print a linked list in reverse order
- Can you do this in O(n) time, O(1) memory? [O(1) memory = no recursion] 7
Code: You have an array of integers (both positive and negative). Find the
continuous sequence with the largest sum. (ie, if the array was {6,-8, 3, -2, 4}
then you'd want to return {3,-2, 4}) 36
Code: You have two sorted integer arrays and the larger array has room for the
second. Merge the smaller array into the larger one, in O(n) time and O(1) space.
11
Code: Game of battleship. Implement shoot(x,y). What are the data structure you
would use?
Code: Find the first occurence of a string in a multi-string. (multi-string means that
you could have a string like "cat\0dog\0monkey\0\0". The true end of the series of
strings occurs when you hit two null chars in a row) 6
Name: Gayle Laakmann (4.4.2005)
Position: Any
Job Type: N/A
Division: N/A
Status: N/A
Interview
These are general questions I've heard of people getting...
What area of life is left for technology? 2
Name 5 programs that you think could help in retail
- What technologies would you use?
What's the next big invention?
Explain webservices to your grandmother
Explain Object oriented to your grandmother
Explain Object oriented to your grandmother
Name: Gayle Laakmann (4.4.2005)
Position: Program Manager
Job Type: N/A
Division: N/A
Status: N/A
Interview
These are general questions I've heard of PMs getting
Program Manager = "PM" = you design the features - you don't manage anyone.
For example, the PM in charge of alt-tab on Windows would have probably written a
paper about what the functionality. This includes:
- icons should be 32 pixels apart
- they should be listed in most recently used order
- by default, the second item should be selected
- tab should iterate forward, shift-tab should iterate backwards
- screenshot of dialog
Pros: you get to make the decisions about the product and help shape the product
Cons: do you really want to write papers all day? Are these skills transferable to
other companies?
Design: Key fab targeted at a 16 year old girl whose father is buying the car?
Explain Object oriented to your grandmother
Design: Assuming price is no object, what would you put in a handicapped
bathroom?
If you were an absentee landlord, how would you take care of your housing?
What's your favorite Microsoft product? Name five ways you could improve it
Design: How would you design an ATM for the blind
Name: Gayle Laakmann (4.4.2005)
Position: Software Design Engineer
Job Type: N/A
Division: N/A
Status: N/A
Interview
These are general questions I've heard of SDE's getting
Software Design Engineer = "dev" = "sde" = developer: you're the one who writes
the code... but you code based on the spec from the PM
Pros: your code ships. You're really building something. And it looks pretty good to
be a developer for Microsoft.
Cons: You are behind a desk all day. Although you can talk with the PM about the
features if you don't agree with him, it is his/her decision in the end. You are
working on the same application for a long time
Coding: Write atoi 3
Coding: Write program to continuously keep average. ie, you have a prototype
function "double computeAverage(double newVal)" 2
Coding: Write program to take the union of two rectangles 8
Coding: Write a program to swap a number in place (ie, no temp variables) 9
Coding: Write program to reverse a string 1
Coding: Write a program to determine if a binary tree is well ordered 5
Algorithm: Describe an algorithm to determine if a singly linked list is corrupt 7
Algorithm: Give the most efficient algorithm to determine if a string has all unique
characters 9
Name: Gayle Laakmann (4.4.2005)
Position: Software Design Engineer in Test
Job Type: N/A
Division: N/A
Status: N/A
Interview
These are general questions I've heard of SDET's getting
Software Design Engineer in Test = "sdet" = "dev test" = you ARE a coder.. but you
write automation code.
Pros: a lot of freedom about what language you can use.... a lot more flexibility.
Smaller projects, less likely to get bored. It's actually a pretty good position.
Any of the SDE questions are SDET questions too
Test: How would you test program to generate first n random numbers 2
Test: How would you test an email client? What could be automated? What wouldn't
make sense to be automated?
Test: Imagine that you're writing an email spider-er... What would you do to test
it?
Name: Gayle Laakmann (4.4.2005)
Position: Software Test Engineer
Job Type: N/A
Division: N/A
Status: N/A
Interview
These are general questions I've heard of STE's getting
Software Test Engineer = "test" = you test stuff. This doesn't mean, on Outlook,
that you would just use email all day and see what happens... you write test plans
(a paper about what needs to be tested) and test on extreme conditions. At other
companies, STE and SDET are merged into a "QA" position
Pros: you're not writing code. You interact closely with the other three positions
Cons: you're not writing code (depends on how you look at it)
Test: How would you test program to generate first n random numbers 4
Test: How would you test an email client? What could be automated? What wouldn't
make sense to be automated?
Test: Imagine that you're writing an email spider-er... What would you do to test
it?
Name: Gayle Laakmann (4.4.2005)
Position: Any (Brain Teasers)
Job Type: N/A
Division: N/A
Status: N/A
Interview
I believe these are getting phased out, but you still could be asked it...
You have two ropes, each of which burns for exactly one hour. But, the ropes vary
in density so you don't know that half of one rope will burn for 30 minutes. Given
those two ropes and a book of matches, how would you time 15 minutes? (Note:
you don't need to be able to hand someone a piece of rope that will take 15
minutes. You just need to be able to time 15 minutes) 3
You've got a 5 quart jug and 3 quart jug, and an unlimited supply of water (but no
measuring cups), how would you come up with exactly one gallon of water? 11
A bunch of couples are on an island. A genie comes down and gathers the men
together and tells them: "I know for a fact that at least one of your wives is
cheating on you. So, if your wife is cheating on you, I'm going to put a code on
your head." The men then ask for a way to remove it, which she grants: "to remove
it, you must dunk your wife under water at exactly midnight. If you are wrong, you
die - so don't mess up. You will not be able to see or feel the crown on your head,
but everyone else can. However, they are forbidden to tell you or signal in any way
that you have a crown." How long does it take the men remove the crowns?
(Assume there are n men and c crowns. The men do not know what c is) 7
Offer
Internship offer is the best you'll find probably anywhere (but I can't really say
what it is....)
Housing:
- $500/month housing stipend OR
- pay for intern housing at ~$650/month
Shipping: $500 (total - includes both ways) of shipping reimbursed
Car/bike plan:
- rent a car from Avis at $350/month OR
- $300 bike is reimbursed
Name: Matt Jones (4.6.2005)
Position: SDE
Job Type: Internship
Division: Visual Studio
Status: Accepted Offer
Interview
What are all the thing things would you need to consider while designing a vending
machine? 3
How would you represent a game of tic tac toe (data structures, etc.)? Improve on
the design. Implement it in pseudocode. 2
Develop a way to represent 32 bit numbers as 8-character strings (including the
null character, so 7 bits of data). You can use 0-9 and a-z. Code it on the board.
Develop unit test cases to test your code. 1
Refactor this C++ code.
Debug this C++ code.
If you have existing list linked list, and you are given a new one... make as few
updates as possible to transform the old list into the new one. 2
Name: Saurav (7.25.2005)
Position: SDET 3
Job Type: Full Time
Division: Tablet PC Group
Status: Received Offer
Application Process
Had a Phone Screen then was called onsite. 1
Interview
Asked me to write all code for design and implementation for my idea of the C++
string class. Wrote code for about 1hr 15 mins. Then he was satisified and asked
me to stop.
2nd inteview was with Team Leader. He intoduced the group to me and the work
they do. Then asked me lots of COM related questions. Platform Invoking. Calling
unmanaged code from managed code. Why would one want to use COM against C#
and vice versa.
Asked me to write a couple of functions. One took a function pointer, checked the
process Id of the calling process. Check if the process was alive at specific intervals,
if yes then invoke the function (pointed by the FP) otherwise return.
Second function would take a request from the process to stop the first function.
Was asked to design my own data structure and had to show it works with large no
of processes. Had to write test cases for it.
Copy a Linked List, and delete all even data from the Linked List.
Delete a node from a binary tree and balance it. Had to write code for the former
and had to explain the latter.
Then he gave me a Binary tree with each node having a pointer to its parent. Asked
me to write code for finding the Inorder Succesor. 7
Testing of all the functions above.
Name: Kunal Chopra (11.8.2005)
Position: SDET
Job Type: Full Time
Division: don't know yet
Status: First interview - hope to get another one!
Application Process
i put my resume up somewhere. Have no idea how microsoft got hold of it. I got an
email rom recruiter.
Interview
Background - what do you do? what positions interest you etc?
given a string - separate out the words of the string. put the words in a DS of your
choice? 3
What advantage woudl u get with a linked list over an array in this case? 1
Test this function?
how do you go about deciding what to automate or not?
any questions?
Name: Samba (12.18.2005)
Position: SDE
Job Type: Fulltime
Division: Windows
Status: rejected
Application Process
how do you verify if a given tree is a binary search tree 27
given a linked list of characters find if the string is a palindrome. Do not use any
extra memory. My solution included using recursion/ stack but he said that would
mean using extra memory. The other solution was to use an n-squared loop. 10
Right now wondering why I did not get to move to next rounds of interview though
I had answered both the above questions. Perhaps I was too slow. 11
Name: Saurav (7.25.2005)
Position: SDET3
Job Type: Full Time
Division: Automative Business Unit
Status: Received Offer
Interview
Write a function to use up a user given percentage of free memory in a system.
Had to optimise for performance. Write test cases for the above. I could assume
any suitable API that was there. By the way it was for an embedded chip.
Write a function to merge two sorted linked list in a sorted order. Test it. 5
Asked me about projects on my resume. To the minutest detail possible. 3
Asked me to test an API they had developed. It was by the test lead. Coincidentally
I gave him the exact test cases that he had come up with :). 3
Then had an interview with PM. All general resume questions and told me a lot
about the team. Also told me if I received the offer I would be responsible for
developing the platform SDK as well as testing it.
Name: Jack (2.27.2006)
Position: Program Manager/Software Engineer
Job Type: Internship
Division: Software
Status: Pending
Application Process
Sent resume through MonsterTrak. Contacted by recruiter.
Comments
They haven't gotten back to me for 1.5 weeks. I emailed the recruiter twice and got
a please hold response.
Interview
Draw a basic ER diagram for Netflix.
Write a function that sums & returns the digits of an unsigned integer. 4
What is your passion? I said the future and went into history(planes,Ford Model-
T,etc.), quarks, and a vision of the future.
Asked when and how I used UML.
Told me to describe one of my personal projects.
Name: Khoa (3.5.2006)
Position: Internship
Job Type:
Division:
Status:
Interview
-Add numbers in base n
Given a chunk of memory
1. Implement malloc.
2. Implement free. 1
A disk is partioned into two hemispheres colored in black and white and the disk is
rotating.By appropriate positioning of sensors (A sensor can read the disk near it as
black or white) we need to find the direction of the motion of the disk. 1
Name: Henrick (3.7.2006)
Position: SDET
Job Type: fulltime
Division: avalon, directx
Status: pending
Comments
In terms of tech skills, #1 priority should be linkedlist/binary tree.
Make sure you have time to memorize the code for it.
Do not start coding immediately. Think about it, draw some pics.
Try to talk as you code, but some get annoyed if you talk too much without coding.
If you get stuck, you could say "hm, we're having fun aren't we..." and just say out
all your ideas.
Its ok to ask for hints.
Check the return value from malloc() to ensure that there was sufficient memory.
Interview
Why do you want to work at Microsoft?
Why do you want to be a SDET? (you need a strong answer for this. it'll be asked a
LOT)
Describe a project you've done. (be passionate)
Given a consecutive list of numbers from a to b, one number is removed.
The list is then scrambled. Find the missing number.
int find(int a, int b, int *array);
hint: sum(1 to n) is n(n+1)/2
using the same logic, sum(a to b) is (b-a)/2 * (b+a) 7
Give an algorithm to find the convex hull.
Given a tree such that each node has a child and sibling, find a node in the tree.
Prioritize the search by level (ie., check all siblings before children).
Hint: use a queue 3
Test a bottle of soysauce.
Hint: Test these categories:
Accessibility - accessibility, platform
Robust - stress, load
Operation - acceptance, performance, boundary
Security - security/safety
Test this function: void setTime(LPFunc func, Time t);
func is a functionpointer which will be invoked, passing in t as a parameter. 2
Write code to find the dot product and cross product.
Given 3 points on plane and a point in space, find the distance between the point
and the plane.
Find the location of the point projected to the plane. 2
Two robots are each standing on a beacon, on a line of infinite length.
They both execute the same code. Write the code to have them collide.
Only use these commands:
SKIPNB - skip the next line of code if not on a beacon
MVR - move right one step
MVL - movel eft one step
JMP - goto label in the code
hint: have both robots move to the right in a loop. if a robot passes a beacon,
double its speed. 3
Name: Henrick (3.8.2006)
Position:
Job Type:
Division:
Status:
Interview
crapload of microsoft questions. go get em tiger!
http://www.cse.ucsd.edu/~hshyu/microsoft.txt 3
Name: (3.23.2006)
Position: Program Manager
Job Type: Internship
Division: BPI & Connected Framework
Status: Declined
Application Process
Group related Questions
How would you test a Factorial program from that took inputs from 1-1000 2
Interview
Construct a Binary tree in which each node has n children
Construct a singly linked list head to tail
Construct a sinlgy linked list tail to head
Insert a node in a doubly linked list
Design an alarm clock for the blind
OOP questions
Multi Threading questions
Interview
Past Experiences
What groups would you like to work for?
Reverse a singly linked list
Design an interface for a multimedia library
Name: Payal Chakravarty (3.23.2006)
Position: SDET
Job Type: Internship
Division: msn.com portal
Status: Offer received..... yet to decide
Application Process
University Career Fair
Telephonic interview and then on site interview 1
Interview
Write code to reverse the words of a sentence and not the sentence itself eg:
Input: a quick brown fox
Output:a kciuq nworb xof
Test the code
Now what if there is a punctuation mark like a quick, brown fox ...we still want the
output to be a kciuq, nworb xof and not a ,kciuq nworb xof
What if the developer did not want to fix this bug since it is not there in the
specs...what would you do? 5
Write code to shuffle a list of songs randomly and return the shuffled list 1
Puzzle: You have a chess board and you chop off two diaognally opposite corners.
So initially the chess board had 64 squares, now it has 62.
Now you are given 31 dominoes, each dominoe can occupy two squares of a chess
board...arrange the dominoes to occupy the chess board squares 11
Write code to delete a node from a linked list. Write test cases for the code you
have written 1
You have a singly linked list say 1->2->3->4->5 and you have no access to its
head pointer. But you have access to another pointer which points to the node 3.
How would you delete node 3 and get the output at 1->2->4->5. Remember its a
singly linked list 19
More behavorial questions and situational questions 1
Hands on testing: test msn entertainment web page 1
Name: xyz (4.21.2006)
Position:
Job Type: Full Time
Division:
Status:
Application Process
Give a data structure and algorithm which can do push(), pop(), extract_min() in
O(1) time. 16
Name: "P" (5.1.2006)
Position: SDE/T
Job Type: Full Time
Division:
Status: Accepted
Application Process
Que 1: Reverse a string. Ref: Prgramming Interviews Exposed 2
Que 2: An integer array of size 1000, contains numbers ranging from 0-999. Each
number occurs only once in the array. One of the slots in this array is empty. Find
the number that is missing. Hint: sum of first n natural numbers 1
Que 3: Testing Question:- How will you test a "finger print reader" of a Laptop?
6
Que 4: Find whether a linked List is Circular or not?
Que 5: Find the center node of a Linked List? 6
Que 6: They showed me some of the MS applications on the desktop, and asked me
to design the test cases for 'em. I will recommend that you see what apps your
groups design and just have a feel of 'em and test cases you may design for 'em.
The guy expressly mentioned not to worry about efficiency, so I chose a recursive
implementation for its elegance right off the bat, and refactored the task into three
more functions:
1) "point *findSeed(int B[IMAGESIZE][IMAGESIZE])" - to find a next available pixel
that has not been processed to start growing a region from it.
2) "void fillRegion(point *seed, int B[IMAGESIZE][IMAGESIZE])" - to recursively
check the color of neighbors of the seed point and them as processed
3) "bool valid(point P)" - to check if a given point is within the image grid 20x20
when checking neghboring pixel colors
and the driver routine:
IF your recruiter IS friendly enough (like mine was), he/she should go over the +
and - of your interview with him/her (Level I). Be sure to remember these "tips" as
they really are very handy.
Interview
OO questions: Polymorphism, Inheritance, Encapsulation
Adding and deleting nodes in a circularly doubly linked list
Design test cases for the same
HR based questions: Why MS; Why testing
Qualities of a good tester
Interview
RECRUITER INTERVIEW
1. Resume based questions
2. HR based: Have you been in a situation ... Give me an instance ... If you had ...
3. What is your passion
4. Information: So, your day is going be ...
INTERVIEWER I
1. Describe a situation ... So, what did you do to ... how did you handle ...type
questions
2. Detect whether or not a given # is a prime # (Recall my comments about giving
the most optimal solution here rather than jumping into one)
3. Test this (hands me a white board eraser)
INTERVIEWER 2 (Lunch interview)
1. Explain your current work; clarifications about specific segment of my current
project (This was not a happy outing!)
2. Insert an element into a doubly linked list, given that you have a global tail
(Recall my comments about sometimes a common question might have an extra
piece of information). Strangely enough, the interviewer was picky about me
omitting semi-colons in my code!
3. Convert the linked list you just created into array elements. Strangely enough,
the interviewer insisted that a[10] does NOT create memory and "malloc" had to be
mentioned, explicitly! (Not a happy outing here, again) 1
INTERVIWER III
1. Questions about the previous versions of the product the group I was
interviewing for had developed - what I liked and what I did not (I feel comfortable
not revelaing this). Word of advice: Know the group you are interviewing with. I
did, and it did com in handy
2. Determine the last occurance of a particular character, given a sentence of words
(Recall: do not jumpt to a solution, ensure it is optimal)
3. Given a website with a textbox and a sumbit button. Type in any webURL to
display an ad on MSN homepage, if it is not already present. Test this. 1
Name: Victor (1.20.2006)
Position: SDET
Job Type: Full Time
Division: Windows Media Player
Status: Pending
Comments
Please discuss the answers for the behavioural questions too as they are equally
important and they are the ones which keeps the interview lively.
Interview
Please tell me about your college background and about yourself?
Why do you want to work at Microsoft, How can you say Microsoft as your best
place to work, and basically WHY MICROSOFT??? 3
Tell me about one of the best challenging projects that you have done?? Also tell
me about the critical situation that you came accross technically and how did you
fix it??
How can you rate C++ and Java out of 10??
Please write a function to reverse the Linked List in the language that you are
comfortable with.
Please list the cases to test your function. 2
How can you improve your test case, tell me the test case in best time and space
complexity.
If you are hired, where do you stand after 2-3 years?? Do you have any goals to
achieve??
Name: Kunal Chopra (1.26.2006)
Position: SDET
Job Type: Full TIME
Division: USer Experience and Document Life Cycle - both in Microsoft Office Shared
Services
Status: Received offers from both groups
Application Process
Kindly read my interview experience here -
http://choprakunal.blogspot.com/ 13
Wish all of you the best of luck!!!!
Name: Jack Sparrow (8.9.2006)
Position: SDET
Job Type: Full Time
Division: Confidential
Status: Accepted
Application Process
General Resume Questions, screening questions, some HR type questions such as
describe a typical work day, describe a situation when you tackled a difficult
problem, tell me how well do you work in a team, etc.
Questions about multi threaded programming
Asked to technically describe the product of my current company, its clients vendors
etc.
Describe your role in your current team
Find the center element of a linked list with a single pass
What are mutexes and semaphores
some questions on hashing. given an example and asked if a collidsion would occur
or not
Interview
Questions on low level networking, how packets are ordered, how are headers
used, how are packets fragmented, how do broadcasts work. Also some questions
on Client/Server Communication
Write a function that returns a running average everytime it get called. Make
provisions for multiple processes to call this function.
Asked to write exhaustive test cases for the above code fragment
Interview
Lots of resume related questions, going deep into every project.
Given a doubly linked circular linked list and a pointer to any node and a number
'n'. Starting from the given node, keep on deleting the "nth" node till one node
remains. Return a pointer to that node. 1
Given a singly linked list, delete the kth node from the end. Optimize your code.
2
Given specific scenarios about the product the group was working on. Asked how I
would test it.
Token a string on the basis if a given delimiter.
e.g S is the base string and D is the delimiter (could be a sequence of any valid
chars)
S = ["who is the man who saw the eagle today went the wrong way?"]
D = ["the"]
Result = ["who is ", " man who saw ", " eagle today went ", " wrong way?"]
Asked to thoroughly test a given windows form.
Very detailed questions on all projects mentioned in my resume. Design level and
implementation level questions on all projects.
Asked a lot of questions on my Thesis. Asked about the implementation, the
performance issuses and how I would scale it.
Design a web crawler.
Write code to find the largest sub-sequence sum in a list of integers (+ve as well as
-ve)
Name: Programmer (8.20.2006)
Position: FullTime
Job Type: FullTime
Division: Applications Programmer
Status:
Interview
#1 There is a linked list. The last node could point back to any node in the list
(including the head). Find the node in the list to which the last node points. Or in
other words at which node does the circular linked list start.
#2 Number are generated randomly and stored in an array. Write a program to find
the median value of the array as and as new numbers are generated. Improve your
solution.
#3 There is an array of ‘n’ numbers. Given a number ‘m’, find if there are two
numbers in the array that sum up to ‘m’. Obbviosuly improve the solution.
#4 There is an array of ‘n’ integers. Write a function to find the largest number? Do
it in one iteration? Now in the same pass also find the 2nd largest number.
#5 There are two sentences. Find the common words in the two sentences.
#6 Design an explaing an algrothim to find the nearest gas-staion from any location
in the city/block.
#7 Write a program to find the column's value of a given column from MS Excel.
[Ex: - A = 1; B =2, … Z=26, AA =27 and so on]
#8 Compare Linked List versus ArrayList.
#9 Design a random number generator such that it selects ‘m’ random numbers
from an unsorted array of ‘n’ elements, where each element has equal probability of
OI: What is the most difficult sitution you've had to deal with at work
OI: Have you ever had to stand alone on a decision that you've made? How do you
motivate people
OI: How can you make sure that people going to the MS Office website are happy?
No, this is not a joke...
Write code that will color in a blob which was outlined in the +,+ are of a coordinate
system
[top]
Microstrategy
[top]
Morgan Stanley
[top]
Motorola
[top]
Moyer Group
[top]
National Instruments
[top]
[top]
NVIDIA
[top]
Oracle
[top]
other
[top]
Oversee.net
Example:
City numbers: 0 1 2 3 4 5
Distances: 5 3 2 6 7
distance(1, 4) = 3 + 2 + 6 = 11
distance(3, 5) = 6 + 7 = 13
Imagine that this 'distance' function is being called millions and millions of times in
your program. Optimize your function to be as efficient as possible at run-time.
Assume that the list of cities and distances do not change after the program starts.
3
You are given N points in 2-dimensional space represented by coordinates (X, Y). N
can be a very large number (hundreds of millions). Write an algorithm to pick K
points that are closest to the origin (0, 0). K is much smaller than N (hundreds).
Assume that each of the N points is retrieved by an iterator function get_next_point
which returns a pair (X, Y) representing the point coordinates.
Place N queens on an N x N chessboard in such a way than none of them are able
to capture the others. Write a function, combinations(N), which would return the
number of possible combinations for any integer N. Assume N is between 4 and 12.
Example: combinations(8) = 92
[top]
Qualcomm
C Questions:
Asked what are const,volatile,register,static keywords
Will this terminate: while (*a++ = *b++)
What is the difference between copy constructor and assignment operator?
What is pass by reference and pass by value? How do u do pass by reference in
C++?
What is a void pointer? and what does void func mean?
Data structures:
running time of linked list lookup operaion? how do u implement a linked list?
What is running time of has table look up?
How do you implement a hash table?
How does hash table achieve 0(1) lookup?
Some Networking questions about TCP/UDP
Name: Ravi (8.16.2006)
Position: Test Engineer
Job Type: Full Time
Division:
Status: Pending
Application Process
Had a telephonic interview which lasted for around 30 mins.Questions were asked
basically on C#.Asked about one of my projects.There were no coding questions
asked.
What are events and delegates?
Asked something about web servies as it was used in my project.
One question which took me some time was: Suppose u have a multiple form
(winform)application. How do u open up a second form from the code in first form.I
was thinking in terms of just create and object of the second form and call
form.showdialog. But he was expecting using invoke().Can ne1 say y shud u use
invoke and not showdialog?
Some more simple questions i dont remember. Waiting for a reply ..its been 2-3
weeks havent heard frm em. Do they usually take so much time?
[top]
Rebellion Research
[top]
Sabre Holdings
[top]
Sage Software
// Interface
interface IFoo
{
void Bar();
}
// Abstract Class
abstract class Foo
{
abstract public void Bar();
}
Q3. How do you embed a special character (e.g., ‘{‘ ) inside a String.Format format
string? Please give an example.
Q4. Describe how a try..catch..finally construct works.
Q5. What is the StringBuilder class and why would you use it? 1
Q6. What is a static property? Give an example of why you would use one.
Q7. What are some of the potential pitfalls of boxing and unboxing?
Q8. Write a function that will return the 5th element from the tail of a singly linked
list and explain how you would test your solution.
Q9. Write code to implement a class for wrapping text stored in a file. You should
add enough functionality to the class to demonstrate your ability to design classes
with either the C++ or C# language.
3. The class should support at least the following operators: "=", "==", and "[ ]".
Feel free to add more than just the minimum requirements. You may use any
functions in the standard C library (for C++) or .NET framework (for C#) and you
may use a compiler to check your work.
Name: Jack (3.17.2006)
Position: SW Engineer
Job Type: Internship
Division: Accounting, R&D
Status: Pending
Application Process
Submitted resume.
Phone-screened by recruiter. Received technical quiz.
Comments
Bought about 6 other companies.
Parent company in UK.
Serve small-to-midsize businesses.
Interview
Submitted tech quiz.
Q2. What is the difference between an Interface and an Abstract Class (e.g.,
between IFoo and Foo?)
// Interface
interface IFoo
{
void Bar();
}
// Abstract Class
abstract class Foo
{
abstract public void Bar();
}
Q3. How do you embed a special character (e.g., ‘{‘ ) inside a String.Format format
string? Please give an example.
Q4. Describe how a try..catch..finally construct works.
Q5. What is the StringBuilder class and why would you use it?
Q6. What is a static property? Give an example of why you would use one.
Q7. What are some of the potential pitfalls of boxing and unboxing?
Q8. Write a function that will return the 5th element from the tail of a singly linked
list and explain how you would test your solution.
Q9.Write code to implement a class for wrapping text stored in a file. You should
add enough functionality to the class to demonstrate your ability to design classes
with either the C++ or C# language.
[top]
Tellabs
[top]
USInternetworking
Interview
Behavorial questions.
I asked most of the questions: group vacations, work schedule, environment, etc.
[top]
Vanu
Name: Gayle Laakmann (4.4.2005)
Position: Software Engineer
Job Type: Full Time
Division:
Status: 2 phone interviews, then turned down
Application Process
Applied at Career Fair
Followed up with recruiter
2 phone interviews
Comments
Very small company (~30 employees), spin off from MIT. They create technology
which allows several cell phone providers to share the same towers.
Interview
Explain a technical project in a non-technical way
Interview
Asked me to go through all of my summers at Microsoft and Apple and explain what
I did
How would I compare Apple and Microsoft
Asked me what the lead student ambassador position is and what I've done with it
[top]
VMWare Inc
[top]
WebLinc
Yahoo