Round 1 - Profile Selection (Online)

  • Write a polyfill for bind function.
  • Given an expression string exp, write a program to examine whether the pairs and the orders of {,},(,),[,] are correct in exp.
    Example 1:
    Input: exp = [()]{}{[()()]()}
    Output: Balanced
    Example 2:
    Input: exp = [(])
    Output: Not Balanced
  • What is the output of below program and Explain your output
for (var i = 1; i < 5; i++) {
    setTimeout(() >= console.log(i), 1000)  
}
  • Write a program for debounce function.

Round 2 - DataStructure and Algorithm

  • Write a program to find the intersection of two Linklist.
  • Write a program to implement Forward button and Back button for browser.

Round 3 - HTML, CSS and JavaScript

  • What is Doctype?
  • How many types of storage we've for a Web Application?
  • If there is a for loop running over some time and your browser is not responding on that particular time. What will you do to make browser available and always responding to the user?
  • What is Service worker?
  • What is Defer and async?
  • What is box model?
  • What is the difference between inline vs inline-block?
  • What is the difference between absolute vs relative position?
  • How can you align a div at center?
  • What is the difference between svg vs canvas?
  • What is pseudo-class?
  • What is Javascript Hoisting?
  • What is difference between function expression and function declaration?
  • Closure
if(i === 1 && i === 2 && i === 3)
    console.log("yes")
else 
    console.log("no")

What will you implement i so that we always get yes?

  • Write a program for sum(1)(2)
  • What is the difference between forEach vs map?
  • What the multiple ways to create object?
  • What is the difference between Object.create vs new?
  • What is the difference between Shallow copy vs Deep copy?
  • Write a program for shallow compare vs deep compare?
  • What is the difference between __proto__ vs prototype?
  • What is the prototype chain?
  • What is Prototype inheritance?
  • What is Promise? Why we should have to use it instead of call back?
  • What is async await?
  • What is event capturing vs event bubbling?
  • How to enable event capturing?
  • What is the difference between prevent default vs stop propagation?
  • Since both promise and setTimeout is async function which will execute first if both is available in queue at time T?
  • what is job queue?
  • ES6 feature - What is arrow function and when we have to use it, How it is different from normal function?

Round 4 - Design

  • How to design carousal?
  • How to design a search box?
  • How to design a listing page like amazon?
  • How to design a chat system?
  • How to improve web performance and how will you optimize code?
  • What is CORS issue?
  • What is Modular design pattern?
  • Explain about Redux architecture?
  • What is Middleware?
  • What is Pure component?
  • What is props and can we change props value?
  • How will communicate between parent to child and vice versa?

Round 5 - HR Round

  • What is your role in your current team?
  • Tell about any challenging work you did in the past?
  • If there is 4 property in a location in one property almost 90% rooms or bed sold out but in other 3 only 10% sold out, how can you increase the sell?
  • Why do you want to join Oyo?