# Oracle software engineer interview leetcode

## Round 1 : Coder Pad & Zoom

Interviewer had a look at my resume and asked about my current project and technology stack that I am familiar with. After that she asked me to solve a coding problem.

Question 1 :

Given an array of Integers which is the level order traversal of a binary tree, And asked me to find out whether it is a binary search tree or not.

Examples :

Input : [8,5,11,null,null,10,12,7,null]
Output : False

Input : [8,5,13,null,null,10,16,9,14]
Output : False

Input : [8,5,13,null,null,10,16,9,11]
Output : True

Before I start coding, she was interested in the approach. I took some time and came up with an approach and she was satisfied with approach and asked me to code. Tested my code on some test cases by making sure every test case got passed and she moved to next question.

Question 2 :

Given a string containing Integers. Find the number of ways in which we can decode the string into upper case English alphabets. Assume 'A' stands for 1 and 'B' stands for 2 …..'Z' stands for 26.

Examples :

Input : "226"
Output : 3
Possible combinations : BZ(2, 26), VF(22, 6), BBF(2,2,6)

Input : "100"
Output : 0

Input : "205"
Output : 1
Possible Combinations : TE

I have implemented using recursion and dynamic programming (to avoid re-computing same sub-problems). She tested the code with some test cases and edge cases as well and asked me the complexity of the program if I haven't used dynamic programming. I answered it as O(2^n). She said that this was the last question in this round and wished me best of luck for the second round which will start in 15 mins.

Interviewer asked about my current project and tech stack that I am using. Then he asked some question on core Java which are as follows

• Why we use gateway's in Microservices
• Significance of volatile keyword

After me answering these questions, he gave me some coding problems which are as follows

Question 1 :

Given an array write a program to detect duplicates.

Examples :

Input : [1,2,37,56, 2]
Output : False

Input : [1,2,37,56, 87]
Output : True

Suggested multiple approaches and coded it by using a hash set after which he tested the code with some test cases and moved to second question

Question 2 :

Assume there are 100, 500, 1000 rupee denominations available in an ATM in limited number. Write a program to dispense minimum number of notes for each transaction and you are allowed to dispense maximum of 40 notes per transaction.

Examples :

Input : [[100, 2], [500, 3], [1000, 4]], 4000
Output : 4

Input : [[100, 2], [500, 3], [1000, 5]], 10000
Output : "cannot dispense"

After completing the coding part he tested the code with some test cases and promoted me to third round which will start in another 10 mins.

Interviewer started asking about my current project, the reason why I am looking for a Job change, and why oracle. After me answering these questions, he started asking about some core Java questions as described below

• Significance of volatile keyword
• Difference between comparator and comparable
• Difference between StringBuffer and StringBuilder, And asked why Java started using StringBuilder from JDK 1.5 instead of StringBuffer
• Significance of static variables
• Significance of Final class, final variables.
• Significance of Synchronized keyword

After these he gave me some coding questions as below

Question 1 :

Write a function which should take swagger file as an input and print all the endpoints with parameters

Example :

Input : org.json.JSONObject swagger
Output :
"/v1/postFunction"
["body", "token", "object"]
"/v1/getFunction"
["parameter", "token"]
"/v1/putFunction"
["body", "token", "object"]

For those of you unfamiliar with "Swagger file". Have a look at it here I have tried this but couldn't code it as there were some exceptions, interviewer observed that I am struggling for this and asked me to stop. We moved to next question

Question 2 :

Write a function which should take large string as an input and prints top k frequent characters. Note : 'A' and 'a' are considered different and there may be special characters like '@' and '!' etc. in the string provided as input.

Example :

Input : "[email protected]@\$", k=3
Output :
Character is e count is 2
Character is @ count is 2
Character is \$ count is 2

Used HashMap to store character and its frequency, comparator to sort in descending order and printed first k entries after the sort. Round 3 ended at 8:00 PM in the evening, where Round 1 had started at around 2:00 PM. Interviewer said "I think you are exhausted Go and take some rest. We will evaluate your profile and come back to you".

After 2 days I have received a call for 4th round.

As usual, Interviewer went through my resume and asked about my current project and technology stack that I am familiar with. Asked my current CTC, expected CTC, why do you want to change and why Oracle? After me answering all these question he asked me to code a real business use case, which is as follows

Question 1 :

There is a manufacturer who manufactures bikes, cars, washing machines, AC's etc. Bikes contain Engine, Gas Tank, Seat, Hand clutch, Brake Rod, Oil tank, Foot Rest, Starter Pedal, Rear Wheel, Exhaust pipes, Brake cable, Headlight, speedometer, Horn, Exhaust Pipe, Mirrors, License plate, Tail Light and each of the above part is an complex structure For e.g. Engine contains screws, nuts, oil feed pipe, Inlet pipe, oil pump, cylinder head, exhaust post, cylinder head, cooling fin, piston etc.. Same goes with cars, washing machine, AC's etc..

By the time he explained all the machines from bikes to AC's and all the parts and sub parts and sub sub parts..., I am going mad and gave a smile. After which he stopped explaining these parts and sub parts stuff And asked me to write a program which takes two components as input and return how many components of second argument are required to make first component. I know by the time you read this you are going crazy, Let me give you an example to explain what I need to code exactly.

Example :

Input : Bike, Wheels
Output : 2
2 wheels are required in the process of manufacturing the Bike

Input : Bike, Nuts
Output : 500
500 nuts are required in the process of manufacturing the Bike

Input : Nuts, Bike
Output : 0
As no Bikes are required in the process of manufacturing the Nut.

Note : Your code should be very generic. So that if manufacturer manufactures a new product ten years down the line let's say cooler, he should not come back to you for any modifications in your function.

To be honest, I am blank for the first 20 mins and then suddenly an Idea sparked and I started implementing it using trees. I was not sure on how to represent the data in a generic way. First he asked me about the Data Structure on how I am representing the data. Once I have shown him my Component class(See Below) he seems to be convinced and asked me to Code the logic. Once I am done with my coding he gave some test cases and asked to check what my program returns. Attaching a raw template of the code below

Puzzle :

Given two container's of 5 and 3L and tap with infinite supply of water. How do you measure 4L of water?

After me answering that puzzle he asked whether I had any questions for him or not, I asked him to share something about the role, team that I will be joining If I am selected and also asked him to share one of his most memorable Aha moments in Oracle.

Overall It was a good experience, Rounds 1, 3, 4 are challenging for me which may vary from person to person. Several Out of the box questions were asked in Round 3(Swagger) & Round 4 (manufacturing).

Sours: https://leetcode.com/discuss/interview-experience/1117095/oracle-interview-experience

Update: Got invite for onsite, scheduled next month.

1. Applied through Linkedin for a specific team in OCI.
2. Recruiter reached out next day and had chat about my background and work experience.
3. Then scheduled a information call with Senior Director/Manager of the team.
4. Had a very deep discussion about my current work and challanges that i faced recently.
5. Next, scheduled a 1hr phone screening with an Engineer.
6. Telephonic Round : need to solve a problem on coderpad.
7. Question -> https://leetcode.com/problems/top-k-frequent-words/
8. Started with a wrong approach, explained it and interviewer asked to code.
9. no pointers/feedback is given by interviewer regarding my approach.
10. I reliazed my mistake in the halfway through and started again, then came up with a solution using hash map & priority queue.
11. completed the coding, and tried to "run" solution on codepad.
12. failed with complie errors. fixed them still some class exception.
13. interviewer wrapped out as no time is left.

Expecting a stright rejection, no updated as of yet.

Overall experience: Recruiter & Senior Manager are friendly and professional.

After interview immediately came to leetcode and submitted same code, got same class exception and fixed it up and submitted it successfully.

Felt like a little help/feedback on my intial approach from interviewer might have helped and saved a lot of time.

Sours: https://leetcode.com/discuss/interview-question/437532/interview-experience-software-engineer-oracle-cloud-infrasucture-oci

This was an internal transfer, I used to work for the pre-sales team in oracle and I wanted to move to the development team of OCI.
Job role - Software Engineer [OCI]
So I started my prep on leetcode, did about 3 months of solid preparation

Round 1:

Round 2:

• Find 1st index of element in a sorted array: https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/
input - [0,0,0,1,1,2,3,4,5,6], 1
output - 3
• Burn the binary tree starting from the target node
• Bunch of questions on OCI

Round 3:

Round 4:

• Full round based on OCI questions:

2. What is a compute?
3. How to use load balancer?
5. Basic questions on Docker.

This round was specially for me as my previous role was a solutions architect. They were purely testing my skills on the previous role I performed at Oracle.

Round 5:
Manegerial + Behavioural (Bar Raiser Round)

1. Questions on previous projects
2. How to sell your product/ get people to test your innovations
3. Problems you faced while suggesting ideas
4. Scenario where your idea was good and implemented in the given product
5. Overall contribution to team and how it benefits the customer

Finally, I got the job and have been internally trasferred.
Huge shoutout to all the support I got here on leetcode.

Sours: https://leetcode.com/discuss/interview-question/532922/Oracle-or-OCI-or-On-Site-Accept

Selected for the profile: Application Engineer

Written Round:

The written round was conducted on oracle’s platform and the duration was 122 minutes precisely.

It consisted of mcq’s on 4 major areas – Software aptitude, English, coding skills, technical skills (like

OS, DBMS, OOAD,CN). The 4 sections were further subdivided into 4-5 smaller sections containing 7-

8 questions each and each subsection had a time limit of around 8-10 minutes. There was only fwd

scrolling ( so once you skipped a question, you would have to traverse till the end and then loop

back). Also once marked, you cannot change your answer for the question. There was nothing

Around 65 students were shortlisted for each of the 2 profiles (server tech being the other profile)

out of 355 students.

F2F Interview 1 (Technical)(45 min):

Due to large number of candidates shortlisted for interviews, each interviewer was handling 2-3

candidates simultaneously . He directly fired different coding questions on us without wasting even a

second. I was given to implement next_permutation() function of c++ and the other student was

After this round I was told to wait outside. Another interviewer was present there and he quickly

asked me 2 more coding questions http://www.geeksforgeeks.org/a-product-array-puzzle/ and the

other question was - given a paragraph find which alphabet doesn’t occur in it. The key to this round

was to give simple, quick and optimal solution wrt time and space. A normal solution led to direct

exit from this round without any deliberations.

F2F Interview 2 (Technical) (2 hr):

The same interviewer took me in for the next round. In this round he was even more strict and

direct. He first asked me about the manhole puzzle, I started giving him the solutions that i knew

but he refused to agree to any of them, finally after 7-8 possible solutions he changed the question

saying that all solutions were wrong. Then he told me to design a database that could calculate and

predict using queries the finishing date of a project assigned to me. (given to me was list of jobs

involved in the project ,their dependencies and time taken to complete each job ). Again he started

refuting all my solutions and indirectly stressed that I better give the correct solution or exit !!! Then

finally after 1.5 hrs he agreed to my solution. He revealed that he was satisfied with all my solutions

from the start. (so basically it was kind of a stress interview and he wanted to see how many

solutions can I come up with).

F2F Interview 3 (Managerial) (75 min):

After the second interview I was called in for the managerial round that was taken by the senior

most Interviewer of the panel. He was very friendly and helpful and started a general discussion

about me, my hometown, family etc. Then he moved on to my resume and went through it line by

line , cross-questioning me at every stage about my school, achievements, projects etc in detail.

me Why Oracle ? and why this profile? There were some questions from the PPT as well !!! Then he

gave me a design question in which I had to make screen shots of an app for Library management ,

covering all aspects and details. I also had to make the back end tables in a normalized manner along

with the functional dependencies. I continued for about 45-50 minutes and he was satisfied by my

solution. In the end he asked if I had any questions and I asked 2-3 questions. He then recommended

me for HR round.

F2F Interview 4 (HR) (20-25 min):

The HR lady was neither friendly nor strict. She started by asking about my background, my family,

hobbies etc. Then she asked Why oracle? She also aked about my location preference and the

reason behind it. This was followed by a character test where she enquired about my strength and

weakness.I was again asked some questions from the PPT !!! In the end she asked if I had any

questions for her and I as ked 3-4 questions.

So, that was it. After 5-6 hrs of unending wait I got the good news...

Sours: https://leetcode.com/discuss/interview-experience/133713/oracle-software-engineer

## Software engineer leetcode oracle interview

The first round is recuiter will give a call and then a technical phone round is scheduled

technical Phone interview for 45 min
This exact question
https://www.techiedelight.com/find-maximum-length-sub-array-having-given-sum/

After the above phone round after 10 days instead of Onsite interview in boston (The interview team from seattle was initially scheduled to come to Boston) I had a zoom video interview which has 4 rounds

Round1: Technical coding

Design a stack with operations push(), pop(), getMiddle() and deleteMiddle()

Used double linked list and the interviewer was happy as I need not loop through n elements when trying to getMiddle() or deleteMidddle() and pop() operations

Round 2: Technical coding
This exact question
https://leetcode.com/problems/find-all-anagrams-in-a-string/

Didn't do well on this one

Round 3: Managerial round with few tech details regarding what I worked on before, my projects etc more depth wise rather than breadth wise and told me more about OCI (Oracle Cloud Infrastructure)

Round 4 : Design round
Design API rate limiter
similar to this
https://medium.com/@saisandeepmopuri/system-design-rate-limiter-and-data-modelling-9304b0d18250

Sours: https://leetcode.com/discuss/interview-experience/541426/oraclecloudinfrastructure-oci-software-engineer-march-2020-reject
How to use LeetCode effectively

Background:
I applied in September 2019. This is a 2 year rotational program for new grads. Year 1, they place you in teams according to the classes you have taken and technologies you have experience with, year 2, you choose your own teams.

First pre-screen interview:
Feb 28- The recruiter confirmed what kind of technical classes I have taken, why I'm interested in the company, my work status eligibility, the project I'm working on at my current internship. I guess based on this she was going to (or not) push me to the next round (she did). At the end of the call, we scheduled a phone interview for the following week, and discussed an onsite interview for the week after if I made it through the next round.

Phone Interview:
March 6- My interviewer was super nice, asked me why I wanted to work for the company. I went on about how I value diversity and tried to tie in some of their core values into my answer. She also asked a few other behavioral questions and then onto the technical which I was able to complete and walked her through some test cases at the end. No discussion about time/space complexity. A few questions about the pro/cons about static usage.
https://leetcode.com/problems/longest-palindromic-substring/

(Virtual) Onsite Interview- 45 mins each
March 13- They couldn't fly me in for the interview (COVID) so I think they made all their onsite interviews virtual via Zoom.
Round 1-
This was with a young SE
Some basic behavioral questions and 1 technical
https://leetcode.com/problems/number-of-islands/
This but tweaked so that you return the max # in the largest island. Discussed space and time compexity.
Round 2-
This round was with a program manager that asked me what I knew about their comany and their products. This whole round consisted of numerous behavioral questions. She also wanted me to walk her through a project where I had bugs or issues and how I went about fixing those issues, she wanted all the technical details (I was not prepared for this, it has been a while since I worked on that project)
Round 3-
This round was with an awesome tech lead that wasn't looking for a solution to his technical question, but wanted to see my thought process. I told him how I would approach it and he would correct me if I was wrong and walked me into the right direction but didn't just hand me the answer. He continued to 'quiz' me as we went and we came to a solution.
Question-
Geeks for Geeks - Expression Tree
We solved it recursively.

Preparation
Before beginning preparation for this, I had already completed about 65 leetcode problems (still pretty new to this). Although I have leetcode premium (10/10 recommended), I focused on top interview questions category for these interviews. I also had a whole script (word doc) ready for some of the general questions you get asked about your introduction, experience, and why this comany, it helped me get in a rythm and calm my nerves.

Tip
It's super important to know your technical material but just as important to be able to hold a conversation! Every single one of my rounds had behavioral questions to see if I would be a good culture fit and someone they would want to be around/work with. Research the company's core values, mission statement, and products. I am an average coder so I think my conversational skills definitely helped push me through.

Overall a super fast process and I am SHOOK that I got selected, their package is also pretty solid for a new grad position.

### Similar news:

Ins the savior put her in one of these cells and immediately flew away. For another couple of hours, the girl watched the running and listened to the impacts of the ground, until they were mixed. With the sounds of gunfire and aircraft.

1599 1600 1601 1602 1603