OYO Rooms Interview Experience for Web Development Engineer-2
Year of Experience: 4.5 Years.
Really well organized, and the entire process was completed in 3 days, as opposed to top MNCs, which delay each round by weeks.
There are four rounds in total.
Round 1(Data Structures): Duration: 60 minutes.
- Reverse a given linked list. [https://www.geeksforgeeks.org/reverse-a-linked-list/]
- Find the first and last positions of an element in a sorted array. [https://www.geeksforgeeks.org/find-first-and-last-positions-of-an-element-in-a-sorted-array/]
- Check to see if there are two elements in an array whose sum equals the sum of the rest of the array. [https://www.geeksforgeeks.org/check-exist-two-elements-array-whose-sum-equal-sum-rest-array/]
Some stories were told in response to these questions, but they were ultimately translated to the ones listed above. I did not expect to be asked these types of questions for the UI role, but I answered all of them in the allotted time.
Round 2(HTML + CSS + JS): Duration: 45 minutes.
- Because this position is based on UI design, the interviewer questioned me extensively on web technology tools.
- There are few questions that I remember :
- Discussions on Immediately invoked function expression, var, and let, as well as revealing module pattern.
Follow-ups on specificity, cascading effect, inheritance, How do you deal with cross-browser styling issues? (CSS Normalization and Reset) Performance enhancement, Critical Rendering Path, etc.
Round 3(Low-level designing):
We began with a simple problem.
There is a chat section in the Oyo room. Each chat requires the establishment of a socket connection with the server. However, the cost of supporting too many open connections is prohibitively expensive. As a result, we must implement the following in the chat component:
- When the user clicks on the chat button, a socket connection is established. ( There is no need to code this; it is simply a pseudo code for socket interaction; there is no need to worry about actual syntaxes and code ).
- The connection should be terminated 30 seconds after the click. If the user enters something in the chat area, the timer is reset and the 30 second counter is restarted. ( This was the main task requested here, and it was similar to debouncing ).
Then there is small discussion on setTimeouts, event queues, mico and macro tasks. Twitter should be designed. ( User Interface System Design ) How would you manage the state? Which libraries would you recommend for state management? How do you keep your posts up to date in real time? Discusses the creation of a separate component library.
I provided a React context-based solution -> Decomposing the entire app into small contexts.
Round 4(Managerial Round):
- Discussions about how you monitor your app, maintain plugin quality and PR reviews, mentoring experience, analytics of user data, how you decide business impact, things you’re proud of, and how you handle conflicts. How would you react if you were assigned a tedious task such as maintaining a codebase without any actual work? More information on cultural fit and work experiences.
- I can definitely say that the people of OYO are extremely hardworking. In contrast to many top MNCs, they do not want to brag in interviews. The questions were also fairly standard, not the kind of Product Manager questions where we need to imagine and priorities new features.
- The descriptions were also very clear and not at all ambiguous. It was strictly technical, and I was interviewed for a position with OYO Vacation Homes.
Finally, I got an offer letter.