i
IBS Software Services
Filter interviews by
I applied via Naukri.com and was interviewed in Sep 2024. There were 2 interview rounds.
Spring IOC containers are responsible for managing the instantiation of objects and their dependencies in a Spring application.
IOC stands for Inversion of Control, which means that the control of object creation is inverted from the application code to the Spring framework.
There are two main types of Spring IOC containers: BeanFactory and ApplicationContext.
BeanFactory is the simplest container, providing basic support...
Metaspace is a part of the Java HotSpot VM memory where class metadata is stored.
Metaspace replaces the permanent generation (PermGen) in Java 8 and later versions.
It is used to store class metadata such as class names, method names, field names, annotations, etc.
Metaspace is dynamically resized by the JVM based on the application's demand.
You can monitor Metaspace usage using tools like JConsole or VisualVM.
Predicate is a functional interface that represents a boolean-valued function, while Consumer is a functional interface that represents an operation that accepts a single input argument and returns no result.
Predicate is used for filtering elements based on a condition, while Consumer is used for performing actions on elements.
Predicate has a test() method to evaluate a condition, while Consumer has an accept() method ...
Java 8 stream based question
I applied via Referral and was interviewed in Jul 2024. There were 2 interview rounds.
Find min ,max and second largest (avoid duplicates)using streams
Checked exceptions are checked at compile time, while unchecked exceptions are not.
Checked exceptions must be either caught or declared in the method signature using 'throws'
Unchecked exceptions do not need to be caught or declared
Example of checked exception: IOException
Example of unchecked exception: NullPointerException
I appeared for an interview in Feb 2025.
I will have a coding test with a paper and pen that includes various questions on merging, arrays, and collections. Following that, there will be a technical interview focused on data structures and algorithms. I find the process to be quite lengthy, and I haven't been able to succeed.
I applied via Naukri.com and was interviewed in Feb 2024. There were 2 interview rounds.
Implementing Spring Security in a Spring Boot application involves configuring security settings and adding dependencies.
Add spring-boot-starter-security dependency in pom.xml
Create a class extending WebSecurityConfigurerAdapter to configure security settings
Use @EnableWebSecurity annotation to enable Spring Security
Define authentication and authorization rules in configure(HttpSecurity http) method
IBS Software Services interview questions for designations
I applied via Walk-in and was interviewed in May 2024. There was 1 interview round.
Count occurrence using hashmap
I applied via Naukri.com and was interviewed in Feb 2024. There was 1 interview round.
I applied via Referral and was interviewed in Sep 2022. There were 2 interview rounds.
Top trending discussions
To find the maximum length BST in a given binary tree.
Traverse the tree in post-order fashion
For each node, check if it satisfies the BST property
If it does, calculate the size of the BST rooted at that node
Keep track of the maximum size seen so far
Algorithm to find absolute max subsequence of an array with positive and negative numbers in O(n) time.
Initialize max_so_far and max_ending_here as 0
Loop through the array and for each element, add it to max_ending_here
If max_ending_here becomes negative, reset it to 0
If max_ending_here is greater than max_so_far, update max_so_far
Return max_so_far
Eliminate duplicates in an array of strings and print it in linear time complexity.
Use a hash set to keep track of unique elements
Iterate through the array and add non-duplicate elements to the hash set
Print the hash set elements to get the final array
Balancing of Btrees / AVL trees is important for efficient search and insertion operations.
Btrees and AVL trees are self-balancing binary search trees.
Balancing ensures that the height of the tree is minimized, leading to faster search and insertion operations.
Btrees are used in databases while AVL trees are used in memory.
Balancing is achieved by performing rotations and node splitting.
AVL trees have a stricter balanc...
139 teams in a knock-out tournament, find the number of matches to choose the champion.
In a knock-out tournament, each team plays only one match per round.
The number of matches required to choose the champion is one less than the number of teams.
Therefore, the number of matches required is 138.
My resume includes projects such as a web-based inventory management system and a mobile app for tracking fitness goals.
Developed a web-based inventory management system using PHP and MySQL
Created a mobile app for tracking fitness goals using React Native
Implemented RESTful APIs for communication between front-end and back-end
Utilized version control tools such as Git for collaborative development
Designed and implement...
Algorithm to mirror a given Binary Tree
Create a function to swap left and right child nodes of a given node
Recursively call the function on left and right child nodes
Base case: if node is null, return
Call the function on the root node of the binary tree
Find the next largest int with same number of 1's in binary.
Count the number of 1's in the binary representation of the given int.
Increment the given int until a number with the same number of 1's is found.
Return the next largest int with same number of 1's.
OOP concepts in Java
Encapsulation - hiding implementation details
Inheritance - creating new classes from existing ones
Polymorphism - ability of objects to take on multiple forms
Abstraction - focusing on essential features and ignoring the rest
Example: A Car class can inherit from a Vehicle class
Example: A Dog class can have a bark() method that overrides the Animal class's makeSound() method
Example: A Shape class can h...
Answering OOP Java design problems
Identify the problem domain and create a class hierarchy
Use encapsulation to hide implementation details
Apply inheritance to reuse code and create subtypes
Implement polymorphism to allow objects to take on multiple forms
Avoid tight coupling and favor composition over inheritance
Use design patterns to solve common problems
Consider SOLID principles for maintainable code
C++ is an extension of C with object-oriented programming features.
C++ supports classes and objects while C does not.
C++ has better support for polymorphism and inheritance.
C++ has a standard template library (STL) which C does not have.
C++ allows function overloading while C does not.
C++ has exception handling while C does not.
Inheritance is a mechanism in object-oriented programming where a new class is created by inheriting properties of an existing class.
Inheritance allows code reusability and saves time and effort in programming.
The existing class is called the superclass or parent class, and the new class is called the subclass or child class.
The subclass inherits all the properties and methods of the superclass and can also add its own...
Default constructor is provided by the compiler if no constructor is defined. Copy constructor creates a new object by copying an existing object.
Default constructor initializes member variables to default values.
Copy constructor creates a new object with the same values as an existing object.
Default constructor is called automatically by the compiler if no constructor is defined.
Copy constructor is called when an obje...
Access specifiers are keywords in object-oriented programming languages that determine the visibility and accessibility of class members.
Access specifiers are used to restrict access to class members.
There are three types of access specifiers: public, private, and protected.
Public members can be accessed from anywhere in the program.
Private members can only be accessed within the class.
Protected members can be accessed...
Library functions are pre-written code that can be reused to perform common tasks.
Library functions save time and effort by providing pre-written code.
They are often included in programming languages or external libraries.
Examples include functions for string manipulation, mathematical calculations, and file input/output.
Library functions can be called from within a program to perform specific tasks.
They can also be cu
DML is Data Manipulation Language used to manipulate data in a database. DLL is Data Definition Language used to define database schema.
DML is used to insert, update, delete data in a database.
DLL is used to create, alter, drop database objects like tables, views, indexes.
DML statements include INSERT, UPDATE, DELETE.
DLL statements include CREATE, ALTER, DROP.
DML affects data in a database, DLL affects the structure of
Primary key uniquely identifies a record in a table, while unique key ensures that all values in a column are distinct.
Primary key can't have null values, while unique key can have one null value.
A table can have only one primary key, but multiple unique keys.
Primary key is used as a foreign key in other tables, while unique key is not.
Example: Primary key - employee ID, Unique key - email address.
A stack is a data structure that follows the Last-In-First-Out (LIFO) principle.
Elements are added to the top of the stack and removed from the top.
Common operations include push (add element) and pop (remove element).
Stacks can be implemented using arrays or linked lists.
Examples include the call stack in programming and the undo/redo feature in text editors.
Assembly is a low-level programming language that is used to write programs that can directly interact with computer hardware.
Assembly language is specific to a particular computer architecture.
It is a low-level language that is difficult to read and write.
Assembly language programs are faster and more efficient than programs written in high-level languages.
Examples of assembly language include x86, ARM, and MIPS.
Assem...
Class access modifiers are keywords used to control the visibility and accessibility of class members.
There are four access modifiers in Java: public, private, protected, and default
Public members can be accessed from anywhere
Private members can only be accessed within the same class
Protected members can be accessed within the same class, subclasses, and same package
Default members can be accessed within the same packa
Serialization is the process of converting an object into a format that can be stored or transmitted.
Serialization is used to save the state of an object and recreate it later.
It is commonly used in network communication to transmit data between different systems.
Examples of serialization formats include JSON, XML, and binary formats like Protocol Buffers.
Deserialization is the opposite process of converting serialized
Normalisation is the process of organizing data in a database to reduce redundancy and improve data integrity.
Normalisation helps to eliminate data redundancy and inconsistencies
It ensures that each piece of data is stored in only one place
It helps to improve data integrity and accuracy
It makes it easier to maintain and update the database
There are different levels of normalisation, each with its own set of rules and g
Truncate removes all data from a table while Delete removes specific data from a table.
Truncate is faster than Delete as it doesn't log individual row deletions.
Truncate resets the identity of the table while Delete doesn't.
Truncate can't be rolled back while Delete can be.
Truncate doesn't fire triggers while Delete does.
DBMS is a software system to manage databases while RDBMS is a type of DBMS that uses a relational model.
DBMS stands for Database Management System while RDBMS stands for Relational Database Management System.
DBMS can manage any type of database while RDBMS uses a relational model to manage data.
DBMS does not enforce any specific data model while RDBMS enforces a relational data model.
Examples of DBMS include MongoDB, ...
Recursion function is a function that calls itself until a base condition is met.
Recursion is a technique used to solve problems by breaking them down into smaller sub-problems.
It involves a function calling itself with a modified input until a base case is reached.
Recursion can be used to solve problems such as factorial, Fibonacci series, and binary search.
Recursion can be implemented using loops as well, but it may ...
based on 7 interviews
1 Interview rounds
based on 4 reviews
Rating in categories
Senior Software Engineer
600
salaries
| ₹4 L/yr - ₹14 L/yr |
Software Engineer
403
salaries
| ₹2.4 L/yr - ₹10.2 L/yr |
Technical Lead
283
salaries
| ₹5.4 L/yr - ₹21 L/yr |
Solution Architect
210
salaries
| ₹8 L/yr - ₹30.6 L/yr |
Solution Engineer
203
salaries
| ₹3 L/yr - ₹7.5 L/yr |
KPIT Technologies
Thomson Reuters
Oracle Cerner
NextComm Corporation