- Published on
Paypal | SDE-2 | 5 yrs exp | Rejected by HR ego
- Author
- Shared Anonymously
5 years experience - 2 product based companies (not FAANG)
Tier 3 university
Laidoff few months ago
Recruiter contacts and asks if I am interested and want to go ahead. Asks for my current compensation, I decline to reveal, say am open to reasonable offers. Goes ahead with the interview.
Round 1
Online coding assessment. 2 questions. 1 coding implementation, 1 competitive coding. 90 mins.
-
Payment wallet. Add balance, check if transaction is possible, deduct balance. Client code/Stub code is given which calls certain classes, catches certain exceptions and expects certain output. Goal is to implement these classes. Implement only in Java.
-
Given an array of costs, you can perform 'm' steps. In each step you can choose any cost and reduct it by half. Goal is to minimize the total cost (sum of array). Return total cost. Any language.
Round 2
Given - string s, char c, int count
Find continuous substring in 's' which has the lowest length and has count 'count' of char 'c '.
Ex: s - 'abrtbopkbxb', c - 'b', count - 2
Ans: 3 - continuous substring 'bxb'
Random shuffle
Given a list of strings, randomly shuffle the list. Multiple calls to the function should produce random shuffles. Probability of same shuffle should be extremely low.
Round 3
Concept of immutability. Design a class which takes in name and date of birth (dob) and proviede simple getters. Make the class immutable. Name and dob should not be modifable after the object has been created.
Do you know what a pubsub (Publisher Subscriber model) is? Design code and classes as if you're providing a library. Client code should be able to publish content and subscribe to content.
Assume you are building a booking website like BookMyShow. What problems would you face when booking seats? Do you need to take locks? Which type of lock? Which level - at DB or in code? Will this slow down reads? Which one is more efficient? Booking websites like BookMyShow would not work only on a single machine, but multiple machines. Traditional locks won't work. How do you solve that? Each machine should be able to know the current status of the seat - booked/unbooked and should be able to book the seat.
Drama:
Receive a call and was informed have cleared Round 3 and receive an email invite for Round 4 with the Hiring manager.
Within an hour of the invite, receive 2 missed calls from 2 different numbers. Then, get an SMS saying - "[Mr/Mrs x] here from Paypal HR, call me back NOW as it's imp".
Called back on the first number, no one picked up (this was recruiter's with whom I had been in contact with). Called back on the second number, picks up call.
- HR: Hi, I handle recruitments for this particular team. I want to know what your previous compensation was.
- Me: Oh, I still have an interview round left. Can we discuss it, once it's cleared?
- HR: No. Your previous rounds went well and this round with manager is just for him to get to know you. Please tell me your previous compensation.
- Me: Oh, I had told the recruiter at the beginning that my current salary was confidential and I wouldn't be able to reveal it.
- HR: (angrily) What do you mean by confidential?? You are talking to an HR person here!!
- Me: By confidential, I mean I cannot reveal it.
- HR: Why can't you reveal it??
- Me: Because it's confidential.
Silence for 5 seconds
- HR: (starts shouting) We need to know for internal purposes. We do not onboard anyone who doesn't reveal their salary.
- Me: Oh ok, I understand. I am willing to give all my details after the I receive an offer and we reach an agreement.
- HR: No, I need to know now!!
- Me: But I had said this at the beginning itself to the recruiter. Why do you need to know?
- HR: I need to know to give you an offer according to that.
- Me: Why? This role has a salary range. Salary should be based on my skills, experience and the work that I am expected to do. What does my previous salary has anything to do with it?
- HR: (still shouting) Will you shut up for 1 second? LET ME SPEAK!! You've been blabbering on for so long! [Has no logical response, so tells me to shut up]
- Me: Yes, please go ahead
- HR: (still shouting) THIS IS NOT HOW IT WILL HAPPEN!! THIS IS HOW IT'S GOING TO BE! I NEED TO KNOW YOUR SALARY
- Me: Why are you shouting? I am not your servant!
- HR: (still shouting, still goes on saying something)
- Me: Don't shout at me!
- HR: You know WHAAAAT!!!
- Me: I know what you're going to say
- HR: I am going to go ahead and cancel the meeting. This "unprofessional" behavior is not acceptable.
- Me: (Lost it at this point) You go ahead and do that! Go ahead and do that!
- HR: Cuts call
According to Paypal, I am supposed to take their constant shouting by HR, shut up and answer all the questions and dare I do speak against it - oh all is lost then! They can shout, they can ask for my current salary, be rude and whatnot. And when you say something - Oh, this "unprofessional" behavior is unacceptable. Hypocrites! Just goes to show how you will be treated once you get in. Employee is just a glorified title for servant. Hindi has the right word for it - "Naukri"
PS: Engineers seemed to be some of the most knowledgable and humble people. Very polite during the whole interview process. Would have loved to work with them.