Oracle | MTS (Server Technology) | Bangalore/Hyderabad | August 2022 | Offer ✅✅

oracle logo
oracle
· MTS (Server Technology)· Bangalore/Hyderabad· 1y exp· Offer
October 5, 2022 · 56 reads

Summary

I interviewed for the MTS (Server Technology) role at Oracle in August 2022 as a new grad with one year of experience and received an offer. The process included an online assessment, followed by three technical interviews covering data structures, algorithms, project discussions, system design, and OOPs.

Full Experience

My interview journey for the MTS (Server Technology) role at Oracle in August 2022 began with an Online Assessment. It was 90 minutes long, which was more than sufficient. The OA had four sections: one easy-medium coding problem, one REST API problem (GET requests, data fetching, calculations), one SQL problem (joins, group by, aggregate functions), and 6-8 MCQs on data structures and aptitude.

Next, I had Technical Interview 1, which was 45 minutes and DSA-oriented. The interviewer started by making me comfortable, asking about my day. After introductions, I was given a Hackerrank link. My first coding problem was to determine if any permutation of a given string could be a palindrome. I discussed a brute-force approach, then moved to an efficient hashmap-based solution, which I solved and dry-ran. This led to questions about hashmaps: why unordered_map, differences between map and unordered_map, internal implementation, chaining, and linear probing. The second problem was to delete a node from a singly linked list given a pointer to it, and whether the last node could be deleted. My third problem was to find the starting node of a cycle in a singly linked list. I solved all three problems and tested them on the editor.

Technical Interview 2, lasting 1 hour 10 minutes, was a mix of project discussion, DSA, and behavioral questions. It felt somewhat unstructured. The interviewer asked about my previous interview and my performance. I then introduced myself and talked about my interesting academic and corporate experiences, particularly my work at my previous organization, managing challenges with new technology (Mendix), and projects where I was part of the first team using it. I was asked to compare academic vs. corporate life, my motivation for pursuing a master's, and my favorite subjects. Given my project's use of sockets, I was asked about socket programming and alternatives for real-time communication. He then probed into my use of DBMS, algorithms, and OOPs in my projects. We discussed my choice of Firebase (NoSQL), comparing it with relational databases. Questions on Firebase authentication, JWT tokens, and alternative authentication mechanisms like session authentication followed. I also discussed a debt-simplification algorithm I implemented, which used a heap. I explained min-heap and max-heap, including push, pop, and heapify operations, and started implementing max-heap quickly before being interrupted. Finally, I was given a linked list problem: insert a node into a sorted singly linked list at its correct position.

My final round was Technical Interview 3, lasting 50 minutes, focusing on database design and OOPs concepts. I had expected an HR round, but this was a mix of behavioral and technical questions from a very senior Director of Engineering. He initially checked my attentiveness by asking about previous interviewers and questions. I could only recall the first interviewer's name. We then delved into 'Why Oracle?', comparing it with my previous work experience and contrasting it with other companies. A Hackerrank link was shared for a complex SQL problem: retrieving 1st, 2nd, and 3rd place finishers per category from a university competition, along with student details. I discussed table relationships, foreign/primary keys, and 3NF, then drafted a SELECT statement. I initially missed the LIMIT keyword due to exhaustion. Lastly, he asked about use case, class, sequence, and component diagrams, and their importance, which I explained with examples from my M.Tech studies. I asked him about his journey at Oracle and his various roles.

I was informed no further interviews were scheduled and left the meeting, assuming rejection as there was no HR round. However, after four hours, the results were out, and I was among the five M.Tech candidates selected, receiving an offer.

Interview Questions (15)

1.

Maximize Distinct Elements in Array A after K Swaps

Data Structures & Algorithms·Easy-Medium

Consider two arrays a and b where each consists of n integers. In one operation: Select two indices i and j (0 <= i,j < n). Swap integers a[i] and b[j]. This operation can be performed at most k times. Find the maximum number of distinct elements that can be achieved in array a after at most k operations.

2.

REST API GET Request Data Processing

Other

Problems are only related to GET requests. We do not need to design any REST APIs; the task is to just call the GET request, fetch the data, perform some calculations and return the results.

3.

SQL Joins, Group By, and Aggregate Functions

Other

The problem was related to joins and group by clause with some aggregate functions.

4.

Permutation of String is Palindrome

Data Structures & Algorithms

You are given a string ‘s’, return true or false if there exists any permutation of the given string ‘s’ which is palindrome.

5.

Delete Node from Singly Linked List

Data Structures & Algorithms

Given a singly linked list and a pointer of any node, delete that node from the singly linked list. Also, is it possible to delete the last node from the singly linked list?

6.

Find Starting Node of Cycle in Singly Linked List

Data Structures & Algorithms

Find the starting node of the cycle in a singly linked list.

7.

Introduction and Academic/Corporate Achievements

Behavioral

Tell me about yourself and what are the interesting things you have done in your academics and corporate life?

8.

Academic vs. Corporate Life and Master's Motivation

Behavioral

How do you compare academic life vs corporate life? and why are you pursuing masters? What are the subjects you like most and why?

9.

Socket Programming and Real-time Communication Alternatives

System Design

You have used sockets in your project, are you aware of socket programming? Explain what sockets are and discuss alternatives available for real-time communication.

10.

Project Deep Dive: DBMS, Algorithms, OOPs, NoSQL, Authentication

System Design

Discuss how you used concepts like DBMS, algorithms, and OOPs in your projects, providing examples. Specifically, explain your choice of Firebase (NoSQL) as a backend, compare relational vs. NoSQL databases, and elaborate on Firebase authentication, how JWT tokens work, and alternative authentication approaches like session-based.

11.

Debt Simplification Algorithm and Max-Heap Implementation

Data Structures & Algorithms

Discuss multiple approaches for a debt-simplification algorithm, focusing on the most optimal one. This involved using a heap data structure. Explain min-heap and max-heap, including push, pop, and heapify operations on a max-heap. Implement the max-heap quickly.

12.

Insert Node in Sorted Singly Linked List

Data Structures & Algorithms

Given a sorted singly linked list, insert a node at its correct position.

13.

Motivation for Oracle and Career Choices

Behavioral

Why do you want to work at Oracle? You can join any of the many companies visiting your campus. Justify your choice.

14.

University Competition Ranking Query

Other

A university conducted a competition where students from different colleges participated. The categories were Drawing, Singing, Debate, Science Fair and SpellBee. Students participated in one or more categories and were scored out of 100. Write a query that returns the 1st, 2nd, and 3rd place finishers in each category in that order. The columns to show are category, studentid, name, collegename, and score order by category (ascending) and collegename (ascending).

15.

UML Diagrams: Use Case, Class, Sequence, Component

Other

Explain use case, class, sequence, and component diagrams. Discuss their importance one by one.

Preparation Tips

My success was primarily due to consistency; I practiced over 800 DSA problems on LeetCode, BinarySearch, and Codeforces over a year, though the interview questions themselves were relatively easy. I ensured my resume was diversified and justifiable. I also focused on having strong core subject knowledge, particularly its practical application. I made sure to research the latest online assessment processes for companies; for Oracle, the OA had recently changed to include coding, API, SQL, and MCQs, instead of just MCQs, which I was aware of.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!