Tip 1 : Good hold on DSA, you need to solve medium-hard level leetcode ques in 40 mins.
Tip 2 : Practice building a good high-level design like db schema, and endpoints and address other challenges like fault tolerance
Tip 3 : Prepared for cultural fit with behavioral aspects of your work
Tip 1: Good experience in High-Level Design
Tip 2: Good experience in Low-Level Design
I have been given a week's time to complete the online assessment. It consists of 2 coding problems of medium level.
If the string is ‘AZBCDCBA’, the answer will be YES as we can delete the character ‘Z’ and the remaining string is a palindrome.
After converting all uppercase letters into lowercase letters and removing all non-alphanumeric characters, I iterate through the string and am able to check if it's a valid palindrome or not.
You are given ‘WORDS’ = [“cat”, “mat”, “tac”]. Then the answer will be [(0, 2), (2, 0)}, because “cat” + “tac” = “cattac” which is a palindrome and “tac” + “cat” = “taccat” which is also a palindrome.
I've solved using a trie.
It's a 45 min round. Started with 2 minutes introduction and I have 40 minutes of time to solve a problem. Basically, the problem consists of 2 parts and I need to solve both of them. And is on a hacker-rank platform, so the expectation is it will pass all the test cases given by the interviewer.
The width of each bar is the same and is equal to 1.
Input: ‘n’ = 6, ‘arr’ = [3, 0, 0, 2, 0, 4].
Output: 10
Explanation: Refer to the image for better comprehension:
You don't need to print anything. It has already been taken care of. Just implement the given function.
Step 1: I explained the approach to the interviewer and solved the first part by simply traversing the input array and based on the element value, added the +, and print them. The interviewer asked me to run the test cases given.
Step: 2 After the first part, the interviewer comes up with a follow-up or the second part of the problem.
Step: 3 I explained to him, we can solve the problem by checking three cases i.e. left part / right part or at the current index if the water doesn't flow. He looks satisfied and then I coded it.
It's a 45 min round. Started with 2 minutes introduction and I have 40 minutes of time to solve a problem. Basically, only 1 problem and I need to solve both of them. And is on a hacker-rank platform, so the expectation is it will pass all the test cases given by the interviewer.
A Sudoku solution must satisfy all the following conditions-
1. Each of the digits 1-9 must occur exactly once in each row.
2. Each of the digits 1-9 must occur exactly once in each column.
3. Each of the digits 1-9 must occur exactly once in each of the 9, 3x3 sub-grids of the grid.
You can also assume that there will be only one sudoku solution for the given matrix.
Design Airbnb wallet.
Features -
Users can see their wallet balance
Users can see transaction history.
-User can transfer money between wallet and his bank account
APIs -
vendor_transfer_id = create_transfer(account_number, routing_number, transfer_type, amount)
get_transfer_status(vendor_transfer_id)
Explained the design, but he was more interested in what all services will be there, scalability, caching, reducing latency, Atomic transactions, etc.
Tip 1: Started with the problem clarification and then back-of-the-envelope estimation
Tip 2: Then I started with database schema and the entities and all the services.
Tip 3: Then, in the last step I talked about the failover scenarios and how my solution supports scalability in the future.
Discussion regarding my current organization project, from the business requirements to development, challenges, timelines estimation, impact, my contribution, etc. Basically, they are checking if I know end to end and each and every minor piece of info about the project. Also, few questions regarding the scalability and the scope of any improvement in the current design.
Discussion regarding my current organisation project, from business requirement to development, challenges, timelines estimation, impact, my contribution, etc. Basically, they are checking if I know end to end and each and every minor info about the project. Also, few questions regarding the scalability and the scope of any improvement in the current design.
Tip 1: Need to know the end to end of the project you want to explain
Tip 2: Also ready with the question related to the challenges faced and non technical questions like team size or deadline miss or any pivot in the middle.
Cultural Fit
It is a cultural fit round, where multiple question were asked related to behavior aspects. Some of them are :
1. Why Airbnb?
2. What impact will you bring after the joining?
3. What is the hardest problem you've solved and what are the challenges?
4. How to resolve conflict with your manager?
Tip 1: Practice STAR method to give the answer
Tip 2: Read Airbnb core values
It is a cultural fit round
It is a cultural fit round where multiple questions were asked related to behavior aspects. Some of them are :
1. Why are you leaving your current company?
2. What are your short-term and long-term goal?
3. what features do you want to add to Airbnb App?
4. How to handle deadline miss of any project?
Tip 1: Prior to interview, jot down all such question and be ready with your experiences.
Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
Which array operation has O(n) worst-case time complexity?