Flipkart recently visited our campus, hiring for SDE Internship for summer 2021. They were open only for students in CSE and had no CGPA criteria.
The hiring workflow consisted of 4 rounds in total ( 1 Coding Round, 2 Technical Interviews, and 1 HM Interview ).
Note: Everything, including the interviews, was online due to the COVID situation.
Round 1 ( Coding Round ): We were given 3 questions to solve within 90 mins.
- Count of all nodes at even height from the given root in a General m-ary Tree.
Similar tohttps://www.geeksforgeeks.org/print-nodes-odd-levels-tree/”> this article but for a general tree and even levels.
-
Sort first k values in ascending order and remaining n-k values in descending order.
- Given a string A consisting of lowercase alphabets and a list of strings B find the number of strings in B that forms a substring after deleting at most k characters from A also these operations is allowed on strings in B :
a. We can change character ‘o’ to ‘a’, ‘t’ to ‘i’, and vice-versa.
b. We can delete one character from the current string.
The submitted codes were tested on multiple hidden test cases. 11 Students were shortlisted for further rounds.
Round 2 ( Technical Interview ): This round was held on the Aspiring Minds Codemeet platform which is a Live Coding Interview Platform. The interviewer asked to write only Pseudo Code for the following questions :
- The minimum number of subarrays of a given array of numbers such that every subarray is either increasing or decreasing.
- Find if there is a rectangle in binary matrix with corners as 1
Question 1 Example : arr = [1,2,3,3,1,5,6,7,8,7,4] Ans - 4 ( 1,2,3 | 3,1 | 5,6,7,8 | 7,4 ) ( Inc , Dec , Inc , Dec ) Therefore we can have 4 subarrays such that they are either all increasign or decreasig. Note : We have just have to find alternating sequence for increasing or decreasing from first index to last.
The questions were easy and I gave the correct solution for both. (Actually gave a Recursive DP approach for the first question initially but changed to simple iterative after I realized it’s just a basic array partition problem.)
After this 9/11 students were qualified for further rounds.
Round 3 ( Technical Interview ): This round was also held on the same Codemeet platform and the interviewer asked to write the pseudo-code for the 1st question and the 2nd question was only for discussion.
- Given a Binary Tree you have to perform the given operation recursively :
a. Print all Leaf nodes.
b. Assume all Leaf nodes are deleted.
c. Go to step a
The solution for this problem is similar to this article Count of leaf nodes required to be removed at each step to empty a given Binary Tree
- Given a Complete Binary Tree where each level is sorted in increasing order and the next level has elements greater than the maximum of the current level, discuss a method to implement searching of value in this tree. https://www.geeksforgeeks.org/check-if-value-exists-in-level-order-sorted-complete-binary-tree/amp/
Q 1 . Example : 1 / \ 2 3 / \ 4 5 For this the answer would be First Time - 4,5,3 Second Time - 2 Third Time - 1 Note : The set in which a node will belong to is the maximum distance from all leaf node in that subtree. Q 2 . Example : 3 5 8 9 11 12 14 Note : If we need to search any element we have to look if we get the range of nodes where that node could be by having 2 pointers , one going only left and the other only right. Time Complexity would be O(log^2(n))
I answered both of them correctly. (Just messed up a bit for time complexity for 2nd question ).
After this 7/11 were qualified for the last round.
Round 4 ( Hiring Manager Interview ): This round was similar to any HR round but was conducted by a Senior Developer. The main focus was mostly on behavioral questions, my past experiences, and projects.
After a brief introduction, these questions were asked :
- What is your past internship experience and what was your role? (Asked because I had mentioned that I had previous internship experience)
- What contribution did you make to opensource and what’s its use case? (Asked as I mentioned contribution to opensource.)
- Why is your CGPA low and how would you work on improving it? (I have 7.7/10 CGPA :D)
- Tell me about two of your weaknesses (One personal and one Technical)?
- Have you ever lead a team, and what was your takeaway?
Apart from this, there were some more random questions were also asked. Finally, It was my time to ask any questions I had, and I had a lot of them. We both ended the interview on a positive note and soon after I got the email for selection.
A total of 3 students were selected for the Flipkart 2021 SDE Internship from my campus.
Some General Tips –
- Be confident about your solution in the Technical Interviews
- Always provide your interviewer with a non-efficient solution if you can not arrive at an optimal solution on the first try.
- Make use of the whiteboard if there are any in your Interview IDE (It provides a better way to represent your thoughts).
- Ask your interviewer questions at the end of every interview if they are open to it. ( Personal, Technical, or regarding Internship )