i
OLX
Filter interviews by
Promises, async/await, and event emitters are all ways to handle asynchronous operations in JavaScript.
Promises provide a way to handle asynchronous operations by returning a promise object that can be resolved or rejected.
Async/await is a syntax for working with promises that makes code easier to read and write.
Event emitters allow you to create custom events that can be triggered and listened for in your code.
Design a system like Facebook
Create a user registration and login system
Implement a news feed for users to see updates from friends
Allow users to create and join groups
Include features like messaging, commenting, and liking posts
Implement privacy settings for users to control who can see their content
I appeared for an interview in Oct 2020.
Round duration - 60 mins
Round difficulty - Medium
3 Questions were asked : 2- Trees and 1- Stack.
Interviewer was not receptive at all, I think this was a stress interview.
Given a binary tree with 'N' nodes, determine if it is a Binary Search Tree (BST). Return true
if the tree is a BST, otherwise return false
.
Validate if a given binary tree is a Binary Search Tree (BST) or not.
Check if the left subtree of a node contains only nodes with values less than the node's value.
Check if the right subtree of a node contains only nodes with values greater than the node's value.
Ensure that both the left and right subtrees are also binary search trees.
Traverse the tree in-order and check if the elements are in sorted order.
Use a recurs...
Given a binary tree with 'N' nodes, transform it into a Greater Tree. In this transformation, each node's value should be updated to the sum of its original value and...
Convert a binary tree into a Greater Tree by updating each node's value to the sum of its original value and the values of all nodes greater than or equal to it.
Traverse the tree in reverse inorder (right, root, left) to update the nodes' values.
Keep track of the sum of nodes visited so far to update each node's value.
Recursively update the node's value by adding the sum of greater nodes to it.
You are given a string STR
containing only the characters "{", "}", "(", ")", "[", and "]". Your task is to determine if the parentheses in the string are balanced.
Th...
Check if the given string containing only parentheses is balanced or not.
Use a stack to keep track of opening parentheses.
Iterate through the string and push opening parentheses onto the stack.
When a closing parenthesis is encountered, pop from the stack and check if it matches the corresponding opening parenthesis.
If at the end the stack is empty, return 'YES' else return 'NO'.
Round duration - 60 mins
Round difficulty - Hard
2 Coding Questions were asked, both were of Medium to Hard Difficulty.
You are given a multi-level linked list containing 'N' nodes. Each node has 'next' and 'child' pointers that may or may not point to other nodes. Your task is to flatten th...
Flatten a multi-level linked list into a single linked list by rearranging the pointers.
Traverse the linked list and whenever a node has a child, flatten the child list and append it after the current node.
Update the 'next' and 'child' pointers accordingly while flattening the list.
Continue this process until all nodes are rearranged into a single linked list.
Given an array/list ARR
of size N
, representing an elevation map where each element ARR[i]
denotes the elevation of the i-th
bar. Your task is to calculate and print ...
Calculate the total amount of rainwater that can be trapped between given elevations in an elevation map.
Use two-pointer approach to keep track of left and right boundaries.
Calculate the trapped water by finding the minimum of left_max and right_max for each bar.
Subtract the current bar's height from the minimum of left_max and right_max to get the trapped water.
Keep updating the left_max and right_max as you iterate t
Round duration - 90 minutes
Round difficulty - Medium
Timing : It was late night.
How the interviewer was? He was very tired and I had to lead the discussion.
1 System Design Question was asked, had to provide - HLD, LLD, APIs.
Round duration - 60 minutes
Round difficulty - Medium
Timing : Afternoon
How was the environment? Home
Interviewer : Hiring Manager
Discussed about past Projects, challenges faced, disagreements with manager, why looking for job switch, leadership principle questions were asked.
Round duration - 60 minutes
Round difficulty - Medium
Timing - Afternoon
How was the environment? Home
How the interviewer was? Very Helpful Interviewer
Bar raiser Round - Coding + System Design + Leadership principle
Tip 1 : 250 Leetcode ( Easy- 70, Medium- 150, Hard- 30)
Tip 2 : Don't underestimate importance of good projects on your Resume.
Tip 3 : Be Confident.
Tip 1: Resume should not be more than 1 page.
Tip 2: Have Keywords on Resume that match Job descriptions.
I applied via Recruitment Consulltant and was interviewed before Apr 2021. There were 2 interview rounds.
2 coding questions
Find sum of all numbers formed from root to leaf path in a binary tree
Traverse the binary tree using DFS
At each leaf node, add the number formed from root to leaf path to a sum variable
Return the sum variable
Time complexity: O(n)
Example: For a binary tree with root value 1, left child 2 and right child 3, the sum would be 12 + 13 = 25
Given a string, print all possible strings that can be made by placing spaces (zero or one) in between them.
Use recursion to generate all possible combinations of spaces
For each recursive call, either add a space or don't add a space between the current character and the next character
Base case is when there are no more characters left to add spaces between
Time complexity is O(2^n) where n is the length of the string
Preorder traversal without recursion
Use a stack to keep track of nodes
Push right child first and then left child onto stack
Pop top of stack and print value
Repeat until stack is empty
Find longest continuous patch on a 12 km road with updates in patches
Maintain a variable to keep track of current patch length
Update the variable whenever a new patch is added
Maintain a variable to keep track of longest patch so far
Compare current patch length with longest patch length and update if necessary
Use a sorted data structure like a binary search tree to store the patches for efficient search
Time complexity: ...
Find median of an unsorted array.
Sort the array and find the middle element
Use quickselect algorithm to find the median in O(n) time
If the array is small, use brute force to find the median
Find 'k' elements closest to a given number from a stream of characters.
Use a priority queue to keep track of closest elements.
Update the queue as new characters come in.
Return the 'k' closest elements from the queue.
Design a data structure with O(1) insert, remove, find-max, and delete-max operations.
Use a doubly linked list to maintain the elements in sorted order.
Use a hash table to store the pointers to the nodes in the linked list.
Maintain a pointer to the maximum element in the hash table.
Update the pointers in the hash table when inserting or removing elements.
Update the maximum pointer when deleting or inserting the maximum
Check if a given linked list is a palindrome.
Traverse the linked list and store the values in an array.
Compare the first and last elements of the array, then move towards the center.
If all elements match, the linked list is a palindrome.
Alternatively, use two pointers to find the middle of the linked list and reverse the second half.
Compare the first half with the reversed second half to check for a palindrome.
I appeared for an interview before Sep 2020.
Round duration - 60 minutes
Round difficulty - Easy
Timing: evening
Environment: Online round took at home
Given an array A
consisting of N
integers, find the smallest subarray of A
that contains exactly K
distinct integers.
The first line contains tw...
Find the smallest subarray with exactly K distinct integers in an array.
Use a sliding window approach to keep track of the subarray with K distinct integers.
Use a hashmap to store the frequency of each integer in the current window.
Update the window size based on the number of distinct integers found.
Keep track of the smallest subarray meeting the criteria.
Return the starting and ending indices of the smallest subarray
Round duration - 90 minutes
Round difficulty - Medium
Machine coding round
Round duration - 60 minutes
Round difficulty - Medium
Given a N * N
maze with a rat placed at position MAZE[0][0]
, find and print all possible paths for the rat to reach its destination at MAZE[N-1][N-1]
. The rat is allowed to...
The problem involves finding all possible paths for a rat to reach its destination in a maze.
Use backtracking to explore all possible paths in the maze.
Mark visited cells to avoid revisiting them.
Return the path once the destination is reached.
Handle edge cases like blocked cells and out-of-bounds movements.
Round duration - 60-90 minutes
Round difficulty - Medium
Round duration - 60 minutes
Round difficulty - Medium
Hiring Manager round
Tip 1 : Do some basic research about the interview process and types of rounds while appearing for a company interview. Narrow down the topics and draft a realistic plan afterwards.
Tip 2 : Try to solve as many problems as possible as this is primarily what you will be doing in live interview rounds.
Tip 1 : Tailor your resume as per expectations from the role you are applying for.
Tip 2 : Order your experiences and skills by relevance.
Tip 3 : Try to fit the content in a single page.
I appeared for an interview before Sep 2020.
Round duration - 60 minutes
Round difficulty - Medium
It was a telephonic interview at 10 in the morning. Interviewer seemed cool.
You are provided with a sorted array A
of length N
consisting of distinct integers and a target integer M
. Your task is to determine the position where ...
Find the best insert position for a target in a sorted array to maintain order.
Use binary search to find the correct position for the target integer in the sorted array.
If the target is already present in the array, return its index.
Maintain the sorted order of the array after inserting the target integer.
Handle edge cases like empty array or target being smaller than the first element or larger than the last element.
Round duration - 60 minutes
Round difficulty - Medium
The interview was in the morning at 10 AM in the office meeting room.
Mr. X is a professional robber with a plan to rob houses arranged in a circular street. Each house has a certain amount of money hidden, separated by a security system that ...
House Robber problem - find maximum amount of money Mr. X can rob without triggering alarm in circular street.
Use dynamic programming to keep track of maximum money robbed at each house.
Consider two cases - robbing the first house and not robbing the first house.
Handle circular arrangement by considering the first and last houses separately.
Return the maximum amount of money that can be robbed without triggering the al
Round duration - 60 minutes
Round difficulty - Medium
The interview was at 11 AM in the meeting office.
Given a stream of integers, calculate and print the median after each new integer is added to the stream.
Output only the integer part of the median.
N = 5
Stre...
Calculate and print the median after each new integer is added to the stream.
Use a min heap to store the larger half of the numbers and a max heap to store the smaller half of the numbers.
Keep the two heaps balanced by ensuring the size difference is at most 1.
If the total number of elements is odd, the median is the top element of the larger heap. If even, it's the average of the tops of both heaps.
Round duration - 60 minutes
Round difficulty - Medium
The interview was at 1 AM.
Round duration - 60 minutes
Round difficulty - Easy
The meeting was at 2 PM in the office meeting room.
Round duration - 60 minutes
Round difficulty - Easy
10 AM
Tip 1 : Be consistent in the preparation. Practice atleast one question everyday
Tip 2 : Make relevant notes that you can go through on the day before the interview
Tip 3 :Try to note your progress by giving timed contests
Tip 1 : Clearly mention the details of the projects that are relevant to the company that you are applying for
Tip 2 : Ensure that there are no grammatical mistakes and that you have highlighted the important keywords in your resume
I applied via LinkedIn and was interviewed in May 2021. There was 1 interview round.
Find sum of least closest element to left and highest element to right for each element of an array
Iterate through array and find least closest element to left and highest element to right for each element
Calculate sum of these two elements for each element
Return array of sums
I appeared for an interview in Jul 2021.
Round duration - 60 minutes
Round difficulty - Medium
It was a problem solving round where a hackerrank link was given containing 2 questions.
You have to solve them within 90 minutes.
I was asked to solve it within a week.
Given a string 'S', identify and print all distinct palindromic substrings within it. A palindrome reads the same forwards and backwards. For example, 'bccb' is a pali...
Given a string, find and print all distinct palindromic substrings within it.
Iterate through all possible substrings of the input string
Check if each substring is a palindrome
Store distinct palindromic substrings in a set and then sort them before printing
Round duration - 60 minutes
Round difficulty - Easy
2 questions was asked by the interviewer. You have to clearly explain your approach and write a working solution. He even asked me to run on some additional test cases
You are provided with a N x 2 2-D array called Jobs
consisting of N
jobs. In this array, Jobs[i][0]
represents the deadline of the i-th job, while Jobs[i][1]
indicates the...
Maximize profit by scheduling jobs within their deadlines.
Sort the jobs based on their profits in descending order.
Iterate through the sorted jobs and schedule them based on their deadlines.
Keep track of the maximum profit achievable by scheduling jobs within their deadlines.
Given an array ARR
consisting of 'N' positive integers, determine if it is possible to partition the array into two subsets such that the sum of the elements in both sub...
The problem is to determine if it is possible to partition an array into two subsets with equal sum.
Use dynamic programming to solve this problem efficiently.
Create a 2D array to store the subset sum possibilities.
Check if the total sum of the array is even before attempting to partition.
Iterate through the array and update the subset sum array accordingly.
Return true if the subset sum array contains a sum equal to hal
Round duration - 60 minutes
Round difficulty - Easy
I was asked 1 system design question. The question was to design an online multiplayer game which can be scaled for more than 10 million users.
The interviewer helped me to collect requirement and also helped me in choosing different low latency protocol to communicate between client and server.
Round duration - 60 minutes
Round difficulty - Medium
The interviewer asked few sql based questions and asked me to write the solution.
He also gave 1 problem solving question.
Different types of joins in SQL and calculating average of values from a table.
Types of joins: INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN
To calculate average: Use AVG() function in SQL
Example: SELECT AVG(column_name) FROM table_name
Tip 1 : Prepare Data Structures topic by topic and also solve at least 10 interview questions from each topic. The have a list of excellent questions.
Tip 2 : For system design try to take few questions by yourself and think of what different scenarios can arise considering it as a distributed system. There are multiple topics like Consistent Hashing, Partition tolerance, Availability, Sharing etc which needs special attention. The interviewers will dig them deep and will try to see how much of it you actually understand.
Tip 3 : Also please do focus on LLD. Sometimes they can ask you to write sample code for problems. Try solving 4-5 problems.
Tip 4 : You should do and prepare properly 2 -3 projects and try deploying it. You will face a lot of new challenges which you do not face in normal day to day usage.
Tip 1 : You can go for 1 page resume, though it is not necessary. Mention about your projects, your actual contribution, languages that you have used in that project etc.
Tip 2 : You should always put your academic achievements. Sometimes it gains interviewers attention.
Tip 3 : Make it a little bit colourful rather than plain white.
I appeared for an interview in Apr 2021.
Round duration - 1 hour
Round difficulty - Medium
This was coding round and was conducted on Google meet with code link shared. Their were 2 interviewers that gave questions and later ran code on sample test cases.
Given an input string 'S', you are tasked with finding and returning all possible permutations of the input string.
The first and only line of input ...
Return all possible permutations of a given input string.
Use recursion to generate all possible permutations of the input string.
Swap characters at different positions to generate permutations.
Handle duplicate characters by skipping swapping if the characters are the same.
Given a non-negative integer 'K', determine the Kth row of Pascal’s Triangle.
K = 2
1 1
K = 4
1 4 6 ...
The task is to find the Kth row of Pascal's Triangle given a non-negative integer K.
Create an array to store the elements of the Kth row of Pascal's Triangle.
Use the formula C(n, k) = C(n-1, k-1) + C(n-1, k) to calculate the elements.
Return the array as the output.
Round duration - 2 hours
Round difficulty - Medium
This was a Machine Coding Round/LLD round followed by HLD round which was taken by Video Conferencing and Screen Sharing.
Round duration - 75 minutes
Round difficulty - Medium
This was the last round. This was HM round followed by the HR round.
Tip 1 : Solve previously asked questions. It tells you about the level of questions that the company asks. Check glass-door reviews it will help you to know what kind of questions company ask
Tip 2 : Be real during the interview and don’t show off.
Tip 3 : Prepare for theory subjects like Object-Oriented Programming System, Database Management System, Computer networks, etc.
Tip 1 : Keep your resume simple with all work experience mentioned.
Tip 2 : Any unwanted information on the resume leaves a bad impact on the interviewer.
Tip 3 : You should be prepared to explain anything that’s written on your resume.
Tip 4 : Keep it of 1 page or 2 pages only
I appeared for an interview in Mar 2022.
Round duration - 60 minutes
Round difficulty - Medium
1 Medium/Easy DSA questions were asked similar to Leetcode.
I was expected to come up with the most optimal solution for the same. I completed the code and explained in 45 mins.
In the remaining time, I was asked questions from Computer Science fundamentals and Java
Nobita wants to impress Shizuka by correctly guessing her lucky number. Shizuka provides a sorted list where every number appears twice, except for her lucky number, which a...
Find the unique element in a sorted array where all other elements appear twice.
Use XOR operation to find the unique element in the sorted array.
Iterate through the array and XOR all elements, the result will be the unique element.
Time complexity of O(n) can be achieved by iterating through the array once.
Round duration - 60 minutes
Round difficulty - Easy
Low-level system design round.
Expected to come up with a running code.
Design and implement a Least Recently Used (LRU) cache data structure. This cache must support the following operations efficiently:
get(key)
: Return the value associate...Implement a Least Recently Used (LRU) cache data structure that supports get and put operations efficiently.
Design a data structure that maintains a cache with a specified capacity.
Implement get(key) function to return value associated with key or -1 if key doesn't exist.
Implement put(key, value) function to insert/update key-value pair in cache.
Invalidate least recently used item when cache reaches its capacity.
Handle...
Round duration - 30 minutes
Round difficulty - Easy
Standard behavioural questions by HR
Tip 1 : Break down the total topics based on your comfort and ease and try and master one topic at a time
Tip 2 : Try and up solve
Tip 3 : Always try and come up with multiple solutions for a DSA question starting from brute force to optimal solution.
Tip 1 : Try to keep it short and crisp.
Tip 2 : Always make the entries chronological with the most recent experiences coming first followed by past experiences.
Key Account Manager
149
salaries
| ₹3.2 L/yr - ₹8.6 L/yr |
Dealer Success Manager
149
salaries
| ₹3 L/yr - ₹6.3 L/yr |
Accounts Manager
109
salaries
| ₹2.7 L/yr - ₹6.8 L/yr |
Senior Accounts Manager
70
salaries
| ₹3.9 L/yr - ₹8 L/yr |
Retail Associate
65
salaries
| ₹2.9 L/yr - ₹6 L/yr |
Quikr
eBay
Tokopedia
Amazon