Oracle | Application Developer | Mar 2025
Summary
I interviewed for a Senior Application Developer position at Oracle in March 2025. My interview process included three technical rounds covering data structures, algorithms, system design, and project discussions. Although I received positive feedback from the interviewers, I was ultimately not selected for the role.
Full Experience
I recently had an on-site interview for a Senior Application Developer role at Oracle. The process consisted of three distinct rounds, each focusing on different aspects of my technical and problem-solving skills.
Round 1: Data Structures & Algorithms
The first round was primarily focused on core data structures and algorithms. I was presented with several coding challenges:- One problem was a classic dynamic programming problem, Kadane's Algorithm, asking for the maximum subarray sum.
- Another involved finding the longest sequence of ones in a binary string.
- I also had to determine the number of possible paths from the top-left to the bottom-right corner of an
n*mgrid, restricted to moving only right or down. - There was a two-pointer question related to finding the minimum subarray size, but I can't recall the exact details of that one.
- Additionally, the interviewer asked several in-depth questions about my past projects and drilled into my resume.
Round 2: Problem Solving & System Design
The second round delved into more complex problem-solving and system design.- I was challenged with a scheduling question, specifically devising an intuition for scheduling classes for a school. This involved considering teacher availability, a fixed number of classes per day, and a total number of days, along with a variation if an additional section was added.
- A classic water jug puzzle was also posed: how to fill exactly 4 liters using 3-liter and 5-liter jugs.
- The round also included a system design question, where I needed to outline how I would design a multiplayer Snakes and Ladders game.
Round 3: Algorithms & Problem Solving
The final round continued with algorithmic challenges.- One problem was described as a 'flight scheduling problem', though I don't remember the specifics.
- The other was the well-known Merging Intervals problem, where I needed to combine overlapping time intervals.
Overall, I felt I performed well and received positive feedback from my interviewers. However, despite this, I was ultimately not selected for the position.
Interview Questions (7)
Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.
Find the length of the longest contiguous subsegment of ones in a binary string (string of zeros and ones).
Given a grid of size n*m, find the number of unique paths from the top-left corner (0,0) to the bottom-right corner (n-1, m-1). You can only move right or down.
Given teacher availability (e.g., 4 4 3 3 3 3 representing available slots for subjects ma so sc en l1 l2), with 4 classes allowed per day and a total of 5 days, design a schedule for each day. Also, consider a variation with an added section and how that would impact the scheduling.
You have a 3-liter jug, a 5-liter jug, and an empty jug. The goal is to measure exactly 4 liters of water using these jugs.
Design a multiplayer Snakes and Ladders game. Consider aspects like game state, player turns, dice rolls, special squares (snakes/ladders), and multiplayer synchronization.
Given an array of intervals where intervals[i] = [starti, endi], merge all overlapping intervals, and return an array of the non-overlapping intervals that cover all the intervals in the input.