Round 1: (Online Coding)
This was an online round, a signed test URL were provided asking to complete test within some provided last date.
It was a 1.5hrs test with 2 Coding questions & 10 MCQs based on Software Development & Computer Science fundamentals(JAVA, Code Debugging, GIT, DBMS, etc.).
I was told based on the results of this round I will be asked to come for Onsite interviews.
Coding Questions Were:
- Max Number of Fruits
This was standard “Maximum subsequence sum with adjacent elements having atleast K difference in index” problem with changed language and words.
I solved almost all MCQs but due to time constraint I solved 2nd Problem completely and 1st problem partially.
Round 2: (Data Structures and Algorithms)
This was onsite round. I was called to their Bangalore office on the next day and 1st round was based on Data Structures and Algorithms.
This round was taken by a Senior Software Engineer :
- Write a function to get the intersection point of two Linked Lists
- Partition the array into three equal sum segments
Round 3: (Data Structures and Algorithms)
This round was taken by another Senior Software Engineer who had an IIT background :
This was an 1/2 hour interview and I solved this problem upto O(N) complexity.
Round 4: (System Design – LLD)
This round was taken by a Technical Manager. He asked me about my previous Interviews.
He just came within 5 minutes of the 3rd round and till then I came across a solution of last asked problem with O(logN) complexity using Segment Tree approach. He asked me how I can apply Segment tree on various problems, and looked satisfied by my answers and examples.
- Questions from Java(Static, OOP, Singleton, etc.)
- Various Authentication mechanisms and implementations
- Design a system which can authenticate a person just using his first name and last name
- More questions about my projects, current employer experience etc.
It was a good LLD discussion round and the feedback looked good from him(e.g. Not Excellent) although I answered all questions with best explanations with my present experience.
Result: Not selected.
It is a startup based company with small team of 8 technical people and are total 15 in numbers in office. They see candidates on various aspects. Since I too was already working in startup based company with 500-1000 employees they would for sure have different perspective towards so many things over me and I respect their decision.
Tips and Suggestions to Candidates:
- Kindly explain your thought process when you are trying to solve a problem or designing a system. This will help the interviewer know if you are heading in the right direction and might help you in case you are stuck.
- Please don’t try to solve the problem with the most optimal solution in the first go. If you know the naive approach go ahead with that first, this will give the interviewer the impression that you can solve the problem. Once you have the naive approach then try to optimize it by discussing various approaches.
- Please don’t give up after 2 – 3 attempts, keep trying different data-structures and algorithms to solve the problem. This will show the interviewer that you have a never-give-up attitude and you have knowledge on other topics as well. If you follow this approach you will ultimately end up in solving the problem with at-least a naive approach.
- For System Design you can go through website https://www.educative.io/courses/grokking-the-system-design-interview -Grokking System Design (Paid course but worth it) and videos from https://www.youtube.com/channel/UCRPMAqdtSgd0Ipeef7iFsKw – Gaurav Sen System Design
- Please don’t get disappointed if the interview results were not positive. Remember that the company could have various other reasons to reject the candidate irrespective of the interview going well. Learn from your mistakes if you had done it during the interview and take that experience for future interviews.
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.