My Paypal Interview Experience For SDE 2 UI role

Yogita Verma
Women in Technology
2 min readOct 11, 2023

I am writing this experience because not many interview experiences for Senior Front-end roles are available online.

Hey Reader!!

I had 3 rounds of tech interviews.

Let’s begin.

Round 1:

First, an interviewer asked me to explain my experience at Livspace. Then there was a Leecode medium problem on strings.

Given an input string s, reverse the order of the words.

Input: s = "the sky is blue"
Output: "blue is sky the"

If the string data type is mutable in your language, can you solve it in-place with O(1) extra space?

I gave the solution in javascript. The interviewer was satisfied with the approach.

Difference between throttle and debouncing. And implementation of both of them.

Questions on Promises, Async-await. How they are different then callbacks. I explained it using examples.

What are High order functions. I explained with examples.

Questions around Virtual DOM, Reconcilliation

Why we use polyfills and polyfill of reduce.

Render data on screen using React Hooks.

Round 2:

Round 2 was fairly simpler then Round 1. As I completed both the questions in 30 mins ;)

Question 1 :

Question around object manipulation in Javascript. Deep copy and Shallow copy and its tradeoffs. These Questions had to be implemented on online editor shared by the interviewer similar to Hakerrank.

Question 2:

Implement a function flatten that returns a newly-created array with all sub-array elements concatenated recursively into a single level.

// Single-level arrays are unaffected.
flatten([1, 2, 3]); // [1, 2, 3]

// Inner arrays are flattened into a single level.
flatten([1, [2, 3]]); // [1, 2, 3]
flatten([
[1, 2],
[3, 4],
]); // [1, 2, 3, 4]

// Flattens recursively.
flatten([1, [2, [3, [4, [5]]]]]); // [1, 2, 3, 4, 5]

I gave both recursive and iterative solution. Got Brownie points for iterative solution :P

function flatten(value) {

const res = [];

const copy = value.slice();

while (copy.length) {

const item = copy.shift();

if (Array.isArray(item)) {

copy.unshift(…item);

} else {

res.push(item);

}

}

return res;

}

Follow-up Question

Flatten the list if depth is given.

The rest of the interview was around my work experience and about Paypal’s team.

Round 3:

It was a techno-manegerial round.

The discussions revolved around why Vue or React. Since I had experience working in both. The current trends in Web development. Why Sass.

Why CSS in JS or Styled Components. Its pros and cons.

Different bundlers and there advantages.

Discussions around what the team does in Paypal and there design system.

That’s it… Hope you liked this article. Please do at least “one clap, one comment, highlight at least one line which you like the most, follow and share.” It motivates me.

--

--

Yogita Verma
Women in Technology

Front-end Engineer with 4 years of experience. Ex Livspace | Ex - Red Hat