Oracle On-Campus Interview Experience (Server Technology)

There were a total of 5 rounds (Online written test + 3 Technical rounds + 1 HR round)

Round-1 (Online Test)

The test was held on Oracle Test Platform and was video proctored. It had several timed sections in which questions had to be answered in order and we couldn’t go back to the previously attempted question. 

The test had a variety of questions: 

1. Aptitude- Apart from the regular quantitative aptitude topics, they also asked questions based on Flowcharts, Attention to detail, Logical Reasoning)



2. English (Synonyms, Comprehension-based, Jumbled sentences of a paragraph)

3. Coding MCQ- Output based questions from C and some DSA Concepts(Easy)- Primarily on Trees, Sorting, Searching, Graphs

4. CS Subjects- OS, DBMS, OOP Questions

Note: Since the test was video proctored, the platform was by default switching on the back camera on my device instead of the front camera. This led to blocking of questions time and again but the timer didn’t stop. Before appearing for the test, kindly make sure that your device doesn’t have a back camera or in case it does and such a scenario occurs, reload the test window a few times whenever the warning blocks the questions so that you can see and attempt the questions somehow before the warning appears again.(This is what I had to do again and again!)

Round-2 (Technical Interview)

1. Difference between declaration and definition of a variable in C.

2. Difference between malloc() and calloc(). Which is better?

3. Types of constructors in java? Explain them



4. Difference between Null and Dangling pointer. Does it mean that dangling pointer points to no address?

5.  You have mentioned Java as your primary language for coding. Rate yourself on a scale of 5 in C language.

6. Ok then. write the code for bubble sort in C. Why is the inner loop not running till n? How can you trust the algorithm that after n-1 passes of bubble sort, your array will get sorted?

7. What do you mean by enumeration constants. Give an example.

8. Write the code for calculating the electricity bill if number of units consumed are given as input. And the slabs look like this:

1 to 100 units=Rs10/unit

101 to 300 units= Rs 15/unit

>300 units= Rs 20/unit

Make sure that these are slabs. And you have to make sure that for the first 100 units consumed you should charge Rs.10 /unit, for the next 199 units, Rs 15/unit and so on.

9. Do you know the concept of fast and slow pointers? (Answered Yes) 
Write the code for detecting a loop in Linked List .



Round-3 (Technical Interview)

Tell me about yourself.

Coding Question:

Suppose an array of objects looks like this:

{

  {

     id: 1

     children: 2,3,4

   }

  {

    id: 3

    children: 5

   }

  {

      id: 5

     children: 8,9

   }

}

The output should look like this:

{

   id: 1

     {

        {   id: 2

            { }   }

        { id : 3

           {

                    id  :  5

                        {   id : 8  { } }

                        {    id  : 9  { } }

           }  }



         {  id : 4

            { }   }

   }

I asked some clarifying questions about in what format is the input given and how are we expecting the output? Is it a string with brackets or an output Object?
I started by defining array of input objects and output object and then I structured the input in the form of an n-ary tree using a hashmap that had child to parent mappings. The node with no parents had -1 as its corresponding parent value. Then I did the level order traversal of the n-ary tree and took a queue for that and moulded it into the output object.

The interviewer was giving hints in between and warning me whenever I lost track. 
The interviewer was satisfied with my approach and code.

2. What are AJAX calls?

3. Some question related to ng bind in Angular as in one of my projects I had worked on Angular.

4. Asked details of an open source contribution that I had mentioned in my resume.

5. Discussion on my summer internship project.

Round 4- (Technical Interview)



Tell me about yourself.

1. What is divide and conquer in programming?

2. What do you know in Operating Systems?

3. Which scheduling algorithm do you find is the most prone to making mistakes while solving and justify why?  ( I mentioned LRTF and explained with the help of an example) The interviewer said why not SRTF? ( Again explained with the help of example )

4. What is busy waiting? How does it affect the performance of the system and mention one alternative that we can use instead of busy waiting

5. Write the pseudo code for merge sort and show how is it working on an array.

6. In DBMS, what are aggregate functions? Do they consider null values? 

7. What is a deadlock? Under what conditions does it occur?

8. Describe any algorithm based on Greedy approach.

Round-5 (HR Round)



1. How was your day? 

2. According to you, how well did your interviews go?

3. Are you aware of your role at Oracle?

4. Rate your performance on a scale of 1-10.

5. Any Questions for me?

We will share the results with your college soon. All the best!

VERDICT: SELECTED 🙂

Tip: Stay very calm and positive throughout. Even if questions seem tough, just start approaching and keep telling the interviewer about what you are thinking. 

For theoretical questions, use examples to explain the concept well if it can’t be put together in a formal way at that instant.

All the best!


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 :
Practice Tags :


10


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