0% found this document useful (0 votes)
3 views

Oracle Interview

The document outlines the interview process and technical questions for a Software Engineer position at Oracle, Bangalore, targeting candidates with 1-4 years of experience. Key topics include Java memory management, concurrency, microservices, database design, and API communication. It also provides quick tips for candidates to prepare effectively for the interviews.

Uploaded by

geetabishnoi0107
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Oracle Interview

The document outlines the interview process and technical questions for a Software Engineer position at Oracle, Bangalore, targeting candidates with 1-4 years of experience. Key topics include Java memory management, concurrency, microservices, database design, and API communication. It also provides quick tips for candidates to prepare effectively for the interviews.

Uploaded by

geetabishnoi0107
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

LinkedIn: https://www.linkedin.

com/in/bishnoisuresh/

Company : Oracle, Bangalore


Role : Software Engineer
Experience Range : 1 - 4 Years
Interview Process : Phone Screening + Online Assessment Test + Two Technical Inteviews
Quick Tips : Be prepared to explain the current project and what impact you made.

Questions asked in tech rounds:


1. What is the difference between ConcurrentHashMap and Collections.synchronizedMap()?
Hint: Think about thread safety and performance under heavy concurrency.

2. Explain how Java manages memory. What is the role of the heap and stack?
Hint: Stack is for method calls and local variables; the heap stores objects.

3. What is the difference between Callable and Runnable in Java?


Hint: One returns a result, and the other does not.

4. What are weak references in Java, and where are they used?
Hint: Useful for memory-sensitive caches, where the object can be garbage collected.

5. How does the volatile keyword ensure thread safety?


Hint: Prevents caching of variable values, ensuring all threads see the latest value.

6. Explain the significance of immutability in Java and how to create an immutable class.
Hint: No setter methods, use final variables, and ensure deep copies for mutable fields.

7. What is the difference between Comparator and Comparable?


Hint: One customizes ordering externally, the other is built into the object.

8. What are some best practices for using the Stream API?
Hint: Avoid side effects, prefer immutability, and leverage parallel streams cautiously.

9. How does the Java Reflection API work, and when would you use it?
Hint: Inspect or modify classes, methods, and fields dynamically. Useful in frameworks.

10. What is the difference between the Fork/Join framework and the ExecutorService?
Hint: Think about task decomposition and parallelism.

11. How do you handle inter-service communication? Compare REST vs gRPC.


Hint: REST is human-readable, gRPC is more efficient but binary-based.

11. Explain how service discovery works (E.g., Eureka).


Hint: Services register themselves; clients query for service instances.

12. How do you secure a Microservices-based application (OAuth2, JWT)?


Hint: Access tokens verify authentication and authorization.

LinkedIn: https://www.linkedin.com/in/bishnoisuresh/
LinkedIn: https://www.linkedin.com/in/bishnoisuresh/

13. What is the role of a distributed tracing tool like Jaeger or Zipkin in Microservices?
Hint: Tracks requests across multiple services to debug performance bottlenecks.

14. How would you implement rate limiting in an API gateway?


Hint: Token buckets or leaky buckets can enforce limits on request rates.

15. Explain the concept of API versioning. How do you handle backward compatibility?
Hint: Use version numbers in URLs or headers, and deprecate old versions gracefully.

16. What is the Saga Pattern, and how is it used in Microservices?


Hint: Think about long-running transactions split into smaller, independent operations.

17. How do you monitor the health of Microservices?


Hint: Use health check endpoints and monitoring tools like Prometheus.

18. What are some strategies for logging in distributed systems? (E.g., Correlation IDs)
Hint: Correlation IDs link logs across services to trace workflows.

19. Explain the purpose of container orchestration tools like Kubernetes in Microservices.
Hint: Manages deployment, scaling, and load balancing of containerized applications.

21. How does indexing improve query performance? What are the trade-offs?
Hint: Speeds up lookups but increases storage and write overhead.

22. What are the differences between JOIN types in SQL?


Hint: INNER JOIN matches common rows; LEFT JOIN includes unmatched left rows.

23. Explain the differences between relational (SQL) and document-based (NoSQL) databases.
Hint: SQL is structured and relational; NoSQL is schema-less and flexible.

24. How does optimistic locking work? How does it differ from pessimistic locking?
Hint: Optimistic assumes no conflicts; pessimistic locks rows to prevent them.

25. What are the advantages of using partitioning in a database?


Hint: Think about data distribution and query performance on large datasets.

26. How would you design a database schema for a Microservices application?
Hint: Each service owns its data and uses its database for isolation.

27. What is a secondary index, and when would you use it?
Hint: Speeds up queries for non-primary key fields.

28. How does caching work in databases, and what are some tools to implement it?
Hint: Stores frequently accessed data in memory; tools include Redis, Memcached.

29. Explain database transactions and isolation levels.


Hint: Controls how transactions interact, from READ_UNCOMMITTED to SERIALIZABLE.

30. How do you migrate data between two database versions or structures without downtime?
Hint: Use blue-green deployments, shadow tables, or phased migration strategies

LinkedIn: https://www.linkedin.com/in/bishnoisuresh/

You might also like