i
Oracle
Filter interviews by
I applied via Approached by Company and was interviewed in Sep 2022. There were 4 interview rounds.
Program to remove duplicate elements from String and count their occurrences.
Create a HashSet to store unique characters from the String.
Iterate through the String and add each character to the HashSet.
While adding, check if the character already exists in the HashSet and increment its count.
Print the count of each character that has duplicates.
Return the modified String with duplicates removed.
A program to capitalize the first letter of each word in a sentence.
Split the sentence into words
Loop through each word and capitalize the first letter
Join the words back into a sentence
Java Map is an interface that maps unique keys to values. It works internally using hash table data structure.
Map interface is implemented by HashMap, TreeMap, LinkedHashMap, etc.
Keys in a map must be unique and values can be duplicated.
Hash table data structure is used to store key-value pairs internally.
Hashing is used to convert keys into indices of an array where values are stored.
Collision resolution techniques li...
Lists are used for small collections, linked lists for large or frequently modified collections.
Use lists for small collections that don't require frequent modifications.
Use linked lists for large collections or collections that require frequent modifications.
Linked lists are better for inserting or deleting elements in the middle of the collection.
Lists are better for accessing elements by index.
Example: Use a list to...
Primitives are basic data types in Java while wrapper classes are objects that wrap around primitives.
Primitives are faster and take less memory than wrapper classes.
Wrapper classes provide additional functionality like conversion to and from strings.
Primitives are passed by value while wrapper classes are passed by reference.
Examples of primitives include int, boolean, and double while examples of wrapper classes incl
JVM is an abstract machine that executes Java bytecode. It consists of class loader, runtime data area, and execution engine.
JVM stands for Java Virtual Machine.
It is responsible for executing Java bytecode.
JVM architecture consists of class loader, runtime data area, and execution engine.
Class loader loads the class files into the memory.
Runtime data area is divided into method area, heap, and stack.
Execution engine e...
String is immutable because it cannot be changed once created.
Immutable objects are safer to use in multi-threaded environments.
String pool in Java is possible because of immutability.
StringBuffer and StringBuilder are mutable alternatives to String.
Java 8 introduced several new features including lambda expressions, streams, and default methods.
Lambda expressions allow for functional programming and simplify code.
Streams provide a way to process collections of data in a functional way.
Default methods allow for adding new methods to interfaces without breaking existing implementations.
Other features include the Optional class, Date and Time API, and Nashorn JavaSc...
Functional interfaces are interfaces with only one abstract method. There are four types of functional interfaces.
Consumer: accepts a single argument and returns no result. Example: Consumer
Supplier: takes no argument and returns a result. Example: Supplier
Predicate: takes a single argument and returns a boolean. Example: Predicate
Function: takes a single argument and returns a result. Example: Function
Program to separate even and odd numbers using Java 8.
Use Java 8 Stream API to filter even and odd numbers
Create two separate lists for even and odd numbers
Use lambda expressions to filter the numbers
Example: List
Example: List
Spring Boot annotations are used to simplify the development process. Some common annotations are @SpringBootApplication, @RestController, @Autowired, @GetMapping, @PostMapping, @Service, @Repository, @Component, etc.
The @SpringBootApplication annotation is used to mark the main class of the application.
The @RestController annotation is used to mark a class as a RESTful controller.
The @Autowired annotation is used to i...
String is immutable while StringBuffer is mutable.
String objects are constant and cannot be changed once created.
StringBuffer objects are mutable and can be modified.
StringBuffer is thread-safe while String is not.
StringBuffer has methods to append, insert, and delete while String does not.
Example: String str = "hello"; StringBuffer sb = new StringBuffer("world");
str.concat("world"); // returns a new string "helloworld...
String Buffer and String Builder are both used to manipulate strings, but the former is synchronized while the latter is not.
String Buffer is thread-safe while String Builder is not
String Builder is faster than String Buffer
String Builder is preferred when thread safety is not a concern
String Buffer is used when multiple threads are involved in manipulating the same string
Both classes have similar methods for appending
Sensitive information can be removed from serializable interface by implementing custom serialization.
Create a custom serialization method that excludes sensitive information.
Use the transient keyword to mark sensitive fields as non-serializable.
Consider using encryption or hashing to protect sensitive data.
Test serialization and deserialization to ensure sensitive information is not included.
Examples: exclude password...
Marker interface is an interface with no methods. It is used to mark a class for special treatment.
Marker interface is used to provide metadata to the JVM.
It is used to indicate that a class has some special behavior or characteristics.
Example: Serializable interface in Java.
Marker interfaces are used for reflection and serialization.
They are also used in frameworks like Spring and Hibernate.
Marker interfaces are also ...
There are four types of HTTP requests in Spring Boot: GET, POST, PUT, and DELETE.
GET: used to retrieve data from a server
POST: used to submit data to a server
PUT: used to update existing data on a server
DELETE: used to delete data from a server
These requests are handled by the @RequestMapping annotation in Spring Boot
Factory Design Pattern is used to create objects without exposing the creation logic to the client.
It provides a way to delegate the object creation to a factory class.
It helps in achieving loose coupling between classes.
It is useful when we have a super class with multiple sub-classes and based on input, we need to return one of the sub-class.
Examples include: java.util.Calendar, java.text.NumberFormat, java.nio.chars
HTTP response codes indicate the status of a web request. There are 5 categories of codes.
1xx - Informational
2xx - Success
3xx - Redirection
4xx - Client Error
5xx - Server Error
Difference between @Service and @Component
Both are used for component scanning in Spring
@Service is used for service layer classes
@Component is used for general purpose beans
Service layer classes contain business logic
Examples of @Service: UserService, ProductService
Examples of @Component: DAO, Utility classes
Remove duplicate elements in an array.
Create a new empty array.
Loop through the original array and check if the element already exists in the new array.
If it doesn't exist, add it to the new array.
Return the new array without duplicates.
The OSI model has 7 layers that define how data is transmitted over a network.
Layer 1: Physical layer - deals with the physical aspects of transmitting data
Layer 2: Data link layer - responsible for error-free transfer of data between nodes
Layer 3: Network layer - handles routing of data between different networks
Layer 4: Transport layer - ensures reliable delivery of data between applications
Layer 5: Session layer - e...
TCP/IP model has four layers: Application, Transport, Internet, and Network Access.
Application layer handles high-level protocols like HTTP, FTP, SMTP, etc.
Transport layer provides end-to-end communication between hosts using TCP or UDP protocols.
Internet layer handles the routing of data packets between networks using IP protocol.
Network Access layer deals with the physical transmission of data over the network.
Exampl...
TCP is a reliable, connection-oriented protocol. UDP is a connectionless protocol. TLS is a secure protocol for data encryption.
TCP ensures reliable data transmission by establishing a connection between sender and receiver.
UDP is faster but less reliable as it does not establish a connection before sending data.
TLS provides secure communication by encrypting data and verifying the identity of the communicating parties...
SIP signalling is a protocol used for initiating, modifying, and terminating real-time sessions that involve video, voice, messaging, and other communications applications.
SIP stands for Session Initiation Protocol.
It is used to establish, modify, and terminate multimedia sessions.
SIP signalling is used in VoIP (Voice over Internet Protocol) and other real-time communication applications.
It uses a request-response mode...
TCP/IP model is a protocol used for data communication. It consists of four layers: application, transport, internet, and network access.
Data is sent from the application layer to the transport layer where it is divided into segments.
The internet layer adds IP addresses to the segments and sends them to the network access layer.
The network access layer adds physical addresses and sends the data over the network.
The pro...
Remove strings from an array whose length is less than 3.
Loop through the array and check the length of each string.
If the length is less than 3, remove that string from the array.
Use a for loop or filter method to remove the strings.
Example: ['cat', 'dog', 'bird', 'elephant'] -> ['cat', 'dog', 'bird', 'elephant']
Example: ['a', 'to', 'the', 'in'] -> ['the', 'in']
I was interviewed in Jan 2025.
Numerical reasoning : Tests mathematical skills,such as number sequences,percentages,and ratios.
Static typing requires variable types to be declared at compile time, while dynamic typing allows types to be determined at runtime.
Static typing requires explicit declaration of variable types, while dynamic typing infers types at runtime.
Static typing helps catch errors at compile time, while dynamic typing may lead to runtime errors.
Python is dynamically typed, but can be used with type hints for static type checkin...
Lists are mutable, ordered collections of items, while tuples are immutable, ordered collections of items.
Lists are defined using square brackets [], while tuples are defined using parentheses ().
Lists can be modified after creation (mutable), while tuples cannot be modified (immutable).
Lists are typically used for collections of similar items that may need to be changed, while tuples are used for fixed collections of ...
Gd Topics:
1.Current affairs
2.Business and Economy
3.Social and Cultural
I am a passionate Python developer with experience in web development and data analysis.
Experienced in Python programming language
Proficient in web development using Django framework
Skilled in data analysis with libraries like Pandas and NumPy
I am passionate about coding and enjoy problem-solving using Python.
I have a strong interest in programming and have been learning Python for a while.
I find Python to be a versatile and powerful language that can be used in various applications.
I enjoy the challenge of writing efficient and clean code to solve complex problems.
I believe working as a Python developer will allow me to further enhance my skills and contri
I was interviewed in Dec 2024.
ipconf.pl is a Perl script used for configuring network interfaces on Linux systems.
ipconf.pl is typically used to set up IP addresses, netmasks, gateways, and DNS servers on Linux machines.
It can be used to automate the configuration of network interfaces during system setup or maintenance.
The script may also be used to troubleshoot network connectivity issues by checking and modifying network settings.
ipconf.pl is of...
Scan VIP is used for load balancing traffic to multiple nodes, while Node VIP is assigned to a specific node for direct access.
Scan VIP is a virtual IP address used for load balancing traffic across multiple nodes in a cluster.
Node VIP is a virtual IP address assigned to a specific node in the cluster for direct access.
Scan VIP is typically used for services that need to be highly available and distributed across multi...
Quarantile in Exadata is a feature that isolates problematic cells to prevent them from affecting the rest of the system.
Quarantile is a feature in Exadata that identifies and isolates cells that are experiencing issues or failures.
It helps prevent the spread of issues to other cells in the system, ensuring high availability and performance.
Quarantiled cells are still accessible for diagnosis and maintenance, but are n...
The master switch in Exadata can be identified by checking the status of the cell server software.
Check the status of the cell server software using the 'cellcli' command
The cell server with the 'MS' role is the master switch
The master switch can also be identified by checking the 'cellinit.ora' file
Spine switch and leaf switch are networking components in Exadata used for connecting database servers and storage servers.
Spine switch acts as the core of the network, connecting all leaf switches and providing high-speed connectivity.
Leaf switches connect database servers and storage servers to the spine switch, facilitating communication between them.
Exadata uses a leaf-spine network architecture for efficient data ...
One of the node of a 3 node cluster is down. Explain the step by step process to troubleshoot the issue.
Shell script & terraform code output was asked.
What people are saying about Oracle
I applied via Company Website and was interviewed in Dec 2024. There were 2 interview rounds.
Joins in SQL are used to combine rows from two or more tables based on a related column between them.
Types of joins include INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL JOIN.
INNER JOIN returns rows when there is at least one match in both tables.
LEFT JOIN returns all rows from the left table and the matched rows from the right table.
RIGHT JOIN returns all rows from the right table and the matched rows from the left tabl...
Use the SQL query with ORDER BY and LIMIT to find the third highest salary.
Use the SQL query: SELECT DISTINCT Salary FROM Employees ORDER BY Salary DESC LIMIT 2, 1
The above query will return the third highest salary from the 'Employees' table
Make sure to replace 'Employees' and 'Salary' with the appropriate table and column names
I prioritize tasks, set clear expectations, utilize time management tools, and communicate effectively.
Prioritize tasks based on urgency and importance
Set clear expectations with clients regarding response times and availability
Utilize time management tools such as calendars and task lists
Communicate effectively with clients to provide updates and manage expectations
I prioritize issues based on impact, urgency, and complexity.
Assess the impact of each issue on the system or users
Consider the urgency of resolving each issue
Evaluate the complexity of fixing each issue
Prioritize critical issues that have high impact, urgency, and low complexity
Create a priority list based on these factors
Oracle interview questions for popular designations
I applied via Company Website and was interviewed in Oct 2024. There were 3 interview rounds.
It was a coding round interview along with interviewer via Virtual mode. I was given 2 coding questions on HackerRank for the interview:
1. one was an easy problem on counting minimum replacements.
2. "pat is an ordinary kid who works hard to be a great runner...." this was a challenging problem (which I managed to solve).
3. I was asked some basic Python questions, as the role was for a Python Developer.
I would use a relational database like MySQL for the Parking lot as it provides structured data storage and supports complex queries.
Relational databases like MySQL offer structured data storage for parking lot information
Supports complex queries for managing parking lot data efficiently
Ability to handle large amounts of data and transactions
Provides data integrity and security features
Can easily integrate with other s
Get interview-ready with Top Oracle Interview Questions
I applied via Campus Placement and was interviewed in Aug 2024. There were 4 interview rounds.
Round 1: HackerRank Test (100 Minutes)
1 DSA question (medium level, binary search on answers)
20 technical questions (OS, DBMS, CN, and other CS fundamentals)
15 general aptitude and communication questions
Static binding is resolved at compile time while dynamic binding is resolved at runtime in Java.
Static binding is also known as early binding.
Dynamic binding is also known as late binding.
Example of static binding: method overloading.
Example of dynamic binding: method overriding.
Sorting a linked list involves rearranging the nodes in a specific order.
Iterate through the linked list and compare each node with the next one
Use a sorting algorithm like bubble sort, merge sort, or quick sort to rearrange the nodes
Update the pointers to connect the nodes in the sorted order
JAR files are Java Archive files that store multiple Java class files and related metadata.
JAR files are used to package Java classes, resources, and metadata into a single file.
They are commonly used for distributing Java libraries or applications.
JAR files can be created using the 'jar' command in Java.
They can also be executed using the 'java -jar' command.
Example: mylibrary.jar contains all the class files and reso
A Singleton class is a class that can only have one instance created at a time.
Singleton classes are often used for managing resources that should only have one instance, such as a database connection.
To implement a Singleton class, you typically make the constructor private and provide a static method to access the single instance.
Example: Singleton class for logging system where only one instance of the logger is nee
CAP Theorem states that in a distributed system, it is impossible to simultaneously guarantee consistency, availability, and partition tolerance.
Consistency: All nodes in the system have the same data at the same time.
Availability: Every request gets a response, even if some nodes are down.
Partition Tolerance: The system continues to operate despite network partitions.
Trade-offs: In a distributed system, you can only h...
wait() and signal() are functions used for synchronization in multithreading.
wait() is used to make a thread wait until a certain condition is met
signal() is used to wake up a waiting thread when the condition is met
Example: Producer-consumer problem where producer signals consumer to consume when a new item is produced
Airport Management System schema and ER diagram design
Entities: Airport, Flight, Passenger, Employee, Schedule
Attributes: Airport (code, name, location), Flight (number, destination, departure time), Passenger (name, age, contact info), Employee (ID, name, role), Schedule (flight number, date, time)
Relationships: Airport has many Flights, Flight has many Passengers, Employee works at Airport, Flight has Schedule
Normalization is the process of organizing data in a database to reduce redundancy and improve data integrity.
Identify the functional dependencies in the table
Eliminate partial dependencies by breaking the table into multiple tables
Eliminate transitive dependencies by further breaking down the tables
Ensure each table has a primary key and all non-key attributes are fully functionally dependent on the primary key
REST is an architectural style for designing networked applications
REST stands for Representational State Transfer
It uses standard HTTP methods like GET, POST, PUT, DELETE
Resources are identified by URIs
Data is transferred in JSON or XML format
Example: GET request to 'https://api.example.com/users' to retrieve a list of users
PUT is used to update or replace an existing resource, while POST is used to create a new resource.
PUT is idempotent, meaning multiple identical requests will have the same effect as a single request
POST is not idempotent, meaning multiple identical requests may have different effects
PUT is used to update an existing resource at a specific URI
POST is used to create a new resource under a specific URI
Example: PUT /users...
I applied via Approached by Company and was interviewed in Oct 2024. There were 2 interview rounds.
Program to return list of .tst files in given directory and subdirectories
Use recursion to traverse through all directories and subdirectories
Check if each file has .tst extension and add to list if true
Use built-in functions like os.listdir() and os.path.splitext() in Python
The '==' operator is used for comparing values of primitive data types, while the 'equals' method is used for comparing objects in Java.
Use '==' to compare primitive data types like int, char, boolean, etc.
Use 'equals' method to compare objects like Strings, Lists, etc.
Example: int a = 5; int b = 5; if(a == b) { // true }
Example: String str1 = 'hello'; String str2 = 'hello'; if(str1.equals(str2)) { // true }
Abstract classes are used to provide a common base for multiple classes, while interfaces define a contract for classes to implement.
Abstract classes can contain both abstract and concrete methods, while interfaces can only have abstract methods.
Abstract classes can have constructors, while interfaces cannot.
Interfaces allow for multiple inheritance, while classes can only inherit from one abstract class.
Abstract class...
Singleton design pattern ensures a class has only one instance and provides a global point of access to it.
Ensure a private static instance variable in the class.
Provide a public static method to access the instance, creating it if necessary.
Use synchronized keyword or double-checked locking to make it thread-safe.
Merge sort is a divide and conquer algorithm that divides the input array into two halves, sorts each half, and then merges the sorted halves.
Divide the array into two halves
Recursively sort each half
Merge the sorted halves back together
Java is a popular programming language used for developing various applications. OOPs (Object-Oriented Programming) is a programming paradigm based on the concept of objects.
Java is a class-based, object-oriented programming language.
OOPs concepts include encapsulation, inheritance, polymorphism, and abstraction.
Encapsulation is the bundling of data and methods that operate on the data into a single unit.
Inheritance al...
Testing is the process of evaluating a software application to identify defects or bugs.
Types of testing include unit testing, integration testing, system testing, acceptance testing, and regression testing.
Unit testing involves testing individual components or modules of the software.
Integration testing checks if different modules work together correctly.
System testing evaluates the entire system's functionality.
Accep...
Exceptions handling is a mechanism to handle errors or exceptional situations in a program.
Exceptions allow for graceful handling of errors without crashing the program
Try-catch blocks are commonly used to catch and handle exceptions
Exceptions can be thrown manually using 'throw' keyword
Common exceptions include NullPointerException, ArrayIndexOutOfBoundsException, etc.
Locators in automation selenium are used to identify web elements on a webpage for testing purposes.
Locators include ID, class name, name, tag name, link text, partial link text, and xpath.
ID is the most efficient locator as it is unique for each element.
Xpath is powerful but can be slow and brittle if not used correctly.
Using CSS selectors can also be a good alternative to xpath.
It is important to choose the right loc...
I was interviewed in Dec 2024.
Basic aptitude questions and two coding questions were asked.
I am a dedicated and experienced Programmer Analyst with a strong background in software development and system analysis.
Over 5 years of experience in programming and analyzing software systems
Proficient in languages such as Java, C++, and SQL
Skilled in conducting system analysis and designing solutions
Strong problem-solving and communication skills
Previous projects include developing a web-based inventory management s
I applied via Referral and was interviewed in Oct 2024. There was 1 interview round.
Return the index of the vector with the longest length palindrome
Iterate through each string in the vector
Check if the string is a palindrome
Track the index of the longest palindrome string
Some of the top questions asked at the Oracle interview -
The duration of Oracle interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 622 interviews
Interview experience
based on 5.2k reviews
Rating in categories
Senior Software Engineer
2.3k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Consultant
2.1k
salaries
| ₹0 L/yr - ₹0 L/yr |
Principal Consultant
2k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Member of Technical Staff
1.8k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Application Engineer
1.4k
salaries
| ₹0 L/yr - ₹0 L/yr |
SAP
MongoDB
Salesforce
IBM