Sharing my recent interview experience with Rubrik
➡️ 𝗢𝗻𝗹𝗶𝗻𝗲 𝗔𝘀𝘀𝗲𝘀𝘀𝗺𝗲𝗻𝘁
- Duration: 75 minutes
- It consists of four coding questions. The difficulty level of all the questions was hard (Codeforces 1700+ rated). I was able to solve two questions completely.
I received a call from HR saying that I had cleared the Online Assessment, and they scheduled my interviews. Rubrik focuses a lot on multithreading and concurrency concepts, so I was asked to prepare for these topics.
➡️ 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗥𝗼𝘂𝗻𝗱 𝟭:
- Duration: 60 minutes
- This was a coding round with the expectation to write the complete working code.
- I was asked to implement three functions in the given class. Using multiple data structures, I successfully implemented two of the three required functions. I also explained my approach for the third function, though I ran out of time to complete the code.
- Additionally, I was asked how we can improve the performance of the code in a multithreaded environment.
➡️ 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗥𝗼𝘂𝗻𝗱 𝟮:
- Duration: 60 minutes
- This was a debugging round. The expectation was to understand the code, explain it to the interviewer, identify bugs, and suggest optimizations for multithreaded scenarios.
- The code was related to a banking application where multiple threads execute different functions parallelly. I explained to the interviewer the various functions used in the code and found some bugs. I explained the potential problems that could occur when the code is executed in a multithreaded environment and suggested using locks and concurrent data structures to address them. I recommended a read-write lock and a concurrent hash map for performance optimization.
- In the end, the interviewer asked me about my current project on which I was working.
𝗥𝗲𝘀𝘂𝗹𝘁: I received the rejection mail after the second round of interviews.
While I didn't receive an offer, the interview experience was unique and challenging. I learned about concurrency concepts and how they are applied in real-world scenarios.