Oracle Interview Experience (On-Campus) 2021
The job opening was for the role of Member Of Technical Staff under The Server Technologies business unit. A lot of people had applied from our institute, after resume shortlisting around 1500+ students were eligible for writing the online test.
Round 1 (Online Test): This online test was taken on Oracle’s Pro aptitude test platform and needed prior installation and setup into our system. (recommended to set up the software in much advance to avoid last moment rush and chaos). The test had four sections described below:
1. Data Structures and Algorithms:
This section is comprised of some multiple choice questions from data structures and algorithms. The difficulty of the questions was basic to intermediate. 50% of the questions were direct and easily solvable. Keeping the fundamentals strong for DSA you would easily go through this section. The questions covered mostly all topics from data structures and algorithms.
The section is comprised of questions based on vocabulary skills, logical reasoning, mathematical skills, and pattern solving. The difficulty level of the questions was somewhat medium. Some questions were easily solvable whereas some needed on-paper calculations. Overall the questions were balanced. Around 80% of questions were reasoning or mathematical based and only 20% were from verbal aptitude. More emphasis was given to quantitative aptitude.
3. CS Fundamentals:
This section had the highest weightage among all sections as it had the most number of questions. Almost all the questions were theory-based from various CS core subjects, such as OOPS, Computer Architecture, Computer Networks, Operating Systems, and Computer Networks. Good in-depth knowledge of those subjects will make it very easy to answer all questions in this section.
4. Coding Questions:
This section is comprised of two coding questions. One coding question was very basic and one was a question based on stacks. The first question was a simple question based on some scenarios.
The second question was to find the next greater element in an array. We needed the code to compile in O(n) time complexity to pass all test cases successfully.
Question link: https://www.geeksforgeeks.org/next-greater-element/
Round 2 (Technical Interview 1): Around 53 students out of 1500+ were shortlisted for interviews after the online test. The interview process started with a warm introduction to the interviewer. He was a senior member of the oracle team who had worked 15 years in Oracle and seemed to be quite friendly and light-hearted. Firstly he asked me to give my introduction. He then asked me about my technical interests, academic background, and the tech stack on which I worked in.
I had mentioned 5 projects in my resume, he asked me to explain one of them. I explained the whole project including its idea implementation scope, technologies used, and deployment. At last, he asked me if I could show a live demonstration of the working of the project. Luckily I had my projects stored on my laptop, so I presented them instantly. It is recommended to everyone to keep your projects handy.
He asked a lot of basic questions from DSA, OOPS, and DBMS some of which are listed below:
- Difference between overriding and overloading.
- Which data structure is used for function calls and recursion. (Stack)
- Types of loops and their uses.
- What are transactions and how to implement them in SQL.
- Use of volatile keyword in C++
- Given an array of n numbers, find any number which is not the greatest in the array in O(1) time. (Just compare the first two terms and return the smaller term)
- Explain LIFO and FIFO with examples in real life.
- Given a scenario which Join would you use and why.
- 2 basic SQL queries, which could be done using group by and having clauses.
The interview took around 45 mins after which we were told to wait for further updates.
Round 3 (Technical Interview 2): On the same day after the first technical interview, around 30 students out of the 53 had our second round of technical interviews. The interview started with a coding question. The interviewer took my introduction and then introduced himself. He started by giving me a coding question directly and gave me a particular time frame to code it(like finishing the code by 12:15, which was approximately 20 minutes). The question was one of the basics of a singly linked list.
Given a linked list, which was sorted but had duplicate values in it, starting from the head node we have to remove all the duplicate nodes of the linked list. We were not allowed to change the values in the list.
Next, the interviewer asked many questions from basic CS subjects, some of which are given below:-
- What are the necessary conditions for a deadlock to occur in an operating system.
- Name all OSI Layers
- Name some methods of concurrency control in DBMS
- If I declare a static variable in c, where is it stored?
- Explain Kadane’s algorithm.
- Given a linked list, which algorithm is best to sort it?
- Name the six steps involved in SDLC.
- What are the four pillars of Object Oriented Programing Paradigm
- Differentiate between HTTP and HTTPS
- Give 4 real-time examples where stacks are used in the technical aspect.
My answer to the last questions was:
- In web browsers to store history.
- In WhatsApp, Instagram, and chat apps to show the latest message at the top.
- For undo function in Microsoft Office, Notepad, etc.
- Storing recently used apps in mobile phones.
The interview process took approximately 45 mins.
Round 4 (Technical Interview 3): 18 students from the previous round were selected for this round of technical interviews. The interviewer was a senior member at Oracle and seemed to have a lot of experience. The interview began as usual with my introduction upon which the interviewer asked about my projects and told me to explain about any one of the projects of my choice. As it was mentioned in my resume that my specialization was in cyber security, so the interviewer asked me certain basic of cyber security. Then he asked me which area I had worked upon in cyber security, and as I had worked upon cryptography for more than a year in my undergraduate, I told him that I was good going with cryptography. We had a nice session of about 20-25 mins in which the interviewer asked me a lot of questions purely based on cryptography, which included basics, different encryption methods, hashing, authentication, signatures, key exchange. He asked me nearly every basic concept of cryptography. The interviewer asked me to explain everything as you are explaining to a person with absolutely no technical knowledge.
I had mentioned MongoDB in my resume as one of my technical skills as well, so the interviewer asked the following questions on MongoDB:
- How is MongoDB different from traditional SQL databases
- What is the concept of NoSQL databases
- Why is mongo being proffered over conventional databases
- Explain MongoDB atlas.
The interview was mostly based on my interests and electives mentioned in my resume rather than on CS subjects. At last 8 students from our campus got selected for the role, and I was one of them.
- Be strong with basic CS subjects. If you don’t have time complete DSA, DBMS, and OOPS first as these are the most frequently asked subjects.
- Practice and be consistent with hands-on coding and not just theory.
- Also practice time-bound coding, like taking up a problem and trying to solve it in 10-15 mins but with the correct approach.
- If asked, which is our subject of interest or favorite subject, answer wisely as the interviewer may ask you in-depth questions of that subject.
- Do not bluff up answers, if you don’t know any answer, just say so, do not try to build up things.
- Be honest with what you answer, if you are not able to answer just tell the interviewer, DO NOT COOK UP ANSWERS.
- Keep yourself available on the day of interviews as all three interviews happen on a single day, the whole process can take up to 5-6 hours.
- Do not be disappointed if you are rejected, yeah it feels like everything has ended but just come back strong and give a little more every time.
All the best!!