Oracle OCI || IC2 || Verbal offer
Summary
I interviewed for an IC2 role at Oracle OCI, completing five rounds covering technical, system design, and managerial skills. Despite receiving a verbal offer and discussing compensation, the position was unexpectedly put on hold, possibly due to my long notice period.
Full Experience
I recently appeared for an IC2 role at Oracle OCI. With 2.5 years of experience at a product-based MNC, I applied through their career portal and went through a total of five, one-hour rounds: one screening, two technical, and two managerial.
Screening Round: Technical
Two interviewers started with introductions and discussed the projects I had worked on, focusing on schema and API exposures. They then gave me a coding question, which was a variation of Group Anagrams, requiring me to handle any symbols. I presented my solution, which seemed to convince the interviewer.
A week later, I received positive feedback and was scheduled for four more interview rounds. I took 1.5 days off from my current organization for this.
First Round: Technical
This round was with an interviewer who had 10 years of experience. It began with an introduction and deep dive into my projects. He gave me a coding question: Next Greater Element I. I asked if we should discuss it first or if I should just write code, and when he suggested he could ask another question if I knew this one, I truthfully replied I didn't. I first proposed an O(n^2) approach and then refined it to a stack-based approach.
He then asked some general questions:
- How do you handle production issues?
- How do you ensure production issues don't impact clients for a prolonged time?
With time remaining, he asked another coding question: Search a 2D Matrix II. I knew the optimized solution. I started by explaining the O(m*n) approach, then O(n log m), and was about to present the most optimized solution when he asked to move on, given the time. I regret not pushing for a few more minutes, as I was confident in my knowledge, but he seemed convinced. The interview ended early, and I had a chance to ask my questions.
Second Round: Technical
The interviewer was very supportive. We started with introductions, and he mentioned that 30 minutes would be for a coding challenge and the remaining 30 minutes for system design. The coding question was Shortest Path in Binary Matrix. For system design, he asked for an LLD of Cricbuzz, mainly focusing on the schema.
Third Round: Managerial
This round was with a manager. We started with introductions and then a thorough discussion of my projects. She then asked a lot of scenario-based questions:
- Is there any colleague who inspires you?
- Can you describe a significant technical challenge you faced?
- Can you recall a scenario when your boss changed, and how you handled it?
- Have you ever missed a deadline? How did you handle it?
- How do you handle changes in work priorities?
- Why are you switching jobs?
She also gave a coding question, which was a variation of Merge Intervals. I first provided a brute-force solution and then moved to the most optimized approach.
At the end, I asked a question about the stage of Oracle Cloud, to which she seemed slightly taken aback and suggested I could Google it, confirming it was fully fledged with many clients. I realize now I should have phrased my question better.
Fourth Round: Managerial
This round involved introductions and an in-depth grilling of my resume. Again, there were many scenario-based questions. I was asked to write code for merge sort and also to replicate a deadlock using threads.
At the end, I asked for feedback. He mentioned I was good at coding but needed to learn beyond day-to-day work, such as DevOps. He was from a DevOps team, and my lack of extensive DevOps knowledge might have been a factor.
After a long time, this was a comprehensive interview process, and I made a few mistakes. However, completing all rounds, I felt a sense of self-worth and capability.
A week later, I heard positive feedback, and HR discussed salary, location, and other details, stating it would take 10-12 days to release an offer letter after email approval. Unfortunately, I later learned the position was put on hold, possibly due to my 90-day notice period. I will update this post if I hear back.
Interview Questions (16)
Scenario-based question on how I would handle production issues.
Question on strategies to ensure production issues do not impact clients for extended periods.
Design the low-level architecture of a service like Cricbuzz, with a primary focus on database schema design.
Behavioral question asking about a colleague who inspires me.
Behavioral question about a significant technical challenge I faced and how I overcame it.
Behavioral question on how I handled a situation where my boss changed.
Behavioral question on a scenario where I missed a deadline and what I did.
Behavioral question on how I manage changes in work priorities.
Behavioral question asking about my motivations for seeking a new job.
Implement the Merge Sort algorithm.
Write code to demonstrate or replicate a deadlock scenario using multiple threads.
Preparation Tips
Based on my experience, here are some tips:
- Always ensure to ask relevant questions at the end of the interview or general questions about work culture.
- Practice starting with a brute-force solution and then gradually moving towards the optimized solution. Sometimes, we "genius Leetcoders" tend to jump straight to the optimized solution, but a step-by-step approach can be beneficial.
- Maintain confidence throughout the interview process.