i
IBM
Proud winner of ABECA 2025 - AmbitionBox Employee Choice Awards
Filter interviews by
A stack can be implemented using a linked list by managing nodes for push and pop operations.
Define a Node class with data and a pointer to the next node.
Create a Stack class with a head pointer to the top node.
Implement push method to add a new node at the head.
Implement pop method to remove the head node and return its value.
Check for underflow condition when popping from an empty stack.
Oops concepts refer to Object-Oriented Programming concepts which include inheritance, polymorphism, encapsulation, and abstraction.
Inheritance: Allows a class to inherit properties and behavior from another class.
Polymorphism: Allows objects to be treated as instances of their parent class.
Encapsulation: Bundling data and methods that operate on the data into a single unit.
Abstraction: Hides the complex implement...
Namespace in Python is a way to organize and group related code together.
Namespaces help avoid naming conflicts by providing a unique space for each identifier
Python uses dictionaries to implement namespaces
There are two types of namespaces in Python: local namespace and global namespace
Scope in Python refers to the visibility of variables within a program.
Scope determines where in a program a variable is accessible.
There are four types of scope in Python: local, enclosing, global, and built-in.
Variables defined inside a function have local scope and are only accessible within that function.
Global variables are accessible throughout the entire program.
Enclosing scope refers to variables defined i...
What people are saying about IBM
Iterate through the array to find the 2nd largest element without sorting.
Iterate through the array and keep track of the largest and second largest elements.
Compare each element with the current largest and second largest elements to update them accordingly.
Handle edge cases like duplicates and empty arrays.
Python supports both single-threaded and multi-threaded programming.
Python has a Global Interpreter Lock (GIL) which allows only one thread to execute Python bytecode at a time.
However, Python supports multi-threading through the 'threading' module which allows for concurrent execution of multiple threads.
For CPU-bound tasks, multi-threading in Python may not provide performance benefits due to the GIL.
For I/O-bou...
OOPs concepts are fundamental principles in object-oriented programming that help in organizing and designing code efficiently.
Encapsulation: Bundling data and methods that operate on the data into a single unit (class).
Inheritance: Ability of a class to inherit properties and behavior from another class.
Polymorphism: Ability to present the same interface for different data types.
Abstraction: Hiding the complex im...
Rotate the array by one place
Create a new array with the same length as the original array
Copy elements from the original array starting from index 1 to the new array
Copy the first element of the original array to the last index of the new array
Move all zeros in an array of strings to the end while maintaining the order of non-zero elements.
Iterate through the array and move all zeros to the end by swapping with non-zero elements.
Maintain two pointers, one for iterating through the array and another for placing non-zero elements.
Example: Input: ['a', 'b', 'c', '0', 'd', '0'], Output: ['a', 'b', 'c', 'd', '0', '0']
COND parameter in JCL is used to specify conditions for executing a job step based on the return code of a previous step.
COND parameter can be used to specify conditions like 'ONLY', 'EVEN', 'ONLY IF', etc.
Example: COND=(0,NE) means the step will only execute if the return code of the previous step is not 0.
I applied via Approached by Company and was interviewed in Dec 2024. There was 1 interview round.
Discussing a software project, focusing on challenges, technologies used, and outcomes.
Utilized Agile methodology for project management, ensuring flexibility and iterative progress.
Implemented RESTful APIs for seamless communication between front-end and back-end services.
Faced challenges with data migration; resolved by creating a robust ETL process.
Incorporated unit testing to enhance code quality, achieving over 90...
I appeared for an interview in Dec 2024.
I appeared for an interview in Jun 2025, where I was asked the following questions.
I ensure code quality and performance through best practices, testing, and continuous improvement techniques.
Follow coding standards and best practices, such as using meaningful variable names and consistent indentation.
Implement unit tests to validate individual components; for example, using JUnit for Java applications.
Conduct code reviews with peers to catch potential issues early and share knowledge.
Utilize perform...
I faced a critical memory leak in a web application, which I resolved through systematic debugging and code optimization.
Identified the memory leak using profiling tools like Chrome DevTools.
Narrowed down the issue to a specific component that retained references unnecessarily.
Refactored the component to use weak references and properly clean up event listeners.
Conducted extensive testing to ensure the fix did not intr...
I appeared for an interview in Jul 2025, where I was asked the following questions.
A transformer is a device that transfers electrical energy between two or more circuits through electromagnetic induction.
Transformers are used to increase or decrease the voltage in electrical circuits.
They consist of two coils of wire, known as the primary and secondary coils.
The primary coil is connected to a power source, while the secondary coil is connected to the load.
The changing magnetic field in the primary c...
Implementing a dynamic form in React JS to handle user input and validation.
Use controlled components to manage form state. Example: <input value={this.state.value} onChange={this.handleChange} />
Implement validation logic to ensure user inputs are correct before submission. Example: check if email is valid.
Utilize React hooks like useState and useEffect for managing state and side effects in functional component...
I applied via Campus Placement and was interviewed in Aug 2024. There were 3 interview rounds.
Good good good good goog fooof
I have a strong background in software development, with experience in various programming languages and a proven track record of delivering high-quality projects on time.
Extensive experience in software development
Proficient in multiple programming languages such as Java, Python, and C++
Strong problem-solving skills and ability to work well in a team
Proven track record of delivering high-quality projects on time
I applied via Campus Placement
Normal basic aptitude questions . overall easy
I am a software developer with 5 years of experience in Java, Python, and SQL.
5 years of experience in Java, Python, and SQL
Worked on developing web applications using Java Spring framework
Proficient in database management with SQL
Strong problem-solving skills and ability to work in a team environment
I am a software developer with 5 years of experience in Java, Python, and SQL.
5 years of experience in Java, Python, and SQL
Worked on developing web applications using Java Spring framework
Proficient in database management with SQL
Strong problem-solving skills in software development
I am passionate about creating innovative software solutions and contributing to a dynamic team.
Passionate about coding and problem-solving
Excited to work on challenging projects
Interested in collaborating with a talented team
Driven to learn and grow in the software development field
I applied via Company Website and was interviewed in Aug 2024. There was 1 interview round.
High level system design involves creating an overall architecture for a software system.
Identify the main components of the system
Define the interactions between components
Consider scalability, performance, and security
Use diagrams like UML to visualize the design
Some of the top questions asked at the IBM Software Developer interview -
The duration of IBM Software Developer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 113 interview experiences
Difficulty level
Duration
based on 448 reviews
Rating in categories
Application Developer
12.8k
salaries
| ₹5.2 L/yr - ₹27.1 L/yr |
Software Engineer
6.1k
salaries
| ₹8.1 L/yr - ₹25.5 L/yr |
Software Developer
6.1k
salaries
| ₹13.7 L/yr - ₹34.4 L/yr |
Senior Software Engineer
5.5k
salaries
| ₹14.3 L/yr - ₹30 L/yr |
Advisory System Analyst
4.6k
salaries
| ₹13.6 L/yr - ₹23 L/yr |
Oracle
TCS
Cognizant
Accenture