ORACLE IC2 (Applications Engineer) Interview Experience
Summary
I interviewed for the IC2 Applications Engineer role at Oracle and received an offer. The process involved a HackerRank online assessment, an onsite technical round, and a hiring manager discussion, covering data structures, algorithms, system design, and SQL.
Full Experience
My interview journey for the Applications Engineer IC2 position at Oracle began with a HackerRank Online Assessment. This round, lasting about an hour, included one medium difficulty DSA problem, several questions on trees, and some aptitude questions.
The second round was an onsite interview at Oracle's Bangalore office, which lasted approximately two hours. This round started with an in-depth discussion about my projects and previous experience. The interviewer then delved into a variety of technical questions, including the famous LeetCode problem 'Binary Tree Cameras,' how to implement authentication between two microservices, tricky SQL questions, understanding the 'merge' statement, database triggers, explaining sharding and partitioning, locking in SQL, and the 'with' clause. Since I mentioned JavaScript in my experience, there was also a JavaScript-based question. A medium-difficulty puzzle from GeeksforGeeks was also part of this round. Additionally, there were standard Spring Boot questions, covering different types of annotations, and questions about Tomcat and JVM.
Finally, I had the third round, which was with the Hiring Manager, conducted via a Zoom call for about an hour. This round focused heavily on project-based discussions. Questions related to Kafka and Redis were asked because I had mentioned them on my resume. There were also questions on basic encryption/decryption techniques and the differences between SSL and TLS. This round involved more project-related grilling. I was ultimately SELECTED for the role.
Interview Questions (11)
Explain and describe how to implement authentication between two microservices.
What is the MERGE statement in SQL and how is it used?
What is a database trigger and what are its applications?
Explain the concepts of sharding and partitioning in databases, including their differences and use cases.
Explain different types of locking mechanisms in SQL databases.
What is the WITH clause (Common Table Expression) in SQL and how is it used?
Explain what Apache Tomcat is and its role in web application deployment.
Explain what the Java Virtual Machine (JVM) is and its key components.
Explain basic encryption and decryption techniques.
Explain the differences between SSL and TLS protocols.