Skip to content
Related Articles

Related Articles

Save Article
Improve Article
Save Article
Like Article

Druva Interview Experience (1 Year Experienced)

  • Difficulty Level : Hard
  • Last Updated : 14 Sep, 2018

I was interviewed for Software Developer profile at Druva, Pune in August 2018.

Round 1: Online Test

Hey geek! It's time to become a success story instead of reading them. Check out our most renowned DSA Self Paced Course, now at a student-friendly price and become industry ready. And if you are looking for a more complete interview preparation resource, check out Complete Interview Preparation Course that will prepare you for the SDE role of your dreams!

Feeling prepared enough for your interview? Test your skills with our Test Series that will help you prepare for top companies like Amazon, Microsoft, TCS, Wipro, Google and many more!

  • MCQs related to File System, Unix, Computer Networks
  • Debugging section to debug and correct the code
  • Coding section with one question to be done in C++

Round 2: Telephonic Interview



Round 3: Telephonic Interview

Round 4: F2F Technical Interview
After telephonic interview rounds, I was called at their Pune office for the further interview process.

  • Tell me about yourself
  • Discussion on the current project in the current organisation
  • What are RESTful APIs and its principles?
  • Difference between GET and POST
  • What are different HTTP response codes?
  • Find the number of days between two given dates
  • Find sum of nodes at each level of a binary tree
  • Suppose there is a stream of emails which we are fetching from a mail server. We need to do some processing on these emails and print the output in the same order in which we received the emails.
    If we fetch emails in the order M1, M2, M3, M4, our output should be in the same order, that is, P1, P2, P3, P4. Here P1 refers to the processed output of M1.. and so on.
    Design this system using multithreading.

Round 5: F2F Technical Interview with Hiring Manager

  • Why are you looking for a change?
  • Write an expression in terms of f(n) for the following recursive function:




    void fun(int x)
    {
        int i, b = 0;
        for (i = 1; i <= x; i++) {
            b += i + fun(i - 1);
        }
        return b;
    }
  • Create a library function for the below functionality:
    Let there be a string s = “geeksforgeeks”, s2 = “geeksforgeeks”
    Let the library function be str_tokenize(s, token)
    Let token = “ee”
    Now when we call str_tokenize(s, token) first time, it should return “g” (g eeksforgeeks)
    For the second time, it should return “ksforg” (g ee ksforg eeks)
    For the third time, it should return “ks” (g ee ksforg ee ks)
    Whenever we call this method again on string s it should return null. However, if we call this method on string s2, that is, str_tokenize(s2, token), this should return “g” as we had not used string s2 earlier.
    Also, there should not be any changes made to the original string which is being passed to the function.
    – Example:
    string s1=”geeksforgeeks”, s2=”geeksforgeeks”;
    string token=”ee”;
    cout<<str_tokenize(s1, token); //prints “ee”
    cout<<str_tokenize(s1, token); //prints “ksforg”
    cout<<str_tokenize(s2, token); //prints “ee”
    cout<<str_tokenize(s1, token); //prints “ks”
    cout<<str_tokenize(s1, token); //prints null
    cout<<s1; //prints “geeksforgeeks”
    cout<<s2; //prints “geeksforgeeks”
  • Provide a multithreaded solution for the above problem

Round 6: F2F HR Round

  • Why are you looking for a change?
  • General HR questions



My Personal Notes arrow_drop_up
Recommended Articles
Page :