Software Development Engineer I | Flipkart Interview Experience

  • I was contacted by a recruiter of Flipkart for SDE 1 position and after my resume was shortlisted , all of my rounds were on a single day(5th December):

    Machine Coding Round (First Round):In the this round we were given a problem statement which we had to code using OOP concept and preferably in some IDE.
    The question was the following:

Problem Definition:

You have to create an online dating application. Every active user account will have location, age and gender information. The application should show users their potential matches in order of relevance. The ordering of relevance will be following:

Problem Statement: You have to create an online dating application. Every active user account will have location, age and gender information. The application should show users their potential matches in order of relevance. The ordering of relevance will be following:
1) Gender : Opposite gender to be given higher priority.
2) Proximity: Nearer matches should be given more priority. Use Euclidean distance for computing distance
between two locations (​*see appendix for Euclidean distance)​.
3) Age: Less the age difference should be given more priority.

Operations: A user can perform these operations in this application:
1) Create Account: A person can create an account with interest and profile details.
2) Potential Match: Provides all the potential matches of a user in relevance order.
3) Like: User can like a potential match user.
4) Show Matches: Showing the users which match against a user. A match happens when both the
users have liked each other.
5) Show All Matches: Showing system view by displaying all the matches in the system.
6) Ignore: User can ignore a potential match user.
7) Delete Account: If a user deletes an account, then all matches and likes will be removed.

Use Case: These are the following use case which we need to do:
1) If a user ​A​ likes user ​B​, the data should be stored for further processing.
2) All the matches(case where 2 users have liked each other) in the system should be shown.

Input Format:
a) create_account(user_name, x_coordinate, y_coordinate, age, gender)
b) delete_account(user_name)
c) potential_match(user_name)
d) like(user_name, user_name)
e) ignore(user_name, user_name)
f) show_matches(user_name)
g) show_all_matches()

We were given 90 minutes to solve this problem and then there was link were we had to upload the code. I solved 60%-70% of the problem with proper OOP concept and running code.
P.S : the code should be in running state and should be proper modularized. This round is meant to basically evaluate OOP concept.

I had asked to reschedule other rounds of interview to some other date but the HR told that this was not possible and I had to give all rounds on the same day only. So my next round was scheduled in the evening around 5:30 PM.

Problem Solving and Data Structure (Second Round): The interview directly jumped into the coding problem and I was asked 3 coding question of medium difficulty.
First Question : Given three colours in an array. Sort them in O(n) time.
Link: https://www.geeksforgeeks.org/sort-an-array-of-0s-1s-and-2s/
Second Question: Given a sorted dictionary of an alien language, find order of characters.
Link: https://www.geeksforgeeks.org/given-sorted-dictionary-find-precedence-characters/
Third Question: The question was this
Link: https://leetcode.com/problems/minimum-cost-for-tickets/

I had given answer to all the question above.

Hiring Manager (Third Round): This round was held by hiring manager and it was scheduled at around 7:30 PM. The interview began with the formal introduction and some discussion about the resume projects.Then there was lot of question asked based on behavioral and leadership skills. Some of them are as follows:
1) Why do you want to change?
2) What the instances where you outperformed your colleague?
3) Tell me a situation in which you took the ownership and performed well?
4) Tell a situation where you failed badly and did you deal with it??
Also there was a lot of question based on current project, some of them are:
1) Why GraqphQL instead of REST APIs??
2) How are using kafka between microservices??
3) How are we supporting the load between various clients??
4) what happens when a particular micro-service breaks down??

After about 1 day I gave a call to HR to ask my feedback and she replied that my application has been moved to de-brief stage where they will have discussion . De-brief stage is where all the panels sits and discuss whether they should roll an offer to you or not,Only the positive feedback application goes to debrief stage.

After 2 days from the interview I got the mail to submit the documents and I was scheduled the call with the manager for offer details.

Verdict: Selected  🙂