Oracle interview experience Real time questions & tips from candidates to crack your interview

SDE - 2

Oracle
upvote
share-icon
4 rounds | 9 Coding problems

Interview preparation journey

expand-icon
Journey
I, Divyansh, went from starting with the basics to getting a job interview with Oracle for the role of SDE-2: I first became interested in computer programming in my sophomore year of college. I was studying electrical engineering at the time, but I found myself drawn to the programming aspects of the coursework. I started learning coding on my own, using online resources like Codecademy and Udemy. At first, I focused on learning the basics of programming languages like Python and Java. I spent a lot of time practicing coding exercises, building small projects, and reading articles and books about software development. As I gained more experience, I started looking for more challenging projects to work on. I participated in coding competitions like Hackerrank and LeetCode, which helped me sharpen my problem-solving skills and learn new algorithms and data structures. After graduating from college, i worked in one service based company for 2 year but i want to switch in product based company so I started applying for software engineering jobs. I got a few interviews, but I quickly realized that I still had a lot to learn. I spent more time practicing coding exercises and refining my resume and cover letter. Eventually, I applied for a position at Oracle as an SDE-2. I spent weeks preparing for the interview, studying the company's technology stack and reviewing common interview questions. When the day of the interview arrived, I felt nervous but confident in my skills.
Application story
After several months of preparing for software engineering job interviews, I started applying to companies. I searched job boards online for job postings matching my skills and interests. One day, I came across an opening for an SDE-2 position at Oracle. I was immediately excited because I knew that Oracle was a top tech company with a reputation for innovation and quality. I carefully read through the job description and requirements and felt confident that I had the skills and experience necessary to apply. I submitted my application online, including my resume and a cover letter that highlighted my programming experience and interest in the company. A few days later, I received an email from Oracle acknowledging my application and thanking me for my interest in the position
Why selected/rejected for the role?
I was selected for the Oracle SDE-2 position. Based on my experience and observations, here are some factors that may have contributed to my success: Relevant Skills and Experience: I had spent several months learning programming languages, practicing coding exercises, and building small projects. This gave me the technical skills and experience that were necessary for the SDE-2 role. Preparation: I spent several weeks preparing for the interview by studying the company's technology stack, reviewing common interview questions, and practicing coding exercises. This helped me feel confident and prepared during the interview process. Professionalism: I was professional and courteous in all of my interactions with Oracle, from my initial application to my onsite interview. This likely helped me make a positive impression on the company and its hiring team.
Preparation
Duration: 12 months
Topics: Data Structures, Pointers, OOPS, System Design, Algorithms, Dynamic Programming, Operating system
Tip
Tip

Tip 1 : Practice at least 250 Questions
Tip 2 : Do at least 2 projects
Tip 3 : Develop problem solving skills

Application process
Where: Campus
Resume Tip
Resume tip

Tip 1 : Have some projects on resume.
Tip 2 : Do not put false things on resume.

Interview rounds

01
Round
Easy
Online Coding Interview
Duration30 minutes
Interview date1 May 2023
Coding problem2

I got a email. The email contained a link to an online assessment that I was asked to complete within a certain time frame.

The assessment was comprised of several coding exercises and multiple-choice questions related to software development and programming languages. I completed the assessment and felt that I had done well, based on my experience and preparation.

1. Theory Question

Which of the following data structures is best suited for implementing a priority queue?

Problem approach

A heap is a binary tree-based data structure in which each node has a priority value and satisfies the heap property, which ensures that the root node has the highest priority. This allows for efficient insertion and removal of elements with the highest priority. Priority queues are commonly used in scheduling and resource allocation systems where jobs or tasks have different priorities.

2. Theory Questions

Which of the following is not a type of join in SQL?

Which of the following algorithms is used to prevent deadlocks in Operating Systems?(Learn)

Problem approach

Index join is not a type of join in SQL. The commonly recognized types of join in SQL are Inner Join, Left Join, Right Join, and Full Join.

Lock, Turn, Mutexes are used to solve deadlock problem in OS.

02
Round
Medium
Online Coding Test
Duration60 minutes
Interview date2 May 2023
Coding problem3

1. Priority CPU Scheduling : 2

Easy
10m average time
90% success
0/40
Asked in companies
OracleQuikrMicrosoft

You are given the arrival times, the burst times and the priority of ‘N’ processes in a CPU. You need to find the order of process scheduling according to Priority Based CPU Scheduling. Along with the order, also find the individual waiting and turnaround time for all the processes in order of their schedule.

Note:
1. The processes are numbered from 1 to 'N'.
2. The process with lowest arrival time will be scheduled first, followed by the next lowest arrival time, and so on.
3. If any two processes have the same arrival time, then you have to run the process based on the priority of the process. The highest priority process will be scheduled first, followed by the next highest priority, and so on.
4. If the two processes have the same priority, then you have to run the process with the lowest process number first.
Try solving now

2. Stack Implementation Using Array

Easy
20m average time
70% success
0/40
Asked in companies
QualcommNatwest GroupOracle

Stack is a data structure that follows the LIFO (Last in First out) principle. Design and implement a stack to implement the following functions:

1. Push(num): Push the given number in the stack if the stack is not full.

2. Pop: Remove and print the top element from the stack if present, else print -1.

3. Top: Print the top element of the stack if present, else print -1.

4. isEmpty: Print 1 if the stack is empty, else print 0.

5. isFull: Print 1 if the stack is full, else print 0.


You have been given ‘m’ operations which you need to perform in the stack. Your task is to implement all the functions of the stack.


Example:
We perform the following operations on an empty stack which has capacity 2:

When operation 1 1 is performed, we insert 1 in the stack.

When operation 1 2  is performed, we insert 2 in the stack. 

When operation 2 is performed, we remove the top element from the stack and print 2.

When operation 3 is performed, we print the top element of the stack, i.e., 3.

When operation 4 is performed, we print 0 because the stack is not empty.

When operation 5 is performed, we print 0 because the stack is size 1, which is not equal to its capacity.
Problem approach

In this program, we define a Stack class that encapsulates the stack data structure. The stack is implemented as an array of integers, with a maximum size of 10 elements.

The Stack class provides three public member functions: push(), pop(), and peek(). The push() function adds an element to the top of the stack, the pop() function removes the top element from the stack, and the peek() function returns the top element without removing it.

In the main() function, we create a Stack object and add three elements to it using the push() function. We then print the top element of the stack using the peek() function, and remove it from the stack using the pop() function. We repeat this process until the stack is empty.

This program demonstrates how a stack data structure can be implemented using an array in C++.

Try solving now

3. Binary Search

Easy
15m average time
85% success
0/40
Asked in companies
OracleMedia.netAdobe

You are given an integer array 'A' of size 'N', sorted in non-decreasing order. You are also given an integer 'target'. Your task is to write a function to search for 'target' in the array 'A'. If it exists, return its index in 0-based indexing. If 'target' is not present in the array 'A', return -1.


Note:
You must write an algorithm whose time complexity is O(LogN)


Problem approach

In this program, we define the binarySearch() function that implements the binary search algorithm. The function takes four arguments: the array to be searched (arr), the lower and upper bounds of the search range (low and high), and the key value to be searched for (key).

The binary search algorithm works by repeatedly dividing the search range in half until the element is found or the range is exhausted. In each iteration, the function calculates the middle index of the range (mid) and compares the element at that index to the key value. If the element is equal to the key, the function returns the index. If the element is less than the key, the function continues the search in the upper half of the range. If the element is greater than the key, the function continues the search in the lower half of the range.

In the main() function, we define an example array and a key value to be searched for. We then call the binarySearch() function with the appropriate arguments, and print the index of the element if it is found, or an error message if it is not found.

This program demonstrates how the binary search algorithm can be implemented in C++.

Try solving now
03
Round
Easy
Online Coding Test
Duration60 minutes
Interview date4 May 2023
Coding problem2

1. DBMS

SQL query in MySQL that demonstrates how to join two tables based on a common column:

Problem approach

SELECT orders.order_id, customers.name, customers.email, orders.order_date
FROM orders
INNER JOIN customers
ON orders.customer_id = customers.customer_id;

2. Maximum Subarray Sum

Moderate
35m average time
81% success
0/80
Asked in companies
HCL TechnologiesInformaticaSamsung

You are given an array 'arr' of length 'n', consisting of integers.


A subarray is a contiguous segment of an array. In other words, a subarray can be formed by removing 0 or more integers from the beginning and 0 or more integers from the end of an array.


Find the sum of the subarray (including empty subarray) having maximum sum among all subarrays.


The sum of an empty subarray is 0.


Example :
Input: 'arr' = [1, 2, 7, -4, 3, 2, -10, 9, 1]

Output: 11

Explanation: The subarray yielding the maximum sum is [1, 2, 7, -4, 3, 2].
Problem approach

def max_subarray_sum(arr):
max_sum = float('-inf')
cur_sum = 0

for num in arr:
cur_sum += num
max_sum = max(max_sum, cur_sum)
cur_sum = max(cur_sum, 0)

return max_sum


This function uses a modified Kadane's algorithm to find the maximum sum of any contiguous subarray. The algorithm works by iterating through the array and keeping track of the current sum of the subarray. If the current sum becomes negative, the algorithm resets the current sum to zero, since any subarray that includes the negative number will have a smaller sum. At each iteration, the algorithm also updates the maximum sum seen so far.

The time complexity of this algorithm is O(n), where n is the length of the input array, since the algorithm only iterates through the array once.

Try solving now
04
Round
Easy
HR Round
Duration20 minutes
Interview date5 May 2023
Coding problem2

1. Basic HR Questions

What motivated you to pursue a career in software development, and what led you to specialize in your particular area of expertise?

Problem approach

I have always been interested in technology and problem-solving, which led me to pursue a career in software development. I specialize in [particular area of expertise] because it aligns with my interests and skills, and I enjoy the challenges and opportunities for innovation that it offers.

2. Basic HR Question

Could you describe a particularly challenging project that you've worked on in the past, and how you overcame any obstacles that arose during the development process? Additionally, what did you learn from that experience that you think has helped you grow as a software developer?

Problem approach

One project that comes to mind is in that. We faced several obstacles during the development process, including [briefly describe obstacles]. To overcome these challenges, we [briefly describe solution]. This experience taught me the importance of clear communication, collaboration, and adaptability in software development, and it helped me develop my problem-solving skills and ability to work under pressure.

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

What is recursion?

Choose another skill to practice
Similar interview experiences
company logo
SDE - 1
3 rounds | 2 problems
Interviewed by Oracle
10595 views
0 comments
0 upvotes
company logo
SDE - 1
3 rounds | 5 problems
Interviewed by Oracle
0 views
0 comments
0 upvotes
company logo
Application Developer
3 rounds | 4 problems
Interviewed by Oracle
1787 views
0 comments
0 upvotes
company logo
SDE - 1
3 rounds | 6 problems
Interviewed by Oracle
2947 views
0 comments
0 upvotes
Companies with similar interview experiences
company logo
SDE - 2
5 rounds | 12 problems
Interviewed by Walmart
29570 views
8 comments
0 upvotes
company logo
SDE - 2
3 rounds | 5 problems
Interviewed by Amazon
6678 views
1 comments
0 upvotes
company logo
SDE - 2
6 rounds | 8 problems
Interviewed by Amazon
5176 views
0 comments
0 upvotes