- Published on
Oracle PDO Interview Experience (On-Campus) 2023
- Author
- Shared Anonymously
Round 1 : Online Assessment (26/08/2023)
- The online assessment consisted of 1 Coding Question, 20 MCQ’s and 1 Question on API (100 Minutes)
- The coding question was easy-to-medium (strings and subsequences)
- https://www.geeksforgeeks.org/lexicographically-largest-subsequence-containing-all-distinct-characters-only-once/
- MCQ’s were based on Aptitude, Reasoning and Verbal
- The API question was to extract data from a given URL and return a list with specific conditions (there were 2 keys and the question was to sort them based on both keys) We could attempt the question in Python, C++, Node.js etc.
28 students were shortlisted for the following rounds.
The offline interview started with a small talk by Oracle, explaining about the company and the job role.
Round 2 : Technical Interview 1 (29/08/2023)
- This round consisted of easy-to-medium questions on DSA. A pen and paper were provided to write down our process and pseudocode
- (NOTE : EXPLAIN THE INTERVIEWER HOW YOU ARE THINKING THROUGH THE QUESTION, DO NOT BLINDLY START SOLVING, INTERVIEWERS SCORE YOU ON HOW YOU APPROACH THE PROBLEM AND NOT ON THE SOLUTION)
- The first question consisted of an array of arrays. Each sub-array had two elements, source and destination . The task was to find the longest path from that you can take with connecting cities.
- Input : {{\u2018BLR’,’CHN’},{\u2018DEL’,’BOM’},{\u2018CHN’,’DEL}}
- Expected Output : {\u2018BLR’,’CHN,’DEL’,’BOM’}
- My approach : Use a map to find the starting city (The starting city is the city which does not appear in both source and destination) First plugin all the source elements with their frequencies. Now, while traversing through the destination cities, check if the city already exists in the map and decrement its frequency. The only remaining city in the map is starting city. Make another map of source and destination cities. Start with the starting city and check if the destination of current city exists in the map and update values accordingly. Append values to a resultant array.
- (NOTE : START WITH BRUTE FORCE AND THEN MOVE ON TO A BETTER SOLUTION, THE INTERVIEWER WILL ASK TO MAKE THE TIME COMPLEXITY AS LEAST AS POSSIBLE)
- The second question was on DBMS (as I had mentioned MySQL and DBMS in my resume) Given a college database, make table relations with appropriate cardinalities and keys. It was simple and just had to apply common sense.
- The third question was on arrays. Given an array of integers, find the frequency of k.
- Input : {2,5,1,4,5,7,9,1,3,5}, k=5
- Expected Output : 2
- My approach : Sort elements, search for k (linear search) and calculate length of neighbors (O(N)) The interviewer asked me if the elements are already sorted, then could I solve the question in O(logN) I applied binary search twice to find starting and ending elements and calculate length.
- https://www.ritambhara.in/count-frequency-of-a-number-in-a-sorted-array/
Out of 28, around 15 were shortlisted for the next round
Round 3 : Technical Interview 2
- The interviewer asked two questions (DSA)
- The first question was to find square root of an integer up to 3 decimals. I solved the question using brute force. The interviewer asked me to optimize it. I could not optimize it completely. I used binary search to find the first digit of square root, but could not figure out how to find the decimals.
- https://www.geeksforgeeks.org/find-square-root-number-upto-given-precision-using-binary-search/
- The second question was on Snakes and Ladders. Given a board (6\xD76 Matrix),find the least number of rolls to reach the end.
- Input : If a snake or ladder was present on a particular cell, the value of that cell was where it would lead to. For example if there was snake from cell 26 to 15, the value on cell 26 will be 15 and the value on cell 15 will be -1. Values will be -1 if it is a normal cell and you can not jump multiple blocks from it.
- Output : Minimum number of rolls.
- My approach : I solved it using recursion. I made a map for every cell with the cell you would be moved to( For example (1,-1),(2,-1),(3,9) etc.) At every cell you have 6 options ( roll numbers from 1 to 6). At every move, check if there is a snake or ladder and update the current position accordingly. Recursively call the function again with the updated current position. Use a temporary variable to store the least count after every recursive call. I explained the interviewer using a recursion tree and he was satisfied with the approach.
- https://www.geeksforgeeks.org/snake-ladder-problem-2/
Out of around 15, 8 were selected for the next round
Round 4 : HR Interview
The HR round was explaining about the projects in layman terms and other general questions (no technical questions)
The interviewer asked me questions such as:
- How would you explain one of your projects to a common person, who has no tech understanding?
- Narrate one experience where you felt your work was not recognized
- Explain some co-curricular activities you did in college
- What is one regret you have of joining your college?
- Why Oracle?
- What is your career ambition?
- Where do you see yourself in further years? etc.
The results were announced 2 hours later, and 5 students were selected
Tips:
- Be yourself.
- Be calm and composed.
- If you are stuck at a question, take a deep breath and try solving. At the least, explain the interviewer what is going through your mind.
- Only put skills which you are confident at in your resume.
ATB \uD83D\uDE42
Report • Mark as Helpful