Meesho Interview Experience for SDE-1 | On-Campus (Virtual)
Round 1: This round consisted of 3 coding questions and 20 MCQs. MCQs was based on Operating system, Computer Network, C/C++ output questions and java. 5 questions were from each part. MCQs were easy to medium level. 2 out of 3 coding questions were easy and one was of medium level. Coding questions were as follows:
- Given 2 arrays, find a list of values which are available in both the array in ascending order. (It can be easily solved using hashing technique)
- Given 2 strings, determine the minimum number of characters in either string that must be modified to make the two strings anagram. If it is not possible then return -1.
- https://www.geeksforgeeks.org/weighted-job-scheduling/ (It can be solved using Dynamic Programming and for optimization we need to use binary search because O(n^2) was giving tle.
Those who were able to solve all the 3 questions and also have good marks in MCQs were shortlisted for further rounds. A total of 15 students were shortlisted for interviews.
Round 2: It was a technical interview. It was scheduled for 1.5 hrs. The interviewer gave his introduction and asked about me. After that he asked about all the projects which were written on my resume in brief. This was a coding interview round so after that general discussion he asked me two coding questions. This round was conducted on hacker rank code pair, where our code should pass all the given test cases.
- First question was very easy. It was based on the Activity selection Problem ( a very basic question on greedy algorithms). I solved this question in just 15 minutes. Link for the question is https://www.geeksforgeeks.org/activity-selection-problem-greedy-algo-1/
- https://leetcode.com/problems/minimum-number-of-taps-to-open-to-water-a-garden/. This question was pretty tough. It took 30-40 minutes to solve this question, but that was not an issue because the interviewer was very helpful, he was helping me to solve the question and gave me ample time to solve this question. He was satisfied with my code and my code cleared all the given test cases.
- After this, he asked me some general questions on operating systems and Databases. Interviewer told me that those who are able to solve both the coding questions in given time will qualify for next rounds. Finally he told me, do you have any questions for me? Then I asked 2-3 questions.
9 students were shortlisted for the next technical interview.
Round 3: It was also a technical interview which was scheduled for 1 hr. Interviewer asked me to introduce myself and asked me to discuss the project. He asked me my role in the project as this was a team project. He asked me to write all the tables (in database) used in this project and asked some SQL queries related to this. After this he asked me one coding question which can be easily solved using dfs.
- He asked me some Networking concepts such as ARP, DNS, OSI model and asked to explain.
- Then he asked some operating systems questions such as difference between semaphore and mutex, paging technique, difference between virtual and physical memory, threading asked me to explain using java code.
- After that he asked the difference between SQL and NoSQL, Normalization and ACID properties. What is the need of Normalization and many more questions related to DBMS.
- Finally, he asked me about the inner implementation of vectors with complexities such as insert, delete and read operations.
4 students cleared this round for the final HR round.
Round 4: This was just a formality. Nothing was asked in this round. He told me about the company. And told me that you are selected for the Full time role at Meesho.