PhonePe Interview Experience — Full-time SDE Role 2022 (On-Campus)
My Interview Experience with PhonePe for Full-time SDE Role — 2022 [Offer]
Resume :
How I got the interview opportunity ?
This was a On-Campus opportunity provided by my College — PICT (Pune Institute of Computer Technology), Pune. PhonePe is one of the top companies visiting our Campus and is famous for asking good level DSA questions. And also it was my Dream Company from First Year itself as all the top Coders from our College used to get place in PhonePe. So I was excited for the Interview Process.
They were the first company visiting for our batch 2022, visiting around last week of July 2021. So after we registered for PhonePe, we got the link to Online Test which was the first step of the process.
Online Assessment Round :
This round was conducted on PhonePe’s DoSelect Platform, which is similar to any other DSA Test Environment. The duration of test was 2 hours. There were 4 Coding Questions. Difficulty Level - Medium-Hard.
- Count ways to exit matrix [N][M] (4 adjacent directions movements) from given (Sx, Sy) starting point in atmost K steps.
→ Solvable in O( N * M * K) using DP - You can increment any A[i] by 1 (in total atmost K times), find the maximum frequency of any A[i] possible.
→ Available on LeetCode. Solvable in O(NlogN)
→ Approach: Sort Array. Fix L, find best R using binary search (prefix sums required) - Game Theory: Given A and C, start with value A! (A factorial), each player removes B (B <= A!) and B should have atmost C distinct prime factors.
→ A,C<=106
→ Answer: Count unique factors of A!, if it is <= C first wins else second wins - Some Hard problem on Tree which was not understandable and no one solved it.
The CutOff of this Round was 200 out of 400, 100 points for each Question and partials accepted. 9 students including me from whole College who appeared for the test were selected to next Interview Rounds. I got the mail next day that I have cleared the OA and the link of First Interview Round was also provided which was scheduled next day.
First Technical Interview Round (1 Hour Long) :
The Round was conducted on Google Meet and CodeSignal.
Difficulty Level : Easy-Medium.
The Interviewer was SDE-1 at PhonePe with experience of 1.5 years. The Basic Flow of Interview began with general Introduction of mine.
Then he wanted to know more about my Hackerearth Internship. He went in deep about Problem Setting and asked me the basic steps how can one set Problems in Hackerearth Workspace and how to generate test-cases and how can we Automate it.
Then the Interviewer started with DSA Questions -
- Given an sorted array of size N-1 consisting of all numbers from 1 to N except one number. Find that missing number.
My Solution : Expected O(logN) → Binary Search solution. (Very Easy Problem) - Given an array of integers. You can either take the first element or the last element. You need to take K elements such that their sum is maximum.
My Solution : Iterate on count of prefix elements to take from 0 to K and accordingly take suffix elements. Expected O(N). (Easy Problem) - Given an array of integers, you have to answer the query of type : L R D — Count of such numbers from L to R where the number of digits in that number >= D.
My Solution : O(N*logN) precomputation and O(1) query. Storing the prefix answer in a 2d array of form Pre[index][digit]. (Medium Problem)
The Overall Round was Easy and could be solved by someone who has some basic experience with Leetcoding. I got the call and was informed that I qualified with 5 other people for next Round. As this was On-Campus the progress was lot faster :)
Second Technical Interview Round (1 Hour Long) :
The Platform was same as of Round 1. The Interviewer had experience of 3+ Years of working at PhonePe.
There was basic Introduction of both of us and then he started with the Coding Questions.
- Given a Binary Tree where each Nodes are People and the leaf node having max depth gets Covid+ and it spreads to neighboring nodes in 1 sec. Find total time to spread in the whole tree.
My Solution : Answer would be the Diameter of Binary Tree and that are farthest nodes and one of endnode would be first Covid+. Recursive Solution returning best answer in it’s subtree.
Time Complexity : O(N). - Given a mathematical expression containing brackets, operator and numbers in String form. Evaluate the Expression and return the answer. There can be multiple numbers and operators in a single pair of brackets.
My Solution : Could be solved using postfix prefix knowledge. My Solution included using Two Stacks one for operands and brackets and another one for numbers. Don't know the standard solution of this problem.
Time Complexity : O(N).
The Round was of Medium-Hard level. I was expected to explain all the solutions to a problem from Brute -> Optimised and with their complexities and also Code the Best Solution with running some of sample Test cases in both the Rounds.
My expectaions were neutral after this round as I didn't had much idea about both the questions initially. But after some hand-running the testcases and thinking I figured out the solutions. But how I approached the Solutions really played a important role according to me. I explained each and every thought that came to my mind leading to Solution.
After some time I received the call that I qualified with 2 other people to next Round which was supposed to be the Final Round.
Third HR Interview Round (1 Hour Long) :
This was the Final Round and I was happy in first place that I somehow managed to qualify till last round of it. I kept No Expectations from this round, my main motive was to gain as much experience as I can from this Round. Because the Interview Experience with such a good Company was definitely going to help me a lot in Future.
The Platform for Interview was Google Meet. The interviewer was very experienced and was Head of some Department at PhonePe. This was HR Round so very less Technical/DSA was expected.
The Basic Flow of the Round was :
- The Round started with Interviewer’s brief introduction and what he do at PhonePe and then I gave my Introduction.
- Later he saw my Resume and asked some Questions on my couple of Internships. Asked Questions on HackerEarth Internship about - What type of topics I usually set Problems on.
- Then he asked about my Second Internship at Vicevio. It was Flutter Internship. He asked my how I helped in improving the architecture and what all other contributions.
- Have you developed any Android App that solved the problem you faced in your daily life? (No big Project expected, just small Apps). Luckily i had tons of examples but I answered with two of these :
1. Custom Todolist App (My Custom app having multiple features not available in current Todo Lists).
2. CodeForces Rating App (Users can see rating changes of Codeforces contests without requiring Login using Codeforces API). - How you managed Notification of your TodoList App. What will happen if someone accidently swipes it out?
- Coding Problem : Given numbers from 1 to N. Find the number of distinct Binary Search Trees we can form. (No need to code).
- Design an App for Farmers where they can download daily Reports say its a Weather Report. This question was expecting very basics of System Design. Some of the Questions I remember :
1. What will be Design and Architecture?
2. What features are important and other add ons.
3. How to improve App Engagement?
4. App Engagement vs Convenience.
5. Storing Report in Database vs File Systems. And different alternatives. Which is the better choice? Why?
6. How to improve Download Speed of Report?
7. Any alternatives to Make Download faster? - Why do you think you are best for PhonePe ?
After this Round was open for Questions and any other discussions. I asked some general doubts and information about Working at PhonePe.
The Interviewer was very very friendly so it was amazing experience for me. I was confident that I’ll get select as this was my best Round of all rounds.
Result :
I got Selected !
Some Tips :
- The Level of OA Round was Hard. But in Interview Rounds the level was Easy-Medium and Questions were more of Leetcode Style.
- Keep interacting with Interviewer and don’t take a long silent pause in interview even if you are thinking about the solution. Do interact about the approach you're thinking of.
- When you encounter any Easy Problem, do try to explain it very well as most of the students will solve it but explaining well might be differentiating point.
- If in case you don’t have any idea about the solution of the question asked I would personally prefer to tell the Interviewer that You Don’t have any good idea of it in first place, rather than going in deep without knowing anything correctly. This can really make/break your interview.
Offer and Celebration :
So after 2–3 hours i got the call from PhonePe and they told me that I have been Selected. It was very special for me as getting Placed in PhonePe was my dream since First Year of College. And that too on first day of Placement Season. My family members and all my friends were very happy and proud.
Conclusion :
This was a detailed overview of the interview process I went through. I hope you find it informative. In case you have any specific question, I’ll be more than happy to help ( My LinkedIn Profile ).
Best wishes 😊