i
Oracle
Filter interviews by
Decoupling a monolith involves breaking it into smaller, independent services for better scalability and maintainability.
Identify bounded contexts: Analyze the monolith to find distinct areas of functionality that can be separated.
Use APIs for communication: Implement RESTful APIs or gRPC for services to interact without tight coupling.
Adopt event-driven architecture: Utilize message brokers (e.g., RabbitMQ, Kafka...
Ext file system is a widely used file system in Linux for organizing and managing files on storage devices.
Ext stands for Extended File System
Supports features like journaling, access control lists, and extended attributes
Uses inodes to store metadata about files and directories
Supports different block sizes for efficient storage allocation
Singleton design pattern is a creational design pattern that restricts the instantiation of a class to a single object.
Singleton pattern ensures that only one instance of a class is created and provides a global point of access to it.
It is often used in scenarios where a single instance of a class is required to control actions or resources.
The Singleton pattern involves a static member in the class, a private con...
Manual testing involves executing test cases without automation to identify defects in software applications.
Understand requirements: Review specifications to create test cases.
Test case design: Write detailed test cases covering all scenarios.
Test execution: Manually execute test cases and document results.
Defect reporting: Log any defects found with detailed information.
Regression testing: Re-test after fixes to...
What people are saying about Oracle
Garbage collection is an automatic memory management process.
It frees up memory that is no longer being used by the program.
It helps prevent memory leaks and crashes caused by running out of memory.
Examples include Java's garbage collector and Python's reference counting.
Garbage collection can have an impact on performance and should be tuned accordingly.
Dynamic programming is a technique to solve complex problems by breaking them down into smaller subproblems.
It involves solving subproblems only once and storing their solutions for future use.
It is used in optimization problems, such as finding the shortest path or maximizing profit.
Examples include the knapsack problem and the Fibonacci sequence.
It can be implemented using either a top-down or bottom-up approach...
Given 2 arrays, one with n elements and another with n-1 elements, answer the question.
Compare the elements of both arrays to find the missing element.
Use a loop or a built-in function to iterate through the arrays.
Consider edge cases where the missing element is at the beginning or end of the array.
Given 2 arrays with n and n-1 elements, find the unique element in the larger array.
Loop through the larger array and check if each element is present in the smaller array.
If an element is not present in the smaller array, it is the unique element.
Return the unique element.
Example: arr1 = ['a', 'b', 'c', 'd'], arr2 = ['a', 'b', 'c'], unique element = 'd'
Density of a person in a social networking graph is the ratio of friends who interacted with the person to the total number of friends.
Calculate the number of friends who interacted with the person.
Calculate the total number of friends for that person.
Divide the number of interacting friends by the total number of friends to get the density.
Density = (Number of interacting friends) / (Total number of friends)
Given a map of coffee shops and a person, find the closest n coffee shops to him.
Use the person's location and calculate the distance to each coffee shop on the map.
Sort the coffee shops by distance and return the closest n.
Consider using a data structure like a priority queue to efficiently find the closest coffee shops.
I applied via Approached by Company and was interviewed in Dec 2024. There was 1 interview round.
Designing a thread-safe concurrent transaction application involves careful consideration of synchronization, locking mechanisms, and data consistency.
Identify critical sections of code that need to be synchronized to prevent race conditions
Use synchronization mechanisms such as locks, semaphores, or atomic operations to ensure mutual exclusion
Consider using transactional memory or software transactional memory for man...
To find the middle element of a linked list, use the slow and fast pointer approach.
Initialize two pointers, slow and fast, at the head of the linked list.
Move the slow pointer by one step and the fast pointer by two steps until the fast pointer reaches the end of the list.
The position of the slow pointer will be the middle element of the linked list.
Ext file system is a widely used file system in Linux for organizing and managing files on storage devices.
Ext stands for Extended File System
Supports features like journaling, access control lists, and extended attributes
Uses inodes to store metadata about files and directories
Supports different block sizes for efficient storage allocation
A problem on dynamic programming
I applied via Company Website and was interviewed in Dec 2024. There were 3 interview rounds.
Leetcode medium problems
This round was a culture fit round
DSA, java, previous projects
I appeared for an interview in Sep 2024, where I was asked the following questions.
Encoding strings involves converting data into a specific format for efficient storage or transmission.
Encoding types: UTF-8, ASCII, Base64.
Example: UTF-8 can represent any character in the Unicode standard.
Base64 is often used for encoding binary data in text formats.
ASCII is limited to 128 characters, suitable for basic English text.
Merge two sorted linked lists into a single sorted linked list.
Create a dummy node to simplify merging.
Use two pointers to traverse both lists.
Compare values of nodes from both lists.
Append the smaller node to the merged list.
Continue until one list is exhausted, then append the remainder of the other list.
Example: List1: 1 -> 3 -> 5, List2: 2 -> 4 -> 6 results in: 1 -> 2 -> 3 -> 4 -> 5 -> 6.
2 leetcode medium questions
I appeared for an interview before Mar 2024.
The 90-minute assessment consists of approximately 45 questions covering Java, SQL, Linux, flowchart-based questions, and one coding question.
Detecting a loop in a linked list can be efficiently done using Floyd's Cycle-Finding Algorithm.
Use two pointers: slow and fast. Initialize both at the head of the list.
Move slow pointer one step at a time and fast pointer two steps at a time.
If there is a loop, the fast pointer will eventually meet the slow pointer.
If the fast pointer reaches the end of the list (null), there is no loop.
Example: In a list 1 -> 2 -&...
Yes, the fast pointer can move by different increments in the slow and fast pointer technique.
The slow and fast pointer technique is often used to detect cycles in linked lists.
If the fast pointer moves by 1 node instead of 2, it can still be effective for certain problems.
For example, moving the fast pointer by 3 nodes can help find the middle of a list in a different way.
Adjusting the increment can change the algorit...
Thrashing occurs when an OS spends more time swapping pages in and out of memory than executing processes.
Thrashing happens when there is insufficient physical memory to hold all active processes.
It leads to a significant decrease in system performance due to excessive paging.
Example: A system running multiple memory-intensive applications may thrash if RAM is insufficient.
To mitigate thrashing, the OS may implement pa...
In five years, I see myself as a lead engineer, driving innovative projects and mentoring junior staff in a collaborative environment.
Leading a team on cutting-edge projects, such as developing scalable cloud solutions.
Mentoring junior engineers, helping them grow their skills and advance their careers.
Contributing to open-source projects to enhance my technical expertise and community involvement.
Pursuing advanced cer...
The SQL query identifies managers overseeing more than 10 employees using GROUP BY and HAVING clauses.
Use GROUP BY: Aggregate employee records by manager ID to count employees per manager.
HAVING Clause: Filter results to include only those managers with a count greater than 10.
Example Query: SELECT manager_id FROM employees GROUP BY manager_id HAVING COUNT(employee_id) > 10;
Join with Managers Table: To get manager d...
I applied via Company Website and was interviewed before Nov 2023. There were 3 interview rounds.
Decoupling a monolith involves breaking it into smaller, independent services for better scalability and maintainability.
Identify bounded contexts: Analyze the monolith to find distinct areas of functionality that can be separated.
Use APIs for communication: Implement RESTful APIs or gRPC for services to interact without tight coupling.
Adopt event-driven architecture: Utilize message brokers (e.g., RabbitMQ, Kafka) to ...
Enhancing a company's database involves optimizing performance, ensuring data integrity, and improving user accessibility.
Implement indexing on frequently queried columns to speed up search operations.
Use normalization techniques to eliminate data redundancy and improve data integrity.
Consider partitioning large tables to enhance performance and manageability.
Implement caching strategies to reduce database load and imp...
Some of the top questions asked at the Oracle Member Technical Staff interview -
The duration of Oracle Member Technical Staff interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 15 interview experiences
Difficulty level
Duration
based on 123 reviews
Rating in categories
Senior Software Engineer
2.5k
salaries
| ₹19.7 L/yr - ₹36 L/yr |
Principal Consultant
2.2k
salaries
| ₹20 L/yr - ₹34.2 L/yr |
Senior Consultant
2.2k
salaries
| ₹12.8 L/yr - ₹23.5 L/yr |
Senior Member of Technical Staff
1.9k
salaries
| ₹23.8 L/yr - ₹41 L/yr |
Software Developer
1.5k
salaries
| ₹15.3 L/yr - ₹27.4 L/yr |
SAP
MongoDB
Salesforce
IBM