I had two phone interviews for Oracle. The first phone interview involved the "Roman to Integer" Leetcode problem, and the second phone interview involved the "LRU Cache" Leetcode problem. Both interviewers were very helpful and asked resume-based and behavioral questions.
My onsite interview consisted of four rounds, including a lunch interview.
Round 1: Behavioral questions and a coding challenge. The coding challenge was: Input: abcaade, c, d, k = 2 Output: boolean The output should be true as the distance between c and d is less than or equal to 2.
Round 2: A behavioral question and a system design round.
Round 3: Lunch with lots of behavioral questions.
Round 4: Another coding round with behavioral questions. The coding question was: Input: arr[] = [3,5,6,8,12,17] Output: boolean You start with k = 1, and you can take k, k + 1, or k - 1 steps. So from 3, you can take k = 2 and go to 5. You need to check if you can reach the last step (17).
Round 5: Another coding challenge with behavioral questions. The question was: Input: /foo/2/3 List: /foo /foobar /foo/bar The output should return "/foo" as a String, as that is where the address will point. You just have to find the address where the URL will point.
I was rejected two days later. I solved all the questions in the interview, some with a little help from the interviewer. The interviewers were very nice and helpful. If you ask the right questions, they are willing to help.