# WebEngage Interview Experience

Hello World,

I recently had an interview with “WebEngage“. It is an exciting Indian web-start-up. Quoting them from their website “The most powerful in-site customer engagement suite for your website that lets you collect Feedback, gather customer insights using hyper targeted Surveys and drive sales/conversions via push Notifications”. There is a video and a live demo of their product on their website. Also you can Google about the company if you need further information.

I managed to bag an interview with them via another Indian start-up “HackerEarth“. HackerEarth is a platform which hosts online coding contest for interested companies and job-seekers. Students or experienced professionals have to solve a set of algorithmic coding problems and then they can apply to the companies offering open-positions.
So I solved a few problems and the next day I received a call from WebEngage co-founder Ankit Utreja. The next day we scheduled a telephonic interview. So here’s how it went:
Interview started off with little information about me. Where I did my graduation, what am I doing now,etc. Next up were some technical questions:
Algorithm and Data Structures:
1.) Given two sorted list of length L1 and L2 how would you merge them into a single sorted list? (Ans: “Merge step in the merge sort algorithm”)( this was simple) He also asked me about the complexity of my solution (Ans: O(n)).
2.) Given a list of characters (within a specific range for ex: ‘a’-‘z’) how would you sort the list. Give the complexity of solutions also? ( Ans: “CountingSort” using an array to store freq of each character)( this was also easy) (Complexity: O(n))
The question was then modified a little he asked if the given list comprises of only numbers which can attain only specific values ( these might not be contiguous and also he mentioned the list has lots of numbers close to 1 billion) (Ans: “We can still use counting sort but instead of array we would use a HashMap mapping keys(numbers) against their frequency in the list and sort the hashMap ( can use Class “TreeMap” in Java). Apart from this I also mentioned one could use “radix sort” to sort the list (its complexity will be : O(n*d) where n is the number of elements in the list and d is the maximum number of digits in any element of the list but this solution would be space efficient O(1) compared to using a HashTable to map entries).
So this round went great.
Next he asked me do you know Databases and I said yes:
He asked me to write a query: Given two tables:
Employees(EmpID,EmpName, DeptID) and Department(DeptID, DeptLoc)
Write a query to find ID of all the departments that had greated than 25 employees in them. ( I don’t remember the question exactly but this is pretty close). This is a basic query example. Then I was asked to order the output on the number of employees.
Then there was another question related to ACID properties. I do not remember the question at all because I could not understand the question. Then he further clarified the questions. But I still couldn’t understand it but I figured out it had something to do with ACID properties so I asked him if it had anything to do with ACID properties, he then gave me a hint and rest was easy. 😉
Then he asked me about the projects that I had done. What technology stack did I use, what purpose they served , etc, etc.
He also asked me if I knew Java and I said yes i do:
public static void main(String[] args){
System.out.println(“HELLO WORLD”);
main();
}
He asked me will this code compile and if yes, what will be the output.
I got really confused on this because while I was learning Java I had struck upon a similar question so the interviewer kept giving hints after hints and changed the question a little a few times. But still I was not all sure about this till the end. Finally we moved on. I guess these programming languages specificity is not really a matter of concern. After the interview I tried this question on my computer to clear up my doubts. 🙂
So after it was over he offered me to ask any question I have about the company, job, etc. So I asked him some question to which he replied elaborately and adequately. After that he told me they would get back to me with further communication. After 45 minutes long conversation the interview ended.
After a few minutes a got a call from Avlesh Singh (co-founder WebEngage) he asked me about my interview experience and then he said they were satisfied with my knowledge and performance in the interview and would like to extend an offer. So we discussed some other stuff and formalities.
Next to next day I was offered a Software Developer position in the company. After thinking about the offers I had in hand, eventually I decided not to join them. I hope this helps anybody who appears for the interview in future.