We had the aptitude test first which had a list of about 10 questions and to be solved in an hour. They consisted of questions testing topics like logic, dbms queries, recursion,WE test cases, pointers and debugging as well. Language is not very important, psuedocodes are fine but C or C++ is usually preferred.
Day 2: ROUND 2 & 3
They ideally have 2 or 3 rounds of interview. You have to pass each interview to go on to the next one. First is the technical round.
For the internship, they concentrate on the basics like DSF, OS, DBMS queries, C++ . They give you applications and expect you to use these basics to implement those applications. Also, they do look at the projects that you have done before and will mostly ask you about how you did it, the flaws you can find in it and also what else could you have implemented in it. I was asked the following questions.
1)Define a class for a car defining functions and attributes for the same.
2)How to implement abstract class in the above example
3)How would you store an employee database which has to be referred on a daily basis.
4)What would be the best way to access these elements in minimum time
5)Difference between pointer in C++ and node reference in Java
6)Was asked about my ADBMS project which was a hotel management system, also asked queries for special cases in that and database design for the same
7)How are pages stored and replaced in the OS
8)How would I implement my WE project such that it could be made into a mobile phone application using the same program.
The 2nd round of interview is an HR cum logical thinking interview. Besides the usual HR questions, they pose problems and see how you solve it. I was asked the following questions
1)Why did you take computer engineering?
2)What is it that you like in computer engineering?
3)Which technology has touched your heart? Why? (Mobile phone technology is what I answered)
4)Which mobile company do you prefer? Why?
5)What is one problem that you are currently facing in your life? (I answered time management)
6)How would you solve the problem of time management using mobile technology?
One thing I’d like to highlight is once you have qualified for the interview round, just be yourself. They expect you to be honest. If you don’t know something, it is ok to say you don’t, but do make an attempt to try it and make sure they know what exactly you’re thinking. They don’t always require the correct answer, but let them know your approach as that might be enough for them. But if you say that you do know something or it is on your resume, make sure you can answer questions about it. All the very best!
— Sumiran Shah (Comps)
Some random type of questions you better have an answer to.
- Design problem:
: Car park, a central college announcement system etc
o Class diagrams
o How would you go about implementing it
o Resources you would need (money, time, manpower)
Determine the number of white squares on an 8×8 (or NxN, generalized) board of random 1×1 white and black squares. (If there are 4 adjacent 1×1 squares forming a 2×2 square, it is to be counted as just one)
Efficient way to determine if a number is a power of 2.
o OS: Page replacement policies, Process scheduling algorithms.
o Database: indexes, queries.
- How would you implement a game of solitaire?
o Data structures you would use (linked lists for the bottom area/stacks for the top right/pair of stacks for the card dealing)
o How would you implement the hint function
o Followed up with: can you change your implementation of the data structures to make the hint function more efficient?
- HR/Socio tech questions:
o Name one problem faced in your college that technology can solve (followed by a design problem on the same. )
o Projects you have done, based on your resume
o People you look up to
o Your greatest fear
o Why Microsoft
Round I(Aptitude test):
I am a Third year engineering Student.I had applied through campus.We were excessively asked questions on C,C++,DSA ,Dbms queries and other basic programming questions.Knowing the basics can help you crack this
Round II(Interview Round):
Number of rounds depends on the interviewer.I had two interview rounds.More of technical and less of HR type questions.So be prepared with coding. Dont need to concentrate much on other aspects of interviews(viz. questions like introduce yourself, etc).Confidence is a must.;)
I was asked the following questions:
1) If you are given a spanning tree how will you use it to implement maintenance CD songs?
2) Design a system for state government to keep track of census
3) Write pseudo code for N-Queen’s board game
4) Write the code :If you are given an array with duplicate characters then in the output print the duplicate characters only one(for instance: If input is MICROSOFT then output should be MICROSFT)
5) I was asked a puzzle : From a book, a number of consecutive pages are missing. The sum of the page numbers of these pages is 9808.
Which pages are missing?
6) There were OS related queries as well.
1) Why do you want to join Microsoft?
2) What do you think is a special quality in you which can bring you to Microsoft?
3) What are your hobbies and passion?
4) Then I was asked what is that one thing in life I want to do?(Here I answered I want to help physically disabled)
5) So they asked me to design an interface of developing a robot to help them just on them saying their instructions.
Just be confident enough about your answers. Prepare for technical questions thoroughly