Zeotap Interview Experience for SDE Internship(6-Months)
I applied for the internship through LinkedIn. The hiring procedure consists of 3 rounds.
Round 1 (Online Assessment on HackerRank): It was a 2.5-hour test consist of around 20 questions. There were 2 programming questions that were pretty basic, few SQL queries of basic to moderate range, few MCQs based on fundamental subjects of computer science – OOP, OS, DSA, CN, and DBMS.
Round 2 (DSA virtual interview): The interviewer started with basic DSA questions. He asked me to write the pseudo-code of the following problems like
- Reverse a linked list in O(n) time.
- Reverse a stack in linear time but using constant space. (Hint provided by the interviewer: Try it using linked lists)
- Given an array and an integer K, find the maximum for each and every contiguous subarray of size k.
I solved the first and third questions correctly. I attempted the second question using recursion, but I was unable to it in constant space. He gave me a bonus question that would replace the second question if I solve it. The question was:
- Hanoi tower problem
I solved this problem. He was happy with the whole session and told me to prepare for the next round.
Round 3 (Problem-solving virtual interview): The interviewer first asked me a little about my projects. After that, he asked me to find the given element in a binary tree that follows two conditions:
- The root of every subtree is the smallest element of the subtree.
- All the elements in the left subtree are smaller than the elements in the right subtree.
- He asked me to optimize it to the time complexity of O(log n). I was able to optimize it to O(log n) complexity.
- Then he asked me to program a problem that I solved using a priority queue.
- Then he asked me how priority queues are implemented? I told him that it can be implemented best using the heap data structure.
After this, he asked me various questions related to the time and space complexity of heaps v/s binary trees and when to prefer which data structure – heap or binary tree – and why?
Then he asked me various program-designing-using-object-oriented-programming questions like design the heap data structure.
After this, he asked me to design a program (using OOP concepts) for a backend service.
P.S: One of my projects included backend development.
(None of the designing questions had a specific answer. I was only asked vaguely to design basic functions that might be needed to complete the functionality.)
I designed all the programs to the best of my ability but, unfortunately, I wasn’t selected for the internship.