Paypal | Software Engineer 1 | Feb 2022 | Offer
Summary
I interviewed for the Software Engineer 1 role at Paypal in February 2021 and successfully received an offer. The process involved an online assessment, two technical rounds focusing on data structures, algorithms, and system design, followed by a hiring manager discussion covering behavioral and general system concepts.
Full Experience
My interview journey for the Software Engineer 1 position at Paypal began on February 26, 2021. I am a 2021 graduate currently working at a service-based company in Bangalore, India.
Online Assessment (1 hour)
I started with an online assessment that featured two medium-level questions. I managed to solve approximately 1.8 of them. Based on my performance in the OA and my resume, I was shortlisted for the technical interviews.Technical Round 1 (1 hour)
This round began with a basic introduction and a discussion about my past experience. The interviewer then delved into some core computer science concepts, asking about the internal working of a hashmap and various multi-threading concepts with follow-up questions. I was also asked to write code for two problems:- Checking if a given Linked List is a Palindrome.
- Counting pairs in an array whose sum is divisible by K.
Technical Round 2 (1 hour)
The second technical round involved an in-depth discussion about my past experience, the challenges I faced, and follow-up questions on those. A significant system design question was posed: 'How would you handle millions of requests on a single database server, possibly using a queuing mechanism?' I also had to write code for the 'Evaluation of a Postfix Expression'. Towards the end, there were some questions on Low-Level Design (LLD), specifically using the example of 'Car --> Brand --> different models', and a few questions related to REST APIs.Hiring Manager Round (1 hour)
The final round was with the hiring manager. It started with a basic introduction. I was then given two coding problems:- Printing unique elements from two arrays (e.g.,
a = [1,5,7,8,9,12] b = [1,3,6,5,7]with an expected output of[3, 6, 8, 9, 12]). - Checking if a given number is prime.
Interview Questions (9)
Write code to check if a given linked list is a palindrome.
Given an array of integers and an integer K, write code to count the number of pairs (i, j) such that i < j and (arr[i] + arr[j]) is divisible by K.
Discuss strategies and mechanisms, such as queuing, to handle millions of requests directed at a single database server efficiently.
Write code to evaluate a given postfix expression.
Design a Low-Level Design (LLD) for a system involving Cars, Brands, and different Models, explaining the relationships and classes involved.
Given two arrays, e.g., a = [1,5,7,8,9,12] and b = [1,3,6,5,7], print all unique elements from both arrays. The expected output for the example is [3, 6, 8, 9, 12].
Write code to check if a given number is prime.
Explain the entire process that occurs when you type a URL into your browser and press Enter, up to the point where the webpage is rendered.
Discuss key aspects and considerations one should keep in mind when building a web page.