Taro Logo

Senior Software Engineer Interview Experience - Bengaluru, India

August 1, 2016
Negative ExperienceNo Offer

Process

Written

  1. Create your own linked list and write a function to find the middle element of the list.
  2. Consider an array which contains alphabets from 'a' to 'z'. Write a program that uses two threads to print this array.
  3. Consider an array of integers. Write a program that shifts all the zeros (0) in this array to the right. Please note that you should not use any extra array or collections.

Then I was selected and attended the second round.

I was asked how to implement the "People You May Know" concept of Facebook. Write a Java program for it. I explained the algorithm and dynamics behind it, but they told me to write the code, which was rubbish.

Second question was on patterns (.) and (*). Suppose you have a complex pattern like a.b.*cdd*e.ff*. Given a string, you need to return true or false if it matches.

(.) means any character. a.b means 'a' followed by any value, then 'b', for example, a5b.

(*) means repeated. a*b means 'a' followed by zero or more 'a's, then 'b'. For example, aaab will be true, but ab will be false.

Write code for the same which takes two inputs: one regex pattern and one sample string, and returns a boolean value whether it adheres to the regex or not.

Questions

Written:

  1. Create your own linked list and write a function to find the middle element of the list.
  2. Consider an array which contains alphabets from 'a' to 'z'. Write a program that uses two threads to print this using both.
  3. Consider an array of integers. Write a program that shifts all the zeros (0) in this array to the right. Please note you should not use any extra array or collections.

Then I was selected and attended the second round.

I was asked how to implement the "People You May Know" concept of Facebook. Write a Java program for it. I explained the algorithm and dynamics behind it, but they asked me to write the code, which was rubbish.

Second question was on patterns ('.') and ('*'). Suppose you have a complex pattern like a.b.*cdd*e.ff*. If I give you a string, you need to return true or false if it matches.

(.) means any. For example, a.b means a (any value) b, such as a5b.

(*) means repeated. For example, a*b means a (then n number of a's) then b. For example, aaab will be true, but ab will be false.

Write code for the same which takes two inputs: one regex pattern and one sample string, and returns a boolean value whether it adheres to the regex or not.

Was this helpful?

Interview Statistics

The following metrics were computed from 19 interview experiences for the PayPal Senior Software Engineer role in Bengaluru, Karnataka.

Success Rate

21%
Pass Rate

PayPal's interview process for their Senior Software Engineer roles in Bengaluru, Karnataka is very selective, failing most engineers who go through it.

Experience Rating

Positive37%
Neutral5%
Negative58%

Candidates reported having negative feelings for PayPal's Senior Software Engineer interview process in Bengaluru, Karnataka.

PayPal Work Experiences