I have two years of experience in a reputable SaaS company, including one year as an intern and one year full-time. I applied for an SDE 1 position at PayPal in . My application was strong, so the HR team skipped the online assessment and started with the technical rounds.
Technical Round 1
- Find the start and end index of the maximum subarray in a given array. (Modification version of Kadane's algorithm)
- Given a stream of elements, find the kth maximum at every position. The array length is infinite since it is a stream. (Similar to the Leetcode problem "Kth Largest Element in an Array" but we need to find it at each position). (Hint: Min Heap)
The interview went well, and I solved both questions. The interviewer provided some helpful hints.
Technical Round 2
I was expecting a coding round, but it was completely different.
- A coding question was asked, but the interviewer told me to just explain my approach, no need for a solution.
- We discussed interfaces and abstractions.
- I was asked in-depth about design patterns in Java.
- I was asked to implement the Singleton and Factory method patterns.
- Questions about the Observer pattern.
- Advanced DBMS questions.
- I was given a table of data and asked to achieve 1NF, 2NF, 3NF, and 3.5NF with explanations.
- I was given a problem statement and asked to design a database with tables, column types, and reference keys.
Hiring Manager Round 1
- The hiring manager asked me about my role and responsibilities at my current company.
- I was asked to explain some concepts based on my answers.
- I was asked some questions from my resume.
- Advanced Java and Database questions were asked.
This round did not go as well, and the manager was not satisfied with my answers. The HR team arranged another hiring manager since I performed well in the previous two technical rounds.
Hiring Manager Round 2
- The manager was impressed by my resume.
- He started with basic questions from OOPs.
- Then he asked advanced concepts like immutability, memory management, threads and concurrency, queues and Zookeeper, and SQL and NoSQL.
The hiring manager was impressed with my performance and gave good feedback.
After two days, I received a message from HR that I was accepted into PayPal.
Verdict: Selected
The interview process was smooth, and HR continuously contacted and reminded me. Each round lasted about one hour. My advice for job seekers is to not blindly practice every problem on Leetcode. Practice only a certain list and make sure you have a complete understanding of that data structure. Be strong with your fundamentals!