Rubrik | SDE2 | Bangalore | Feb 2022 | Offer
Anonymous User
5022

YOE: 3 .6 years
Current Org: Fintech Bank

I could hardly see any interview experience for Rubrik while I was preparing. Hence, sharing one with all the details.
I applied through a referral and the recruiter called me to understand whether I have worked with multithreading systems as my first two rounds would be based on them.

Round 1(MultiThreading Design):
Exactly this question:https://leetcode.com/problems/web-crawler-multithreaded/
I use Java, so I gave a simple ThreadPool solution, but the interviewer asked me to improve it further. So, I used CompletableFuture and he finally agreed.

After Round1, the recruiter scheduled 3 more rounds in the coming week.

Round 2(MultiThreading Design):
I have a single Threaded client which calls the following interface:

class WorkerInterface{
	public void submitWork();// Accepts a Task and returns immediately
	public void blockUntilComplete(); //Upon Invocation the thread should be blocked until all submitted tasks are finished
}

I was allowed to modify the signatures to add necesssary params.

Round 3(System Design):
Design a system to transfer a very large Binary file from One system to another.
Extend the solution to synchronize any updates in the file.

Round 4(DSA):

  1. Design the following Class to return the Minimum absolute difference between any two numbers of a list
class MinimumAbsoluteDifference{
	
	public void addInList(int num);
	public int getMinimumAbsoluteDifference();

}
  1. Return minimum absolute diffference of last K inserted elements in the above list

After these rounds the recruiter informed me that the panel had doubts over the System design so they would setup another round for System Design along with Hiring manager round.

Round 5(System Design):
Design a distributed system to return a unique key identifier
The keys need not be persisted, the system should ensure it returns a new unique key everytime.

Round 6(Hiring Manager round):
Behavioral Discussion

  • Most difficult task taken
  • My daily routine and questions on Agile Method since I follow it in my current team
  • How do I estimate difficulty of a task ? (Basically Story points of my JIRA ticket while grooming)
Comments (4)