Flipkart - SDE 1 | Mar 2021 | 1.5 yrs Exp [Offer]

Work Experience: 1.5+ years at a early stage startup
Background: Pharmaceutical Science
Position: SDE-1 Flipkart
Location: Bangalore, India
Interview Period: Mar 2021
Interview Mode: Virtual
Total rounds: 2 Tech + 1 hiring manager round

Round1(1hr : 30mins):
Machine Coding round, had to make Implement an e-commerce platform application with following features

  • We would able to onboard (add) users to the system

  • The application allows sellers to list products on the platform.

  • Users can either sell a product (Seller) or buy any listed product(Buyer).

  • Users(buyer) can select a product from multiple offered products using a selection
    strategy (You can assume buyer can only buy single quantity of a product at one
    time). Currently we have only two stratgies available;

    1. One with best rating i.e. highest rating. If ratings are the same, then
      choose the one with the lowest price.
    2. One with lowest price i.e. lowest product price. If prices are the same,
      then choose the one with the best rating.
  • List all products sold/bought by any user.

    Bonus Feature
    A buyer can cancel a specific product which he/she has purchased. Seller’s product quantity should increase after cancellation.

    I was suppose to write modular, well-structured code using OOPs and it should pass certain cases and should be demoable. Coded it as a console application using oops concepts, well structued code, passed all test cases, handled exceptions, demoed successfully. Except bonus feature (told left it due to time limit), and he asked me how you would have implemented it if you have time. I suggested and he looked satisfied.

Round2 (1hr):
PSDS(Problem solving and Data Structures round)
Q1: Trapping rain water: Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining. - had to solve it in O(n) space and time, code the solution. I first solved it in O(n^2) and optimized it using Dynamic Programming in O(n).
Q2: LRU Cache: Design a data structure that follows the constraints of a Least Recently Used (LRU) cache with following functionalities

  • LRUCache(int capacity): Initialize the LRU cache with positive size capacity.
  • int get(int key): Return the value of the key if the key exists, otherwise return -1.
  • void put(int key, int value) :Update the value of the key if the key exists. Otherwise, add the key-value pair to the cache. If the number of keys exceeds the capacity from this operation, evict the least recently used key.

I solved it with multiple approaches, but later with discussion with intevriewer, solved it using Hashmap amd doubly linkedlist (DLL).

Actually, I enjoyed this round more, and we were discussing different approaches.

Round3 (1hr):
Hiring manager round.
He explained me about the team, etc, made me feel comfortable.
Discussion on projects, backgorund , and situational questions etc.
In the end, I have also asked them about my role, team structure, tech stack and their expection from me.

I got positive review of this round, both of the interviewer seemed convinced and in the end they said that they really liked the conversation.

Verdict: Selected

Comments (9)