oci logo

Oci Interviews

3 experiences55 reads20 questions33% success rate
Interview - OCI | IC3 | USA
oci logo
Oci
SDE IIUSA
August 28, 202516 reads

Summary

I recently completed a challenging four-round interview process for an IC3 software engineering role at OCI in the USA, which thoroughly assessed my technical coding, system design, and behavioral skills.

Full Experience

I recently went through an intensive interview process for an IC3 role at OCI in the USA. The entire experience was structured across four distinct rounds, each designed to evaluate a different aspect of my software engineering capabilities. It felt quite comprehensive, covering everything from core algorithms to complex system architecture.

Round 1: Technical Coding (HackerRank)

This round was a HackerRank coding challenge focused on Greedy Algorithms and Heap data structures. The specific problem involved minimizing the total cost of an array of prices using a given number of tokens. It was a good test of my algorithmic problem-solving and optimization skills.

Round 2: Behavioral Interview

The second round was purely behavioral. It consisted of scenario-based questions, similar to Amazon's leadership principles interviews. The focus was on my past work experience, projects I've handled, and the decision-making processes I employ. I was asked to discuss situations where I demonstrated leadership principles.

Round 3: System Design

This round was a deep dive into system design. The core problem was to design a Distributed Rate Limiter. The discussion revolved around ensuring scalability, understanding distributed systems concepts, evaluating various trade-offs, and architectural thinking. We covered topics like load balancing, data consistency, and performance optimization.

Round 4: Advanced Coding

The final round was an advanced coding challenge. I was tasked with implementing an LFU (Least Frequently Used) Cache. This problem thoroughly tested my knowledge of data structures, cache replacement algorithms, and my ability to achieve optimal time and space complexity, particularly in balancing frequency tracking with efficient operations.

Key Observations

  • Every single round, not just the dedicated behavioral one, included questions related to leadership principles, mirroring Amazon's interview style.
  • The technical depth was significant, ranging from intricate algorithmic optimization to high-level system architecture, effectively testing both my coding prowess and my system-level thinking.
  • The difficulty felt progressive, with each round building upon different technical skills: algorithms, then behavior, then systems, and finally advanced data structures.

Overall, the process was very well-structured and comprehensive, effectively evaluating both my technical expertise and my potential for leadership within a software engineering context. Each round clearly had a specific purpose in assessing different facets of my competency.

Interview Questions (3)

Q1
Minimize Total Cost with Tokens
Data Structures & Algorithms

Given an array of prices and M tokens, use all tokens to reduce costs and return the minimum total cost.

Q2
Design Distributed Rate Limiter
System Design

Design a Distributed Rate Limiter. The discussion focused on scalability, distributed systems concepts, trade-offs, and architectural thinking, covering areas such as load balancing, data consistency, and performance optimization.

Q3
Implement LFU Cache
Data Structures & Algorithms

Implement LFU (Least Frequently Used) Cache. This problem required demonstrating strong understanding of data structures, cache replacement algorithms, and aiming for optimal time and space complexity while balancing frequency tracking with efficient operations.

Preparation Tips

To prepare for interviews like these, I focused on several key areas:

  • Extensively practicing greedy algorithms and operations involving heaps.
  • Thoroughly reviewing various system design patterns, especially for distributed systems.
  • Implementing classic cache replacement algorithms from scratch, such as LRU and LFU, to solidify my understanding.
  • Preparing my behavioral stories using the STAR format to effectively address leadership principle questions.
  • Practicing articulating my technical decisions and explaining trade-offs clearly and concisely.
OCI loop interview | Rejected
oci logo
Oci
Senior MTSIndia
July 25, 20259 reads

Summary

I interviewed for a Senior Member of Technical Staff position at OCI India, which included eliminator and multiple loop rounds. Despite clearing some technical challenges, I was ultimately rejected.

Full Experience

Hey community, I recently gave interview for Senior MTS position with OCI India. Got negative feedback, but still here are the questions that were asked.

Eliminator Round:- Check if words are anagrams. EASY. LRU Cache. MEDIUM Couple of behavioural questions. Some questions on concurrency.

Got call 2 days later that they will take my loop interview. My interviews were scheduled for 2 days. Daily 2 interview

Loop Interview 1: Group Anagrams from a list of strings. MEDIUM Maximum Subarray Print odd even using two threads concurrency problem. Some behavioural questions

Loop Interview 2: This was taken by someone from US. Rain water trapping problem. HARD Generate valid parenthesis (backtracking problem). MEDIUM Some behavioural questions. This was where I froze completely and could not communicate properly at all.

Loop Interview 3: This was with Hiring manager from India. He asked lots of technical questions from my resume. He also gave lots of system design situational based questions. I was asked to design CONFLUENCE.

Loop Interview 4: This was my bar tender/bar raiser round. Plenty of behavioural questions were asked.

Result: REJECTED.

I hope it helps the community in their prep. I applied through their web page. Good luck guys.

Thank you

Interview Questions (8)

Q1
Check if Words are Anagrams
Data Structures & AlgorithmsEasy

Given two words, determine if they are anagrams of each other.

Q2
LRU Cache
Data Structures & AlgorithmsMedium

Design and implement an LRU (Least Recently Used) cache.

Q3
Group Anagrams
Data Structures & AlgorithmsMedium

Given an array of strings, group anagrams together.

Q4
Maximum Subarray
Data Structures & Algorithms

Find the contiguous subarray within an array (containing at least one number) which has the largest sum.

Q5
Print Odd Even Using Two Threads
Data Structures & Algorithms

Write a program that prints odd and even numbers in sequence using two separate threads.

Q6
Trapping Rain Water
Data Structures & AlgorithmsHard

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.

Q7
Generate Valid Parentheses
Data Structures & AlgorithmsMedium

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.

Q8
Design Confluence
System Design

Design a system similar to Atlassian Confluence.

OCI | Bengaluru | SMTS | May 2024 | Offer
oci logo
Oci
MTS IIBengaluruOffer
June 18, 202430 reads

Summary

I successfully interviewed for the SMTS role at OCI in Bengaluru during May 2024 and received an offer. The interview process consisted of a phone screen and five onsite rounds, covering data structures and algorithms, low-level design, high-level design, and various behavioral questions.

Full Experience

Phone Screen

In this round, the interviewer presented me with a couple of medium-level LeetCode questions. I was able to provide optimal and workable code for both problems:

  • A Dynamic Programming problem similar to Wildcard Matching.
  • A question on finding the Least Common Ancestor.

I successfully cleared this round and was invited for four onsite rounds.

LLD with SMTS

This round focused on Low-Level Design for a management system. We discussed various aspects, including database schema choices, API endpoints, and class diagrams. I also encountered behavioral questions, particularly how I would handle conflicts within a team. Additionally, there was a deep dive into one of my past projects.

HM Round

The hiring manager round involved a deep dive into two of my past projects, where I was asked how I could have improved them. This round also included several behavioral questions.

Problem Solving Round with LMTS

This round featured a couple of hard-level LeetCode problems. I provided optimal approaches and wrote workable code for both:

There were also some behavioral questions in this round.

BarRaiser with LMTS

This round was entirely focused on behavioral questions, with a particular emphasis on my background and interests.

Overall, all my initial rounds went well. I appreciated that every interviewer was polite and had their camera on, which isn't always common in my experience.

About seven days later, the recruiter called to inform me about an additional round, which was scheduled within two days.

Round with CMTS

In this final round, I was asked to solve a couple of coding problems:

  • Removing even-valued nodes from a given linked list.
  • A string compressor problem.

Following the coding questions, I had a High-Level Design discussion about designing a TinyURL service with additional features. We extensively discussed various components and their alternatives.

The debrief happened three days later, and I was fortunate to receive an offer!

Interview Questions (9)

Q1
Wildcard Matching
Data Structures & AlgorithmsMedium

I was asked a Dynamic Programming problem related to implementing wildcard pattern matching with '?' and '*' characters.

Q2
Least Common Ancestor
Data Structures & AlgorithmsMedium

I was given a problem to find the least common ancestor of two nodes in a binary tree.

Q3
Low-Level Design for a Management System
System Design

I had to design a management system, covering aspects like database schema choice, API endpoints, and class diagrams.

Q4
Handling Team Conflict
Behavioral

I was asked behavioral questions, specifically how I handle conflicts within a team.

Q5
Text Justification
Data Structures & AlgorithmsHard

I was given the LeetCode problem Text Justification, which involves formatting text such that each line has a specified maximum width and is fully justified.

Q6
Trapping Rain Water
Data Structures & AlgorithmsHard

I was given the LeetCode problem Trapping Rain Water, where I needed to compute how much water can be trapped after raining given an elevation map.

Q7
Remove Even Valued Node from Linked List
Data Structures & Algorithms

I was asked to write code to remove all nodes that have an even value from a given singly linked list.

Q8
String Compressor
Data Structures & Algorithms

I was given a problem to implement a string compressor, which typically involves replacing repeating characters with the character followed by its count (e.g., 'aaabbc' -> 'a3b2c').

Q9
High-Level Design for TinyURL with Add-on Features
System Design

I had an HLD round focused on designing a TinyURL service with additional features, discussing every aspect and its alternatives.

Have a Oci Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Oci.