I applied from the official website. After a few days, I got a mail from them about the test link on hackerrank. I solved all the questions correctly. The test included a few MCQs mostly on c++, JavScript, and python i/p and o/p and algorithms. There were 2 coding questions, one was of medium difficulty and the other one was easy. I don’t remember the questions. After this, I got the mail for the interview.
There were 2 back to back 45 minutes technical interview on DSA and coding on hirevue platform.
Interview round 1: We both greeted each other followed by my introduction. He asked me what all technologies I worked with. Then he gave me 2 coding questions which I was supposed to code in front of them.
- Given an array containing numbers represented in the form of 2*i+1, where i represents the index. Find the optimal number of operations required to make all the numbers equal, if at a time you can add 1 to a number and subtract 1 from the other. The interviewer helped when I was stuck in between once but finally, I coded, and he was satisfied with the answer.
- After this, he asked me to explain the binary search and told me code ternary search. He then asked me about the time complexity of ternary search and binary search and how did I get that answer. He was impressed by my answer.
- After this, he asked me if I had any questions from them. I asked him about an article I read related to Expedia.
Interview Round 2: Greetings followed by my as well as his introduction. As usual, he gave me 2 coding questions.
- Given an array and a number k, find if there exists any 2 number whose sum equals k. Very simple right! He asked me about the time complexity.
- After this, he gave another coding question which was a DP problem. Given a number k -staircase top, where you are allowed to take either 1 or 2 steps. Find how many ways can you reach the top of the staircase. First I coded with a brute force method with exponential time complexity, then I coded another solution with O(n) time complexity and O(n) space complexity. After this, he gave me a hint and I coded O(n) time complexity and O(1) space complexity.
At last, he was very impressed by all my answers, and he asked me If I had any questions from him which I did ask a few. The interviewer was very cool.
Behavioral Round: After 2 days, I got the behavioral round confirmation. It lasted for 45-50 minutes. It consisted of a discussion on my projects. The interviewer was very impressed by the way I explained my projects. She even appreciated me in between for that. This was followed by normal HR questions.
- How will you face this and that situation?
- Tell me about your weakness, strengths, etc.
- She also asked me a few questions on OOPs mainly focussing on private inheritance, destructors, virtual functions, and dynamic polymorphism. I messed up in one question though.
- She also asked me where do you want to use your machine learning and AI knowledge.
Lastly, do you have any questions for me?
After around a week I got a call from them about the offer, and I was selected for the internship.
PS: Have confidence in whatever you are saying. Practice well, this helps in the interviews because the giving an approach is not sufficient. You need to code in front of them and reach the most optimal solution as well. Be well versed with time complexity and OOPS. Best of luck!!!