It was contacted by GS HR in August and was provided a test link for HackerRank Test.
- Given a matrix of integers, the task was to find out the number of positional elements. A positional element is one which is either minimum or maximum in a row or in a column. If there are multiple minimum or maximum elements in a row or a column, return -1.
- 0/1 Knapsack problem. One more addition is that you had to tell which all items were chosen for the optimal solution. https://www.geeksforgeeks.org/printing-items-01-knapsack/
CoderPad Round: After 20 days or so, I received a call for coderpad interview. Normally 2 questions are being asked in this round but if you are able to solve one completely along with providing relevant test cases, then you are through.
Question: Given a dictionary of words and a specific word, you need to find the list of the longest words in the dictionary which are anagrams of the given word.
Onsite PI Rounds: After 2 weeks, I was called at GS office Bangalore for the personal interview rounds.
Round 1: This round mostly involved coding questions which were followed by my brief introduction.
Round 2: This round also involved 2 coding questions – one from each interviewer. A number of currency conversions rates were given like USD to INR, INR to Euro, Euro to Yen, etc. We needed to convert a currency into some other. By following each conversion we will get some error so we needed to minimize the error. I first gave DFS and DSU solution but this question was narrowed down to BFS.
Suppose you have a data of 3 GB and 3 pen drives of size 1 GB each. Store the data in such a way that if one of the pen drives is lost, we can still recover the missing data. I tried to solve this question by XORing the values.
Round 3: This round also had 2 interviewers like the previous 2 rounds. This round basically wanted to test my c++ skills.
- Can the destructors be private?
- MultiThreading implementation in C++
- IPC implementation
- Internal implementation of “select * from table order by col1 aesc, col2 desc, col3 aesc”
- A basic coding question- don remember exactly
Round 4: This was a kind of managerial round where he first asked my introduction followed by my reasons for the switch so early in my career. Then he asked me to explain everything I knew about C++ on the whiteboard. This was followed by a deep discussion on my projects. He was giving me coding puzzles in between which were mostly based on DB access and my projects. The internal implementation of the map in c++ and why we use a red-black tree over the AVL tree was asked.
Round 5: This round was interviewed by Director of Engineering and the interviewer was an experienced person. He asked me to explain my projects and we had a discussion on it. This was followed by him explaining the role of the team and what my role in the team would be. This round was the shortest.
CoderPad 2: After 2 days of onsite rounds, I was informed by the HR that a coder-pad round had been scheduled for me following Monday and that it would be the final round.
After these rounds, I got a call regarding my expectations and other details they needed to take my candidature forward.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course. In case you are prepared, test your skills using TCS, Wipro, Amazon and Microsoft Test Serieses.