Got a mail from the recruiter within two weeks of applying and two 45-minute technical phone interviews were scheduled for the next week.
I was asked two algo/coding questions and some basic Java questions in both.
Interview 1-
Basic Java ques - Polymorphism, overloading, overriding, reference and objects, super, etc.
Coding:
Q1. Write code to - Reverse a linked list.
Q2. Write code to - Given a list of numbers, return a list of all possible permutations. eg. given {1,2,3}, return {{},{1},{2},{3},{1,2},...,{1,2,3}}.
I couldn't complete second solution in time and was asked to mail it post the interview.
I didn't get the second interview call in time. After waiting for 10 mins, I mailed the recruiter and received a call in the next 5 mins.
Interview 2:
Basic Java ques - interface, abstract class differences and uses
Coding:
Q1: Write code to - Compute 'a' raised to 'b' without Math.pow(). (was asked to reduce complexity thrice, had to use recursion finally).
Q2. Write code to - Find second max number in a BST.
The interviewers were very helpful and communicative and it was a good experience. Questions were quite easy but probably better solution was possible for each one.