Oracle OCI | Interview Experience | Rejected
Summary
I interviewed for a Senior Member of Technical Staff (SMTS) role at Oracle OCI across multiple rounds, which included coding, system design, and behavioral questions. Although I performed well in most rounds, a challenging system design question in the final round led to my rejection for SMTS, though I was offered a Member of Technical Staff (MTS) role, which I declined.
Full Experience
I recently interviewed for the SMTS (Senior Member of Technical Staff) position at Oracle OCI. My current experience stands at 4.2 years at Informatica, a product-based company, with a compensation of around 32-34LPA CTC.
Interview Process
Screening Round
This round involved a coding question similar to 'Merge K sorted lists'. I was expected to provide a dry run and working code. We also discussed my projects, Apache Spark vs. Flink, and the concept of statelessness in REST APIs. I successfully cleared this round.
Loop Round 1 (Taken by SMTS)
In this coding round, I was asked to convert a prefix expression to a postfix expression (e.g., +ab to ab+). The second coding question was about designing an LRU Cache, including discussions on data structure choices, achieving constant-time operations, and making it thread-safe. I performed well and received a 'Strong Hire' rating.
Loop Round 2 (Bartender Round - Taken by PMTS)
This round focused heavily on my projects, with an in-depth discussion about the choices I made during development. I also faced questions about managing difficult stakeholders and several other behavioral scenarios. I received a 'Strong Hire' rating for this round as well.
Loop Round 3 (Taken by Hiring Manager)
This round was centered on High-Level Design (HLD). The problem involved designing a Concurrent Job Orchestrator that supports highly concurrent job executions, priority, license handling, and autoscalability. There were also some tricky behavioral questions. I was rated 'Hire/Strong Hire'.
Loop Round 4 (Taken by PMTS)
The final loop round began with an in-depth discussion about my projects, focusing specifically on the design decisions and reasoning behind using Apache Spark. The remaining 30 minutes were dedicated to a system design question:
Content Management System: A large multinational food company wanted a system to display in-store menu items for each of their locations. The system needed central management, the ability to show scheduled promotions, allow different prices per menu item at each location, and support breakfast, lunch, and dinner options.
I got really nervous during this design question and struggled to complete a comprehensive design within the 20-minute timeframe. This round did not go well, and I received a 'No Hire' rating.
Outcome
The recruiter eventually reached out. Due to my performance in the last round, the team could not offer me the SMTS position. Instead, they offered an MTS role, which I ultimately rejected.
Interview Questions (10)
A coding question similar to merging K sorted lists. Dry run and working code were expected.
Discussion about my projects, including a comparison between Apache Spark and Flink.
Conceptual question about statelessness in REST APIs.
Given a Prefix expression (e.g., +ab), convert it to a Postfix expression (ab+). Dry run and working code were expected.
Design an LRU Cache. Discussions involved data structure choices, achieving constant-time operations, and how to make the cache thread-safe (including suitable thread-safe data structures).
Detailed discussion about my projects and the rationale behind all choices made during development.
A behavioral question on how to manage difficult stakeholders, along with several other behavioral scenarios.
High-Level Design (HLD) for a Concurrent Job Orchestrator. The system needed to support highly concurrent job executions, prioritize tasks, handle licensing, and ensure autoscalability.
In-depth discussion about my projects, focusing specifically on the design decisions and reasonings related to Apache Spark, as my project included it.
Design a Content Management System (CMS) for a large multinational food company. The system must display in-store menu items for each location, be managed centrally, support scheduled promotions, allow different pricing for menu items at each location, and offer breakfast, lunch, and dinner options.