Rubrik | G6 | Bangalore | 2025 | Reject

rubrik logo
rubrik
G6Bangalore
April 26, 20253 reads

Summary

I interviewed for a G6 role at Rubrik in Bangalore. The interview process involved two technical questions, one on a custom multi-threaded job scheduler with dependencies and error handling, and another on parallel file copying. I was unfortunately rejected due to average feedback in round 2.

Full Experience

I underwent an interview process with Rubrik for a G6 position in Bangalore. The technical rounds presented challenging problems focusing on concurrent programming and custom system implementations. I ultimately received an average feedback in round 2, leading to my rejection.

Interview Questions (2)

Q1
Thread-Safe Job Scheduler with Dependencies and Error Handling
Data Structures & AlgorithmsHard

There are some tasks which depend on each other. Example: b depends on completion of a, c depends on completion of a and b. There is a function you are provided which you can use to get this information: getDependentTasks(a) -> returns b, getDependentTasks(a,b) -> returns c. Implement a job scheduler with multiple threads such that all parent tasks are completed before child task (i.e., a should complete before b, then b should complete, then c). Initial input to the function is blank which returns 'a' so this is the starting point. Each task has a function called doWork() which you need to run. Keep in mind that if any of the task throws an exception, you have to immediately stop execution of all tasks and return. You are not allowed to use in-built Java libraries. Create blocking queues of your own, thread pools, executors - everything has to be created on your own using locks.

Q2
Parallel File Copy using pread and pwrite
Data Structures & AlgorithmsMedium

You are given 2 functions: pread(buffer, number of characters to be read, file name) and pwrite(buffer, number of characters to write, file name). You have to use these functions to write code which will read from a file and write it to another file. How would you do this parallely using multiple threads.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!