Druva interview experience | Staff Software engineer -Development

Recently I got interviewed with Druva Pune. I’m having 2 years of software engineering experience with a FinTech.  

Round 1 :

Recruiter contacted me on LinkedIn and shared a Test link on Mettl. 

Format of the exam : (Total time : 75 minutes)

Section A- 3 programming questions . Allowed Language (JAVA,Python,C++) , all the questions were of easy-medium level.

Section B- 3 sections containing 5 MCQs in each . These sections included questions on C++, Networking & OS and Algorithms and Data Structures respectively.

Round 2 : (1 Hour)

This was taken by a Senior Software Engineer . 

Q1.  https://www.geeksforgeeks.org/reverse-alternate-k-nodes-in-a-singly-linked-list/ 

       I explained the approach and coded on a google  Doc shared between me and interviewer.

Q2. https://www.geeksforgeeks.org/search-an-element-in-a-sorted-and-pivoted-array/

      I explained the process .Interviewer got satisfied with the approach but time ran out while coding. 

Round 3 : (1 Hour)

This round was taken by Principal Engineer.

1. Questions on Denial of Service (DOS) attack and how to prevent it. Questions on sticky sessions. 

2. Design a rate limiter which only allows n requests from a particular user.  Several approaches were discussed based on IP and user identifier.

3. Design a system which only allows n number of requests to each backend server (in a time frame of K units) and distributes the request . I provided a linkedlist implementation of Queue. With this approach the total number of requests currently processed by a server in last k unit of time can be found out in O(1). (Similar to continuous sum approach in an array)

4. Questions on Sharding and Consistent Hashing- in case of dynamic addition of new servers.

5. https://leetcode.com/problems/reorganize-string/ 

    O(n) approach for the above was expected .For coding a google Doc was shared.

Round 4 : (1 Hour) 

This round was taken by Director of Engineering. (Hiring Manager)

1. Describe a challenging project you have done in your current organisation. 

2. Problem statement: An Api is given which is paginated. (Response will not come at once instead you have to call the api with different page      numbers in query parameter). You have got K number of threads available write a code which calls this api and returns the whole response. The code should use atmost k threads and the use of these threads should be optimum.

  Several race conditions were discussed in this and finally with the help of interviewer I was able to code it. 

3. https://www.geeksforgeeks.org/find-number-of-days-between-two-given-dates/

4. https://www.geeksforgeeks.org/merge-two-binary-trees-node-sum/

Discussion on interests and reason for change.

Round 5: (1/2 hour)

This was more of cultural fit round taken by Director of Product. Discussion on any one project , what are the challenges faced . Discussion from CV. Expectation from Druva etc. 

The interview process took around a total of 2 weeks.  Final verdict selected 🙂 

I would like to thank GeeksForGeeks for providing various interview experiences and questions for preparation .

Write your Interview Experience or mail it to contribute@geeksforgeeks.org

My Personal Notes arrow_drop_up

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.