Summary
I interviewed for an SDE2 Java Backend Role at opentext. I successfully cleared the first technical round but was unfortunately rejected after the second, with HR citing 'weak Java' as the reason, a verdict I found surprising given my performance.
Full Experience
I initiated my application by cold emailing a recruiter, which led to an initial call to discuss basic details and schedule a Face-to-Face interview for a weekday.
Round 1 - Technical Round
This round thoroughly assessed my knowledge across various technical areas. I was asked to design a Singleton class, tackle a string-based Data Structures and Algorithms question (though I can't recall the exact problem), implement a multithreading concept, and answer several Java theoretical questions. Towards the end, I was given a classic puzzle: 'There are 100 doors, all open at the start. The 1st person goes to all multiples of one, toggling their state (closing open ones, opening closed ones). The 2nd person does the same for all multiples of two, and so on, up to 100 people. Which doors will be open at the end?' I was selected for the next round after this.Round 2 - Technical Round
This round delved deeper into implementation, focusing on my Java proficiency. I was given several questions to implement directly in Java. Following that, there were three DSA questions for which I provided pseudocode in C++, which the interviewer seemed to accept. Another puzzle was presented: 'Given two measuring cups, one 3L and another 5L, how would you measure exactly 4L of liquid?' I also answered some questions related to my resume. I distinctly remember answering all questions correctly and thoroughly.Verdict - Rejected
Despite my confidence in my answers, I was ultimately rejected. When I inquired about the reason, HR stated my 'Java was weak.' This surprised me greatly, as I felt I had performed well, particularly in the Java-specific questions. I suspect the rejection might have been due to me providing pseudocode in C++ for the DSA problems in the second round, as the interviewer did not specify Java for those questions initially. Nevertheless, it wasn't my day.Interview Questions (3)
Design a Singleton class in Java.
There are 100 doors, all of them are open at the start. Now, the 1st person goes to all multiples of one, toggling their state (closing open ones and opening closed ones). Then, the 2nd person goes to all multiples of two and does the same, and this continues up to 100 people. You have to tell which doors will be open at the end.
You are given two measuring cups, one 3L and another 5L. How would you measure exactly 4L of liquid using only these two cups?
Summary
I successfully navigated multiple technical rounds and a managerial interview for a Software Engineer role at OpenText in Hyderabad, ultimately receiving an offer.
Full Experience
I recently interviewed for the Software Engineer position at OpenText in Hyderabad. The interview process spanned two to three days and was structured into three main rounds: two technical rounds and one managerial round.
The first technical round focused heavily on coding and basic computer science concepts. I was asked to implement functions for string manipulation, solve a classic puzzle, and demonstrate SQL and OOPs knowledge. We also discussed my projects in detail.
The second technical round delved deeper into API design, problem-solving, and Spring Boot concepts. I had to design a RESTful API and solve another algorithmic problem involving numbers. Several questions were around Spring framework specifics and Git commands. Again, my projects were a point of discussion.
Finally, I moved to the managerial round, which consisted of typical behavioral questions to assess my fit with the team and company culture.
Overall, the interview process was comprehensive. I heard back from HR within a few days and was informed that I had received an offer.
Interview Questions (14)
Given a string, write a program to print K non-repeating characters.
Find the maximum length of a window (substring) in a given string that contains all unique characters.
Write a function to reverse an integer number using recursion.
Explain the core concepts of Object-Oriented Programming (OOPs) and provide a sample program demonstrating them.
Design a RESTful API to retrieve information for departments and employees.
Given a list of numbers from 1 to N, where two numbers are replaced with 0. Find those two missing numbers.
How can you initialize a static variable using Spring Boot during application startup?
Explain what a circular bean dependency is in Spring and how to resolve it.
Explain the concept of Dependency Injection.
What is the purpose of the @Value annotation in Spring and how is it used?
Explain the functionality and usage of the git stash command.
Explain the difference between new Integer() and Integer.valueOf() in Java.