GATE Score: 604
There was a written test followed by the interviews. Only the candidates who cleared the written were eligible for the interviews. Around 50 students appeared for the written test on 26th November.
The difficulty of the test was comparable to that of the GATE exam (although there were some extra topics). There were questions from Algorithms, Programming, Compiler Design, Probability, Linear Algebra and also some (around 5) questions from Machine Learning. There were 20 total questions. A blank paper sheet was also provided for doing rough work.
(Trying my best to recollect the questions)
Algorithms Question => Related to the worst case and the average case of the Quicksort algorithm. (There were some cases and the correct option was to be selected)
Evaluate a prefix expression.
A question from compiler design => What is a+++b?
Machine Learning Question => What will happen if we increase “k” in K-means clustering? (I don’t remember the exact options but they were related to variance and bias. I was able to answer.)
Machine Learning Question based on Classification => Minimum number of one-vs-one classifiers required to classify 6 classes? (Multiple options. Answer: 15)
Machine Learning Question => Which ML algorithm will be used to predict the number of calls in a call center based on previous data? (Multiple options. Answer: Linear Regression)
A question related to parallelization of 2 code segments. Two loops were given where we had to tell which of those 2 can be parallelized.
Some questions on probability.
A couple of questions on linear algebra.
(Sorry! That’s all I remember)
I answered around 15 questions and got shortlisted for the interview round. 20 candidates were selected for the interview rounds.
The Subjective test:
This test was only meant for the interviews. It was not to be used as a shortlisting criterion for the interviews. There were 2 questions, one on designing an algorithm and other related to distributions in probability.
I was only able to answer the algorithm question. The question is as follows:
A person is stuck on a square island which can be represented using an NxN matrix M. The person is allowed to take n steps. In a single
the person can move in either direction. The person dies if he steps out of the island. Give an algorithm to compute the probability that the person will stay alive after taking n steps.
My first interview panel had 2 professors.
Interviewer 1 (from Compilers background): Tell us about yourself.
Me: Told about myself. About projects I have done in the past, my research interests, etc.
Interviewer 1: Okay! So you have answered the question related to parallelization (in the written test, it was the correct answer). * He stood up and wrote those 2 code segments on the board *. Can you explain?
Me: I explained why one code segment can be parallelized and why the other one cannot be parallelized.
Interviewer 1: What is the order of parallelization in terms of big-oh?
Me: O(N). It was a for loop running N times. Each run was independent,
* Some more discussion on why the other one cannot be parallelized *
Interviewer 1: * wrote another question from the written test and asked me to explain *. The question was the evaluation of a+++b.
Me: I told him how it will work. Gave him Finite State Machines for it. He was quite impressed.
Interviewer 1: Okay! What about a++++b?
Interviewer 1: And what about a+++++b?
Me: * At this point, I was like, what?* I tried to explain as much as I could. He was satisfied.
Interviewer 1: He then gave me some languages and asked which machines (FA, PDA or TM) can accept them?
Interviewer 1: Asked about my BE project and what algorithms I used in it.
Me: I answered.
Interviewer 1: Okay! We are done.
Interviewer 2 (from Computer Architecture background): * Finally broke his silence * Are you interested in answering CSO questions.
Me: I told him that I’m not good with that subject.
Selected. I received the offer letter on 20th December.