Introduction
Recently, I had the opportunity to interview for the Software Engineer position at PayPal India. I'd like to share my experience to help others who might be preparing for similar interviews.
Online Assessment
The online assessment consisted of 6 multiple-choice questions and 2 coding questions, ranging from medium to hard difficulty on Hackerrank. After completing the assessment, I received an email inviting me to the interview rounds.
Interview Process Overview
The interview process included two rounds:
1. Technical Interview
2. HR Interview
Round 1: Technical Interview
The technical interview began with the interviewer asking me to introduce myself. After the introduction, I was presented with a coding problem:
Problem 1: Search Element in Rotated Sorted Array
Requirement: Solve the problem in O(logn) time complexity.
Approach:
I first explained my approach to the interviewer, detailing how I would solve the problem using binary search. After receiving approval, I proceeded to code the solution.
Dry Run:
The interviewer asked me to dry run my code, which I did successfully. The interviewer was very satisfied with my solution. This discussion took about 40 minutes.
Problem 2: Find the Unique Element in an Array
Requirement: Identify the unique element in an array where every other element occurs twice except one.
Approaches:
1. Brute Force
2. Using Hashmap
3. Optimized solution using XOR operation
Implementation:
The interviewer asked me to implement the optimized solution using XOR. I coded it and discussed the time complexities involved. The interviewer was very pleased with my performance.
At the end of the interview, I was given the opportunity to ask questions. I inquired about my performance, and the interviewer responded positively. A few hours later, I received an email informing me that I had been selected for the HR round, scheduled for the next day.
Round 2: HR Interview
The HR interview began with the interviewer asking me to introduce myself. Following the introduction, the discussion covered various topics:
1. Projects: I discussed several projects I had worked on, elaborating on one in particular. The interviewer asked about the tech stacks used and the challenges faced during the project.
2. Situational Questions: The interviewer asked about my experiences with teamwork and how I handled different situations.
3. GitHub: Questions about my GitHub profile and contributions.
4. DBMS: Specific questions about joins, particularly left join and right join, and I was asked to write SQL queries for the same.
5. OOP Concepts:
Discussion on the four pillars of OOP with real-life examples.
Difference between interfaces and inheritance.
6. Why PayPal: I explained my motivation for wanting to join PayPal.
I answered all the questions except for one SQL query related to the left join. However, the interviewer was very satisfied with my responses overall and even praised my performance at the end. I was also given the chance to ask any questions I had.
Conclusion
All the interviews went very well, and I was confident that I would be selected. However, after a month, I received a rejection email. Although I was disappointed with the result, I did not lose hope and remained optimistic about future opportunities.
Verdict: Not Selected