Oracle OCI | SDE 2 | Pleasanton | Jan 2020 [Reject]

oracle logo
oracle
· SDE 2· Pleasanton, California· 5y exp· Rejected
January 10, 2020 · 69 reads

Summary

I interviewed for an SDE 2 role at Oracle OCI in January 2019, which involved a phone screen followed by six onsite rounds, covering coding, system design, and behavioral questions. Despite my efforts, I was ultimately rejected.

Full Experience

My interview journey for the SDE 2 position at Oracle OCI in Pleasanton, California, took place in January 2019. I brought 5 years of experience to the table.

Phone Screen

The process began with an hour-long coding exercise. I was presented with a map detailing direct friends and tasked with creating an API. This API needed to take a person's name and return all levels of their friends. For instance, if given "Bob", the output should clearly delineate Level 1, Level 2, and Level 3 friends based on the provided map structure.

Onsite Interview (6 Rounds)

The onsite portion was comprehensive, spanning six distinct rounds:

  1. Bartender Round (Virtual): This round was with an interviewer from a different team. They asked several network-related questions, queries about hypervisors and Docker, and a few behavioral questions. I also had to solve an easy-level coding problem on a whiteboard.
  2. Lunch Interview: This was a more informal discussion with the hiring manager. We talked about my current role interests, any upcoming interviews I had, and the work culture at OCI. It was primarily behavioral.
  3. System Design: Another round with the hiring manager, focused on system design. I was asked to design a URL shortening system. The discussion also delved into REST methods, HTTP status codes, hashing, and encryption principles.
  4. Coding Round: I was challenged to design a class that supported four operations: set(key, time, value), set(key, value), get(key), and get(key, time). My approach involved using a map of maps, where the nested map was a TreeMap to facilitate sorting based on start times.
  5. Coding Round: The task here was to take a list of strings and return all possible combinations that could form a 4x4 word grid. I attempted a brute-force approach, though I felt the interviewer himself seemed a bit unsure about the problem and offered minimal input.
  6. Experience Discussion: The final round focused on my past work experience, specifically going through Object-Oriented Design (OOD) in previous projects, questions about cloud-native application development, and some database-related topics.

Throughout the interviews, the team emphasized that their tech stack was primarily Java, and relevant experience was mandatory. I was quite surprised, however, that not a single question was asked specifically about Java or my experience with it.

Interview Questions (4)

1.

Friends of Friends API

Data Structures & Algorithms

Create an API which takes in a person's name and returns all levels of friends of this person.

Example:

Map:
  "Bob"    : "Sandra", "Alice", "Eric"
  "Sandra" : "Bob", "Don"
  "Alice"  : "Bob"
  "Eric"   : "Bob"
  "Don"    : "Sandra", "Tim"
  "Tim"    : "Don"

Member Name: "Bob"

Result:

Level 1 friends: Sandra, Alice, Eric
Level 2 friends: Don
Level 3 friends: Tim
2.

URL Shortening System Design

System Design

Design a URL shortening system.

The discussion also involved questions about REST methods, HTTP status codes, hashing, and encryption.

3.

Time-based Key-Value Store

Data Structures & Algorithms

Design a class that supports 4 different operations:

  • set(key, time, value)
  • set(key, value)
  • get(key)
  • get(key, time)
4.

4x4 Word Grid Formation

Data Structures & Algorithms

Given a list of strings, return all possible combinations of strings which would form a 4x4 word grid.

Input: ATOM, ACID, PARK, LACK, MARK, DARK

Example Grid:

A T O M
C     A  
I     R
D A R K
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!