Skip to content
Related Articles

Related Articles

Oracle Interview Experience | Set 61 (On-Campus)
  • Difficulty Level : Hard
  • Last Updated : 04 Sep, 2017

Round 1: Online Aptitude + Technical test

This was approximately a 2 hour test with the following sections:

  1. Aptitude
  2. Communication skills
  3. Data Structure (MCQ output questions)
  4. General Computer Science (OS/ DBMS/ C++)

53 students were shortlisted after this test.


Round 2: Online coding test (1 hour)

It consisted of the following two coding questions. This round was non-eliminative in nature, though the approaches we used in this test were discussed during the interviews that were conducted the next day.

  1. Given an array of integers, find the length of the shortest possible subsequence of integers that are unordered. A set of integers are said to be unordered if they are neither decreasing nor increasing. [Hint: start checking if it is increasing/decreasing and return 0, else check if an unordered triplet exists. If it does, return 3, else 0]
  2. Given n cities: x1, x2,…… xn: each associated with T[i] (treasure) and C[i] (color)
  1. You can choose to visit a city or skip it. Only moving in the forward direction is allowed.
  2. When you visit a city you receive the following amount:
  1. A*T[i]        if the color of visited city is the same as color of previously visited city
  2. B*T[i]        if this is the first city visited or if the color of the visited city is different from the color of the previously visited city

We have to compute the maximum profit possible, values of A and B are given. The values of T[i], A and B can be negative while C[i] ranges from 1 to n


INTERVIEWS ( 3 Technical rounds and 1 HR)


Technical Round 1: (30- 40 minutes)


There were 8 panels taking the interviews, with 2 candidates allotted to each panel for the first round who were to be interviewed together. Some panels gave different questions to both the students or separately interviewed the candidates, while some (like mine) interviewed both the candidates together. The questions asked were fairly simple and a slight discussion about my coding round was done in this.

  1. A brief discussion about the coding languages that I am comfortable with, along with the language that I would choose to code in during the interview.
  2. Write the pseudocode (later the proper syntactical code) for calculating the factorial of a number. I explained the corner and base cases along with the recursion stack for my code.
  3. He wrote a mathematical expression and I had to check the validity of the expression, which was basically parenthesis matching. I used stacks to do this and had to write the entire code for the same.
  4. Considering OOPS concepts, which would you prefer- “IS-A or HAS-A” relationship. I asked him if there was a specific use case he was looking for, to which he said no, so I answered accordingly.
  5. I was asked to explain the concept of hashing and why it is used.

At the end, he asked if I had any questions for him. To this, I would suggest that you should be prepared with some generic questions to ask in case your panel asks the same. It’s always better to engage in a slight conversation, but don’t be abrasive.

40 people were selected after this round.


Technical Round 2: (50- 60 minutes)


  1. Tell me about yourself, wherein I had to give a brief of my technical skills. This eventually led to a detailed discussion of my technical projects. He asked me to explain (along with an elaborate block diagram and flowchart) my last internship project.
  2. Given is a printer installed in a university, accessible to all the students for use. I had to explain how to handle all the random requests and choose which requests to execute depending upon the number of pages left in the printer. It was a basic test of how I approached the question and the data structures I employed. I was asked to code the entire thing.
  3. In continuation to the previous question, he said that instead of 1, I was supposed to do the same for 3 printers. I gave him different approaches to handle this. He did not ask me to code this addition.
  4. I was given a puzzle after this. Given some birds and trees- if 2 birds were placed on each tree, one tree is left; else if one bird sat on each tree, one bird is left. Find the number of birds and trees. By the time he told me he would like an equation and it’s okay if I don’t have the numbers, I wrote the answer. He still made me write the equation.
  5. Given a string S which had many characters, special characters but no parenthesis in the first few places followed by a parenthesis and many nested parenthesis within it followed by other parenthesis, I had to retrieve the data within the first block of parenthesis

S = ……….(…(…(..)(…))….)(…) The string to be printed is between the bold braces. We first discussed my approach and then I wrote the code for the same.

24 people were selected after this round.

Technical Round 3: (~ 1.4 hours)

He started with an initial conversation of how my day had been so far, followed by a brief of my technical projects. We had a detailed discussion about one of my projects wherein after explaining him the project, he asked me to give him specific details on everything I worked upon. We had a general discussion about the way technology has been emerging and how Oracle handles this change.

  1. Given hundreds of nodes, a tree is randomly constructed. He asked me to change this tree into something else (I don’t remember the language he used) but it was basically converting it into a BST. I took a sample tree and explained him my approach. It took me a little while to get to a plausible approach, but he seemed satisfied with my approach and asked me to tell him the number of iterations to be used for it.
  2. I had to design an ER diagram for a bus-booking system where we had a detailed discussion of the various entities I suggested, the relationships between them. I had to change the model about 3 times according to the use cases he kept on adding. He was happy with the way I approached the use cases and designed the system

We had a casual chat about his journey through Oracle and the kind of projects he works upon. At the end, I asked him for a feedback which he was happy to provide me with.

14 people were sent for the last round.

HR Round: (10 minutes)

She asked how my day had been so far and asked me if I was tired after the entire process.

  1. Tell me about yourself.
  2. Discussed my academic performance over the years.
  3. Why Oracle?
  4. Family background followed by location preferences.
  5. We discussed what expectations I had from Oracle.

All 14 were given offers after the HR round.

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

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Write your Interview Experience or mail it to

My Personal Notes arrow_drop_up
Recommended Articles
Page :