Oracle | IC2 | Senior Software Engineer | Bangalore | Aug 2023 [Offer]

oracle logo
oracle
· Senior Software Engineer· Bangalore· Offer
September 25, 2023 · 67 reads

Summary

I applied through LinkedIn and received an offer for the Senior Software Engineer (IC2) role at Oracle in Bangalore after successfully navigating multiple technical, debugging, system design, and behavioral interviews in August 2023.

Full Experience

I applied for a Senior Software Engineer (IC2) position at Oracle through LinkedIn and quickly received a callback from a recruiter. We discussed my background, current compensation, and expectations, leading to the scheduling of my interviews.

First Technical Round (1 hour)

This round began with standard introductory questions. Then, I was asked to solve three coding problems:

  1. Roman Numbers to Integer
  2. Convert a number to string, without using inbuilt functions
  3. Traverse a 2D matrix in spiral format

I found the questions pretty easy and came up with solutions quickly. However, explaining my thought process and solutions took a bit longer, as one of the interviewers seemed distracted and required me to repeat explanations. Despite this, the recruiter provided positive feedback and scheduled the next round.

Second Technical Round (1 hour)

To my surprise, I had the same two interviewers from the first round, joined by two shadow interviewers. This was a debugging round where they shared a web page with errors and asked me to find and fix them using browser tools.

  • Bug 1: A list of components was partially missing on the page. I quickly identified that the loop traversing the component collection was faulty, incrementing the iterator twice, which caused components to be skipped. Debugging and explaining this took about 10-12 minutes, again with some difficulty due to one interviewer's behavior, but I was more accustomed to it by then.
  • Bug 2: Clicking a component and performing an action was supposed to trigger an alert, but it wasn't happening. I found that a comparison for a boolean value was being performed, but the variable's value was a string. I initially suggested changing the comparison to match the string format to avoid regression, but the interviewer insisted on changing the variable's type to boolean, so I agreed.

Once again, the recruiter reached out on the same day to inform me that the feedback was positive and mentioned that I was the only candidate to have cleared up to this stage, which was quite motivating.

Third Technical Interview (System Design)

This round focused on system design, where they wanted to discuss overall concepts and my approach to common problems. The 'annoying' interviewer returned with the actual team manager. The manager started by asking vague questions like how I would conduct a Root Cause Analysis (RCA) for customer data problems, how to improve system performance, and what to do if a problem is rare and affects only a few customers. When the other interviewer joined late, he started asking the same questions, but the manager kindly interrupted and asked him to pose different ones.

He then asked me about Authorization and Authentication, including how OAuth and SSO work. I didn't know the exact details but had a rough idea. I asked for permission to guess, but he refused. Afterward, there were a few more questions related to databases and indexing, which I answered satisfactorily.

The recruiter informed me that the feedback was average, but they still wanted to schedule another round with someone from Chile. However, this round was later cancelled, and they proceeded straight to salary discussion.

Behavioral Questions & Salary Discussion

Another call was scheduled with the manager and the other interviewer, where they asked a few behavioral questions:

  • How do I handle huge workloads?
  • Why am I leaving my current position? If I get bored with work within three years, what guarantees I won't get bored with their work and leave soon too?
  • What are my thoughts on staying late or coming in on weekends when there is a specific need?

They then asked me to state my salary expectations, which surprised me as I usually discuss this with recruiters. I provided my number anyway. Following this, they came back with a significantly low offer. I was extremely disappointed, especially after so many rounds and stating my expectations early on. After negotiation with the recruiter, I managed to get it to a somewhat decent amount, though I still consider it a lowball.

Interview Questions (9)

1.

Roman to Integer

Data Structures & Algorithms·Easy

Given a Roman numeral, convert it to an integer. The input is guaranteed to be within the range from 1 to 3999.

2.

Integer to String Conversion

Data Structures & Algorithms·Medium

Implement a function to convert an integer to its string representation without using any built-in functions for direct conversion (e.g., String.valueOf() in Java, toString() in JavaScript/Python).

3.

Spiral Matrix Traversal

Data Structures & Algorithms·Medium

Given an m x n matrix, return all elements of the matrix in spiral order.

4.

Debugging Missing Components in UI Loop

Other·Medium

On a web page, a list of components was being displayed, but some of the components were consistently missing. Using browser debugging tools, identify the root cause of this issue. The problem was that the loop used to traverse the collection of components was faulty, specifically, the iterator was being incremented twice in the code.

5.

Debugging Click Event Boolean Comparison

Other·Medium

On a web page, clicking a specific component and performing an action was intended to trigger an alert, but the alert was not being received. Using browser debugging tools, find the bug. The issue was that a comparison for a boolean value was performed, but the variable's value was a string instead of a boolean.

6.

Authorization, Authentication, OAuth, SSO

System Design·Medium

Discuss the fundamental concepts of Authorization and Authentication. Explain the working principles and differences between them. Furthermore, describe how OAuth (Open Authorization) and Single Sign-On (SSO) mechanisms work, including their use cases and architectural components.

7.

Handling Huge Workloads

Behavioral

How do you approach and manage situations involving huge workloads or high-pressure periods in your professional role?

8.

Motivation for Leaving & Long-term Commitment

Behavioral

Explain your reasons for seeking a new position and leaving your current company. Furthermore, if you have experienced boredom or a desire for change in previous roles within a relatively short period (e.g., 3 years), what assurances can you give that you will remain engaged and committed to this role at our company for the long term?

9.

Flexibility and Weekend Work

Behavioral

What are your thoughts and stance on staying late or coming in on weekends when there is a specific, urgent need or critical project deadline?

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!