i
Oracle
Filter interviews by
While loops repeat until a condition is false; if statements execute once based on a condition.
While loops continue executing as long as the condition is true. Example: 'while (x < 10) { x++; }'
If statements execute a block of code only once if the condition is true. Example: 'if (x < 10) { x++; }'
While loops are useful for situations where the number of iterations is not known beforehand.
If statements are u...
Design a scalable social media platform for microblogging, focusing on user interactions and real-time updates.
User Authentication: Implement OAuth for secure login and user management.
Tweet Storage: Use a distributed database like Cassandra for storing tweets.
Feed Generation: Utilize a fan-out on write approach to generate user timelines.
Real-time Updates: Use WebSockets for real-time notifications and updates.
Sc...
ODI 12c is Oracle Data Integrator, a comprehensive data integration platform for high-performance data movement and transformation.
Data Integration: ODI 12c supports various data sources, enabling seamless integration across databases, applications, and big data environments.
ELT Architecture: It employs an Extract, Load, Transform (ELT) approach, allowing data to be transformed in the target database, improving pe...
Convert a queue into a stack using basic queue operations.
Use two queues: queue1 and queue2.
Enqueue elements into queue1 to simulate stack behavior.
To pop an element, dequeue all but the last element from queue1 into queue2, then dequeue the last element.
Swap the names of queue1 and queue2 after each pop operation to maintain the stack structure.
Example: If queue1 has [1, 2, 3], after pop, queue1 will have [2, 1] ...
What people are saying about Oracle
Client exclusions are handled regularly to ensure compliance and accuracy in compensation analysis and reporting.
Regular Review: I handle client exclusions on a quarterly basis to ensure that all compensation data is accurate and compliant with regulations.
Case-by-Case Basis: For specific clients, exclusions may be addressed as they arise, such as when a client requests a review of their compensation package.
Colla...
Cost components differ significantly between on-premise and cloud infrastructures, impacting budgeting and resource allocation.
On-Premise: Initial capital expenditure for hardware and software purchases (e.g., servers, storage devices).
On-Premise: Ongoing maintenance costs, including IT staff salaries and equipment repairs.
On-Premise: Utility costs for power and cooling systems to maintain server rooms.
Cloud: Subs...
To advise a CTO on cost reduction, I would ask targeted questions to identify areas for improvement and efficiency.
What are the current operational costs, and which areas do you believe are the most significant contributors?
Are there any existing processes that you think are inefficient or redundant? For example, can automation be applied?
What technology stack are you currently using, and are there opportunities t...
Efficiently locate an element in a sorted 2D matrix using binary search or a stair-step approach.
Use binary search on each row if the matrix is sorted row-wise.
For a matrix sorted both row-wise and column-wise, start from the top-right corner.
If the current element is greater than the target, move left; if less, move down.
Example: In a matrix [[1, 2, 3], [4, 5, 6], [7, 8, 9]], to find 5, start at 3 (top-right) and...
A distributed key-value store is a system that manages data across multiple nodes for scalability and fault tolerance.
Data partitioning: Use consistent hashing to distribute keys across nodes, e.g., using a hash function to determine node placement.
Replication: Implement data replication for fault tolerance, e.g., each key-value pair can be stored on multiple nodes.
Consistency models: Choose between eventual consi...
Failover from one load balancer (LB) to another ensures high availability and reliability in network traffic management.
Monitor health of the primary LB using health checks.
Implement DNS-based failover to redirect traffic to the secondary LB.
Use a load balancer with built-in failover capabilities, like AWS Elastic Load Balancing.
Configure session persistence to maintain user sessions during failover.
Test failover ...
I applied via Approached by Company and was interviewed in Sep 2022. There were 4 interview rounds.
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...
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...
I appeared for an interview 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 appeared for an interview 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.
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
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.
Design a parking lot system to manage parking spaces, vehicles, and payment processing.
Define core classes: ParkingLot, ParkingSpace, Vehicle, Ticket, and Payment.
ParkingLot manages multiple ParkingSpaces and keeps track of available spots.
ParkingSpace can be of different types: Compact, Regular, and Handicapped.
Vehicle class holds information like license plate, size, and type.
Ticket class generates a unique ID for ea...
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...
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...
SQL queries using joins and subqueries to retrieve data from multiple tables.
Use INNER JOIN to combine rows from two or more tables based on a related column.
Example: SELECT * FROM Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID;
LEFT JOIN retrieves all records from the left table and matched records from the right table.
Example: SELECT * FROM Products LEFT JOIN Categories ON Products.CategoryID ...
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...
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 appeared for an interview 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 a vector where each entry is the product of all other elements in the given vector.
Use a two-pass approach: first calculate the prefix products, then the suffix products.
Example: For input [1, 2, 3, 4], prefix products are [1, 1, 2, 6] and suffix products are [24, 12, 4, 1].
Multiply corresponding prefix and suffix products to get the result: [24, 12, 8, 6].
Consider edge cases: empty vector returns empty vector, ...
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 666 interview experiences
Difficulty level
Duration
based on 5.6k reviews
Rating in categories
Kolkata,
Mumbai
+58-13 Yrs
Not Disclosed
Senior Software Engineer
2.7k
salaries
| ₹12 L/yr - ₹42 L/yr |
Principal Consultant
2.2k
salaries
| ₹10.9 L/yr - ₹38 L/yr |
Senior Consultant
2.2k
salaries
| ₹9.1 L/yr - ₹28.1 L/yr |
Senior Member of Technical Staff
1.9k
salaries
| ₹13.5 L/yr - ₹47 L/yr |
Software Engineer
1.5k
salaries
| ₹7.5 L/yr - ₹28 L/yr |
SAP
MongoDB
Salesforce
IBM