i
Quest
Global
Filter interviews by
An interface in programming defines a contract for classes to implement, specifying methods and properties that must be included.
Interfaces in programming are used to define a set of methods and properties that a class must implement.
Interfaces provide a way to achieve polymorphism in programming languages.
Interfaces are similar to abstract classes but cannot contain any implementation code.
Classes can implement m...
The diamond problem occurs in multiple inheritance when a class inherits from two classes that share a common ancestor.
Involves ambiguity in method resolution when two parent classes have the same method.
Example: Class A has method 'foo', Class B and Class C both inherit from A and also define 'foo'.
When Class D inherits from both B and C, which 'foo' does D inherit?
Languages like C++ use virtual inheritance to re...
Singleton design pattern ensures a class has only one instance and provides a global point of access to it.
Ensures a class has only one instance
Provides a global point of access to that instance
Commonly used for logging, caching, database connections, etc.
Adaptive design pattern is a software design pattern that allows objects to change their behavior dynamically.
Adaptive design pattern involves creating objects that can change their behavior at runtime.
It allows for flexibility and adaptability in software systems.
Examples include Strategy pattern, State pattern, and Decorator pattern.
ArrayList is a dynamic array to store elements, while HashMap is a key-value pair collection.
ArrayList is ordered and allows duplicate elements, while HashMap is unordered and does not allow duplicate keys.
ArrayList uses indexes to access elements, while HashMap uses keys to access values.
Example: ArrayList<String> list = new ArrayList<>(); HashMap<String, Integer> map = new HashMap<>();
Yes, the final block will get executed even if an exception is thrown.
The final block will always get executed, regardless of whether an exception is thrown or not.
This is useful for releasing resources like closing files or database connections.
Example: try { // code that may throw exception } catch (Exception e) { // handle exception } finally { // final block always gets executed }
SQL queries are used to interact with databases, allowing data retrieval, manipulation, and management.
SELECT statement: Used to retrieve data from a database. Example: SELECT * FROM employees;
JOIN clause: Combines rows from two or more tables based on a related column. Example: SELECT a.name, b.department FROM employees a JOIN departments b ON a.dept_id = b.id;
WHERE clause: Filters records based on specified cond...
A custom exception class allows for specific error handling in applications, enhancing clarity and control over error management.
Define a class that extends the built-in Exception class.
Include a constructor to initialize error messages and other relevant data.
Override the __str__ method to provide a user-friendly error message.
Example: class CustomError(Exception): pass
Usage: raise CustomError('This is a custom e...
In Java, 'finally' is a block for cleanup, while 'finalize' is a method for garbage collection.
'finally' is used in try-catch blocks to execute code regardless of exceptions.
Example of 'finally': try { // code that may throw exception } catch (Exception e) { // handle exception } finally { // cleanup code }
'finalize' is a method in the Object class that is called by the garbage collector before an obje...
DB query to find duplicates in a table, keeping first duplicate in answer.
Use GROUP BY clause to group the records by the column(s) that may have duplicates
Use HAVING clause to filter out groups with only one record
Use MIN or MAX function to select the first record in each group
Example: SELECT MIN(id), name, COUNT(*) FROM table GROUP BY name HAVING COUNT(*) > 1
I appeared for an interview in May 2025, where I was asked the following questions.
An interface in programming defines a contract for classes to implement, specifying methods and properties that must be included.
Interfaces in programming are used to define a set of methods and properties that a class must implement.
Interfaces provide a way to achieve polymorphism in programming languages.
Interfaces are similar to abstract classes but cannot contain any implementation code.
Classes can implement multip...
Node.js is an open-source, cross-platform JavaScript runtime environment that executes JavaScript code outside of a web browser.
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient.
It uses the V8 JavaScript engine from Google to execute code.
Node.js has a single-threaded event loop that allows handling multiple connections simultaneously.
It has a rich library of various JavaScrip...
I applied via Referral and was interviewed in Feb 2024. There was 1 interview round.
SQL queries are used to interact with databases, allowing data retrieval, manipulation, and management.
SELECT statement: Used to retrieve data from a database. Example: SELECT * FROM employees;
JOIN clause: Combines rows from two or more tables based on a related column. Example: SELECT a.name, b.department FROM employees a JOIN departments b ON a.dept_id = b.id;
WHERE clause: Filters records based on specified condition...
A custom exception class allows for specific error handling in applications, enhancing clarity and control over error management.
Define a class that extends the built-in Exception class.
Include a constructor to initialize error messages and other relevant data.
Override the __str__ method to provide a user-friendly error message.
Example: class CustomError(Exception): pass
Usage: raise CustomError('This is a custom error ...
In Java, 'finally' is a block for cleanup, while 'finalize' is a method for garbage collection.
'finally' is used in try-catch blocks to execute code regardless of exceptions.
Example of 'finally': try { // code that may throw exception } catch (Exception e) { // handle exception } finally { // cleanup code }
'finalize' is a method in the Object class that is called by the garbage collector before an object is...
Singleton design pattern ensures a class has only one instance and provides a global point of access to it.
Ensures a class has only one instance
Provides a global point of access to that instance
Commonly used for logging, caching, database connections, etc.
Adaptive design pattern is a software design pattern that allows objects to change their behavior dynamically.
Adaptive design pattern involves creating objects that can change their behavior at runtime.
It allows for flexibility and adaptability in software systems.
Examples include Strategy pattern, State pattern, and Decorator pattern.
I applied via Referral and was interviewed in Jan 2023. There were 2 interview rounds.
DB query to find duplicates in a table, keeping first duplicate in answer.
Use GROUP BY clause to group the records by the column(s) that may have duplicates
Use HAVING clause to filter out groups with only one record
Use MIN or MAX function to select the first record in each group
Example: SELECT MIN(id), name, COUNT(*) FROM table GROUP BY name HAVING COUNT(*) > 1
Code to map Employee Object from List to Hashmap using Stream API functions.
Create a List of Employee objects
Use stream() method to convert List to Stream
Use collect() method to convert Stream to HashMap
Use Collectors.toMap() method to create HashMap
Pass key and value mapping functions to toMap() method
MCDC is a testing technique to ensure all possible combinations of conditions are tested. Debugging involves identifying and fixing errors in the code.
MCDC stands for Modified Condition/Decision Coverage
It is a testing technique used to ensure all possible combinations of conditions are tested
Debugging involves identifying and fixing errors in the code
To debug an error, I first reproduce the error and then use debuggin...
I applied via Naukri.com and was interviewed before Nov 2023. There were 2 interview rounds.
C++ program to find unique string
The diamond problem occurs in multiple inheritance when a class inherits from two classes that share a common ancestor.
Involves ambiguity in method resolution when two parent classes have the same method.
Example: Class A has method 'foo', Class B and Class C both inherit from A and also define 'foo'.
When Class D inherits from both B and C, which 'foo' does D inherit?
Languages like C++ use virtual inheritance to resolve...
Top trending discussions
The duration of Quest Global Senior Software Engineer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 23 interview experiences
Difficulty level
Duration
based on 235 reviews
Rating in categories
Bangalore Rural
4-6 Yrs
Not Disclosed
5-8 Yrs
₹ 4.5-25 LPA
Senior Software Engineer
2.5k
salaries
| ₹4.9 L/yr - ₹20 L/yr |
Senior Engineer
2.1k
salaries
| ₹5 L/yr - ₹16 L/yr |
Software Engineer
1.8k
salaries
| ₹2.8 L/yr - ₹10 L/yr |
Lead Engineer
1.7k
salaries
| ₹7.8 L/yr - ₹25 L/yr |
Design Engineer
645
salaries
| ₹2.2 L/yr - ₹8.8 L/yr |
Genpact
DXC Technology
Sutherland Global Services
Optum Global Solutions