Get free ebooK with 50 must do coding Question for Product Based Companies solved
Fill the details & get ebook over email
Thank You!
We have sent the Ebook on 50 Must Do Coding Questions for Product Based Companies Solved over your email. All the best!

IBM Interview Questions

Last Updated on February 8, 2023 by Prepbytes

Even while enterprises in the information technology or IT sector have expanded tremendously recently, very few of them are able to provide their employees with long-term employment. For this reason, people want to work for reputable firms. Being affiliated with a brand gives you confidence that your career is on the correct track and may allow you to maintain your job with some level of job security. People believe that working with IBM would allow them to advance in their professions while also preserving a positive work-life balance. IBM is one of the biggest IT companies in the world which hires thousands of people in a year.

About IBM

IBM, also known as International Business Machines Corporation, is a multinational technology company based in Armonk, New York. It was founded in 1911 and has since grown to become one of the largest technology companies in the world, with operations in over 170 countries.

IBM’s early years were marked by growth and expansion, as the company produced a wide range of products including time-keeping machines, punched card tabulating machines, and electro-mechanical calculators. The company’s main source of revenue was punched card data processing and tabulation, which was used for a variety of applications, including census analysis, record-keeping, and scientific calculations.

In the 1950s and 60s, IBM expanded into new markets and introduced new products, including the IBM 700 series mainframe computers, which were used by businesses and governments worldwide. During this time, the company also developed and sold computer software, including the widely-used COBOL programming language.

In the 1970s and 80s, IBM continued to grow and innovate, with a focus on developing new computer technologies and expanding into new markets. The company introduced the IBM PC in 1981, which quickly became the standard for personal computing, and developed the OS/2 operating system and other software products.

In the 1990s, IBM faced challenges from new competitors in the computer industry, including the rise of personal computers and the Internet. The company responded by transforming itself into a provider of information technology services, such as consulting, outsourcing, and cloud computing. This shift allowed IBM to continue to grow and remain a leading player in the technology industry.

In recent years, IBM has continued to focus on its core businesses, including cloud computing, artificial intelligence, quantum computing, and cybersecurity. The company has also acquired several smaller technology companies to enhance its offerings and expand its reach in these markets.

IBM is well-known for its strong corporate culture and commitment to social responsibility. The company has a long history of investing in research and development and has been awarded thousands of patents for its innovations. IBM is also known for its support of diversity and inclusion initiatives, and for its commitment to environmental sustainability.

IBM Recuirtement Process

Before directly moving to IBM interview questions first learn or have an idea about the IBM recruitment process, here we will discuss all the topics whether eligibility criteria, the interview process, and interview rounds, followed by IBM interview questions.

IBM Academic Eligibility Criteria

The academic eligibility criteria for IBM are simple as there are mainly two points that one needs to take care of.

  • Sixty-five (65) percent or above in Xth, XIIth, B.Tech.
  • There should not be any active backlogs at the time of the interview.

IBM Interview Process

Candidates have to go through four steps at IBM the steps can vary but they test the overall knowledge and personality of the candidate. These will comprise of various tests based to measure the technical and analytical abilities of the candidates. The four tests are as follows.

  • Cognitive Ability Assessment
  • Coding Round
  • Technical Interview
  • HR interview

All the above-mentioned four rounds are eliminative rounds one has to clear all four rounds to get placed in IBM.

IBM Interview Rounds

  • Cognitive Ability Assessments: Cognitive ability assessment is the process of evaluating a person’s mental capabilities and potential to learn and perform tasks. Cognitive assessments typically involve standardized tests, questionnaires, and tasks that measure different cognitive skills. Shortcuts, gridlock, and moving the blue marble to the stars are the goals here (here, the aim is to fill the given main area with the blocks given), Resemble (here, the purpose is to build a needed picture from a provided image after rotation) (here, the aim is to create a required image from a given image after rotation), Some of the humorous games that are typically included in this round are Numbubbles (where the objective is to pop the bubbles whose sum equals the given target) and Tally Up (where the objective is to determine whether the left-hand side calculation is equal to, greater than, or less than the right-hand side calculation). You might need to attend a WebEx conference for this round so that a proctor can see the candidates play the games. The result for this round is generally released within an hour and only the qualified candidates will get the link to the other round.
  • Coding Round: The IBM interview procedure includes a dynamic coding round. It may contain 1 to 4 coding-related questions. The time allocated for these varies depending on how many questions need to be answered. In general, 30 to 45 minutes are allocated for 1 to 2 questions, whereas 1 hour to 2 hours may be allotted for 3 to 4 questions. This phase focuses on evaluating the candidate’s coding abilities and familiarity with different data structures and methods. You may write code in any of the popular programming languages today, most notably C, C++, Java, and Python. The candidate must have a good grasp of Data structure and algorithms and can be able to solve new problems.
  • Technical Interview: Candidates who pass the online test will receive an invitation to a face-to-face technical interview. Technical interviews are conducted to assess your technical abilities, which are typically specific to the position you are looking for, as well as to discover how you think, solve issues, and handle pressure. Additionally, the interviewer will evaluate your capacity for problem-solving. You’ll be questioned about your prior work, professional experiences, and accomplishments as well as how you utilized technology. Learn the foundational concepts of computer science to get ready. A minimum of one of the contemporary programming languages, such as C, C++, Java, or Python, should be mastered by the candidate. You may anticipate getting inquiries on the fundamentals of computers as well. Object-Oriented Programming Systems (OOPs), DataBase Management Systems (DBMS), Computer Networks (CN), Computer Organization and Architecture (CoA), and Operating Systems are the areas from which you should expect the majority of the questions (OS). The number of technical interviews you receive will depend on your performance in earlier rounds, your job description, your qualifications, and the requirements of the company. Typically, there will be two rounds of technical interviews for each applicant.
  • HR interview: Candidates that pass the technical interview will move on to the HR phase. The primary goal of an HR interview is to examine a candidate’s personality, background, strengths, and weaknesses in order to determine whether or not they are a good match for a particular role. Being well-prepared is therefore essential for the HR interview. Check your resume to make sure all relevant personal information is included and that the information is true to the best of your knowledge. They can also challenge IBM’s past, including its founding date, objectives, convictions, and organizational structure. Get ready to respond to any questions that could be asked regarding your resume. The candidate must explain his interest properly in this round.

IBM Interview Questions: Cognitive Assessments

Here we will discuss the aptitude, reasoning, and some of the English IBM interview questions which together come in cognitive assessments.

1. What may be the main interest if, over a lengthy period of time, a certain amount of money earned dividends totaling Rs. 993 at a rate of 10% annually?
Ans: 900

2. A number whose fourth part is lessened by 5 is equal to the fifth part expanded by 5.
Ans: 200

3. If 20 men in 6 days can construct a divider of 112 meters in length so what will be the length of a comparable divider constructed by 25 men in 3 days?
Ans: 70 meters

4. For an 800 cc engine to travel 600 kilometers, 60 gallons of fuel are needed. If the amount of fuel needed to travel a distance fluctuates according to the motor’s capacity, then how many liters of diesel is needed to go 800 km using a 1200 cc engine?
Ans: 120 Liters

5. Choose the next number of the pattern 1,4,9,16,___.
Ans: 36. As all are perfect squares and the next perfect square is 36.

6. Find the wrong number from the given pattern. 7, 13, 25, 49, 97, 194, 385.
Ans: 194

7. A completes the work in 28 days and B completes the same work in 40 days. What will be the total time needed if both A and B work together on the same project?
Ans: 16 days

8. A 125 m long train is running at the speed of 50Km/hr. After what time it will pass the man running at the speed of 5km/hr in the same direction in which the train is moving?
Ans: 10 sec.

9. A is twice fast as B is thrice fast as B. C completes the journey in 42 min so what will be the time taken by A to complete the journey?
Ans: 17 min.

10. What is the antonym of the word VISIONARY?
Ans: The antonum of the word VISONARY is PRAGMATIST.

IBM Interview Questions: Technical Round + Coding

In this section, we will discuss the IBM interview questions related to the technical domain comprising various technical subjects like Operating systems, DBMS.etc. along with the technical domain, we will also discuss various IBM interview questions for coding profiles.

1. What are deadlock, faulting, and paging?
Ans: Deadlock: A deadlock is a state in which two or more processes are blocked and waiting for each other to release a resource, forming a cycle and causing each other to wait indefinitely.

Faulting: Faulting, also known as page fault, refers to a process in which the operating system replaces a page of memory that is no longer in use with a page that is needed. This is used to manage virtual memory in operating systems and can help the system to run more efficiently by freeing up memory resources.

Paging: Paging is a memory management technique used by operating systems to manage virtual memory. In paging, the physical memory is divided into equal-sized pages and the operating system maps each logical address to a physical memory page. This allows the system to efficiently allocate and manage memory resources by temporarily transferring pages from main memory to disk when they are not needed, and loading them back into memory when they are needed again.

2. What is Virtual Memory?
Ans: Virtual Memory is a feature of an operating system that enables a computer to compensate for shortages of physical memory by temporarily transferring data from RAM to disk storage. It does this by creating a virtual address space, which is a space of memory addresses that can be used by the operating system and programs, even though the memory addresses may not correspond to physical memory. When a program needs to access memory, the operating system checks the physical memory and if the data is not there, it is temporarily transferred from the hard drive to physical memory. This allows the system to run multiple programs simultaneously, even if the programs require more memory than is physically available in the system. By using virtual memory, the operating system can manage the memory resources more efficiently, and improve the overall performance of the system. Virtual memory can be thought of as a type of "overflow" area for the physical memory, which can help to prevent the system from crashing due to memory shortages.

3. What is Process Scheduling?
Ans: Process Scheduling is a core component of operating systems that determines which process should be executed by the CPU next and for how long. It’s responsible for allocating the resources of the system, such as the CPU, memory, and I/O devices, to processes in a way that maximizes the overall performance and responsiveness of the system. There are different algorithms used for process scheduling, such as First Come First Serve (FCFS), Shortest Job First (SJF), Priority Scheduling, Round Robin (RR), and Multi-Level Queue Scheduling. The scheduling algorithm determines the priority of processes and allocates the CPU accordingly. The goal of process scheduling is to provide a fair and efficient allocation of resources, allowing multiple processes to run concurrently and ensuring that the system remains responsive and reliable.

4. Write some advantages of inheritance in OOPs.
Ans: Inheritance is a fundamental concept in object-oriented programming (OOP) and provides several benefits, including:

  • Code Reusability: Inheritance allows new classes to be created by inheriting properties and methods from existing classes, which can save time and effort in writing new code.
  • Increased Modularity: Inheritance promotes code modularity by allowing classes to be organized into a hierarchy, making it easier to understand and maintain the code.
  • Improved Abstraction: Inheritance enables the creation of abstract classes that provide a high-level view of objects, hiding the details of their implementation.
  • Polymorphism Support: Inheritance allows objects of different classes to be treated as objects of the same type, enabling polymorphism and making it easier to write generic code.
  • Better Decoupling: Inheritance decouples a subclass from its parent class, allowing changes to be made to the parent class without affecting the subclass.

5. What is variable Scope?
Ans: Variable scope refers to the region of a program in which a variable can be accessed and modified. The scope of a variable determines where in the program the variable can be used and how long it will exist. There are two main types of variable scope: local scope and global scope.

Local scope refers to the area within a function or block of code in which a variable is declared and can be used. Local variables are only accessible within the function or block in which they are declared and are destroyed when the function or block ends.

Global scope refers to the area outside of any functions or blocks in which a variable is declared and can be used throughout the entire program. Global variables are created when the program starts and exist until the program ends.

It’s important to understand the scope of variables in a program because it affects the way that variables can be accessed and modified, and can impact the stability and reliability of the program. For example, if a local variable with the same name as a global variable is declared within a function, it will temporarily shadow the global variable and cause any changes to the local variable to have no effect on the global variable.

6. What is OODBMS?
Ans: An Object-Oriented Database Management System (OODBMS) is a type of database management system that uses object-oriented programming concepts, such as inheritance, encapsulation, and polymorphism, to model and store data. Unlike traditional relational database management systems, which store data in tables and use structured query language (SQL) to access the data, OODBMS uses objects, classes, and methods to represent data and relationships.

OODBMS provides a more natural way of modeling complex data structures and relationships, allowing data to be stored and retrieved in a way that closely matches the real-world objects and concepts being represented. This makes it well-suited for applications that require complex and flexible data models, such as multimedia applications, scientific simulations, and engineering design tools.

OODBMS also provides improved performance and scalability, as objects can be stored and retrieved in a way that avoids the need for expensive join operations or complex indexing strategies. This makes OODBMS particularly well suited for large-scale and data-intensive applications, where the performance and scalability of the underlying database management system is critical.

7. Mention the purpose of the SUDO command.
Ans: The purpose of the sudo command is to provide a secure way to execute a command with administrative or superuser privileges. The sudo command stands for "SuperUser DO" and allows regular users to execute commands with elevated privileges, without having to log in as the root user.

The main purpose of the sudo command is to allow regular users to perform administrative tasks that require elevated privileges, such as installing software, changing system settings, or managing users and groups. By using the sudo command, system administrators can control which users have access to perform these tasks and can easily revoke these privileges if necessary.

The sudo command provides an additional layer of security by requiring users to enter their own passwords before executing a command with administrative privileges. This helps to prevent unauthorized access and ensures that only trusted users have the ability to perform sensitive tasks on the system.

8. Give some of the functions of the operating system.
Ans: The operating system (OS) is a critical component of a computer system that acts as an intermediary between hardware and software, providing a range of functions to support the efficient and effective execution of software applications. Some of the key functions of the operating system include:

  • Resource Management: The OS manages the system’s resources, including CPU time, memory, and input/output devices, to ensure that applications run efficiently and without interfering with each other.
  • Memory Management: The OS manages the allocation and deallocation of memory to different applications and processes, ensuring that each application has the memory it needs to run smoothly.
  • File Management: The OS provides a file system that organizes files and directories, allowing applications to read and write data to disk.
  • Process Management: The OS schedules and manages the execution of applications and processes, ensuring that each process gets the resources it needs to run efficiently.
  • Networking: The OS provides the underlying infrastructure for communication between computers, including support for network protocols and the management of network interfaces.

9. What is the difference between primary and secondary memory in the context of computers?
Ans: Primary memory and secondary memory are two types of memory in a computer system that differ in terms of speed, cost, and volatility.

Primary memory, also known as main memory or RAM (Random Access Memory), is a fast, temporary, and expensive type of memory that stores data and programs while they are being executed. RAM is an essential component of the computer system and is responsible for providing quick access to frequently used data.

Secondary memory, on the other hand, is slower, larger, and less expensive than primary memory, but is also non-volatile, meaning it retains data even when the power is turned off. Examples of secondary memory include hard disk drives (HDD), solid-state drives (SSD), and USB drives. Secondary memory is used to store data and programs that are not currently in use but can be quickly loaded into RAM when needed.

10. In the context of the operating system explain threads and processes.
Ans: In the context of the operating system, threads, and processes are two distinct concepts that are used to manage the execution of software applications.

A process is an instance of a program that is running on a computer. It is a self-contained execution environment that includes its own memory space, system resources, and file handles. Each process runs independently of other processes and has its own unique process ID.

A thread, on the other hand, is a lightweight unit of execution within a process. Each process can have multiple threads, and each thread runs in its own memory space within the process. Threads share the same system resources, including memory, and can communicate with each other to coordinate their execution.

11. In the context of OOPs explain entry controlled loop.
Ans: In the context of Object-Oriented Programming (OOP), an entry-controlled loop is a type of loop that is executed only if a certain condition is met at the start of the loop. The loop continues to run as long as the condition remains true, and it stops executing when the condition becomes false.

The main advantage of using an entry-controlled loop is that it allows you to control the execution of the loop based on a specific condition, rather than just a fixed number of iterations. For example, you can use an entry-controlled loop to iterate over a list of objects and perform a specific action for each object, but only if the object meets certain criteria.

In OOP, entry-controlled loops are often implemented using conditional statements, such as an if statement, combined with a loop construct, such as a for loop or a while loop.

12. What is SDLC(Software Development Life Cycle)?
Ans: Software Development Life Cycle (SDLC) is a systematic approach to software development that outlines the stages involved in creating a software product, from the initial idea to the final product release. SDLC provides a structured framework for organizing and managing the software development process and helps ensure that the software is developed in a controlled, consistent, and reliable manner.

The SDLC model helps ensure that the software development process is well-planned, organized, and controlled and that the end product meets the needs of the stakeholders. The specific SDLC model used can vary depending on the size and complexity of the project, the development methodologies being used, and the organizational goals and constraints.

13. What do you understand by dangling else problem?
Ans: The "dangling else" problem is a common problem that occurs in programming languages when using if-else statements to control the flow of execution in a program. The problem arises when an else statement is not properly associated with the correct if statement, leading to unexpected results.

To avoid the dangling else problem, many programming languages use specific syntax or rules to ensure that the else statement is properly associated with the correct if statement. For example, some programming languages require the use of braces {} to group the statements within the if statement, while others use indentation to indicate the scope of the if statement.

14. What are the various condition for the deadlock to occur?
Ans: The following are the necessary conditions for deadlock to occur:

  • Mutual Exclusion: A resource is assigned to a single process at a time and cannot be shared by multiple processes.
  • Hold and Wait: A process holds a resource and is waiting for another resource that is being held by another process.
  • No Preemption: Resources cannot be forcibly taken away from a process, only released voluntarily by the process.
  • Circular Wait: There exists a circular chain of processes waiting for resources, such that each process is waiting for a resource that is held by the next process in the chain.

All four conditions must be present for the deadlock to occur. If any one of the conditions is not present, then deadlock cannot occur.

15. What is synchronization?
Ans: synchronization is a mechanism used in computer programming to coordinate the execution of multiple threads or processes to ensure that they access shared resources in a controlled and predictable manner.

Synchronization is necessary for situations where multiple threads or processes need to access the same resource, such as a shared data structure, at the same time. Without synchronization, it is possible for two or more threads or processes to access the shared resource simultaneously, leading to unpredictable and inconsistent results.

16. Find the index of the first 1 in a sorted array of 0s and 1s. It’s possible that the array is made up entirely of 1s or 0s. If there are no 1’s in the array, display "-1."


arr = {0, 0, 0, 0, 1, 1, 1}
Output :

Input :
Arr = {0, 0, 0, 0}
Output :

Ans: The C++ implementation of the above code is given below:

 #include <bits/stdc++.h>
using namespace std;
int findIndex(int arr[], int low, int high)
    while (low <= high) {
        int mid = low + (high - low) / 2;
         if (arr[mid] == 1 && (mid == 0 || arr[mid - 1] == 0))
            return mid;
         else if (arr[mid] == 1)
            high = mid - 1;
            low = mid + 1;
     return -1;
int main()
    int arr[] = { 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1 };
    int n = sizeof(arr) / sizeof(arr[0]);
    cout << findIndex(arr, 0, n - 1);
    return 0;



17. Write a program to convert the characters of a string into the opposite case, that is, if a character is a lowercase, convert it to uppercase and vice versa.

Input :
Output :

Input :
“Hello World”
Output :

Ans: The c++ implementation of the above problem is given below:

using namespace std;
 void changeCase(string& s)
    int len = s.length();
    for (int i = 0; i < len; i++) {
        if (s[i] >= 'a' && s[i] <= 'z')
            s[i] = s[i] - 32;
        else if (s[i] >= 'A' && s[i] <= 'Z')
            s[i] = s[i] + 32;
int main()
    string s = "prEPbYteS";
    cout << "Original String : " << s << "\n";
    cout << "Changed String : " << s << "\n";
    return 0;


Original String : prEPbYteS
Changed String : PRepByTEs

IBM Interview Questions: HR Round

In this section, we will discuss the IBM interview questions of the HR round as HR is the last round in the recruitment process and if the candidate makes a bad impression of himself in this round then there is a very high chance that he will be rejected no matter of his technical knowledge.

1. Tell me something about yourself?
Ans: The interviewer will ask the candidates to share a personal story as the first question during the interview. The solution is quite difficult even if it appears to be simple. Candidates should be able to respond to it in a way that will catch the interviewer’s attention. Describe your background, including your family, origins, schooling, projects completed during your academic year, internships held, and relatives. Include anything you wish to say. Additionally, put greater attention to the projects or your prior internship experience to provide context for your work.

2. Mention some of your strengths.
Ans: Strengths are nothing more than things that enable you to reach the goals you have set for yourself. Since no two people are alike, be sure to point out your unique qualities to them, such as your willingness to learn new things, your patience, your attention to detail while working, your ability to handle pressure, etc. Be careful to include instances when describing your strengths, such as a challenge you experienced and how you overcame it by utilising your talents.

3. Why do you want to join IBM?
Ans: Give an answer to this question that demonstrates your enthusiasm for IBM and your desire to work there. Focus on specifics like their work culture, work environment, and emphasis on employee growth, and express to them that this is why you are eager to join their great company so that you may be a member of their success team.

4. Do you have any hobbies and interests?
Ans: Typically, the interviewer will ask about your hobbies and how you make the most of your leisure time. This is merely a method for others to see that you are more than an academic and have interests outside of the classroom. By engaging in activities you enjoy or are interested in, you will come across as a motivated individual and demonstrate how easy it is to relieve tension from work for a little period of time. Candidates frequently discuss their hobbies, such as reading, playing cricket, dancing, and painting. Prepare yourself to respond to any questions the interviewer may have after asking these, such as what genre you prefer to read, what you like painting most, etc.

5. What is the difference between hard work and smart work?
Ans: Employers often want to select candidates who are proficient at their jobs and don’t require frequent instructions. People frequently claim that hard work is essential for long-term success, but what good is it if you put in lengthy hours of effort without seeing any results? Learning how to accomplish something quickly while using your full capacity is what smart employees do; they strive to make things simpler rather than more complicated. Therefore, in order to succeed, you must also work smartly in addition to hard.

IBM Interview Preparation Tips

Below we have discussed some of the important tips which a candidate should keep in mind and follow to get a better result after the interview.

  • Prepare to provide samples of your work or projects you’ve worked on. Keep your response to a maximum of two minutes to give the interviewer time to think about it and make a follow-up suggestion.
  • Be punctual.
  • Do a comprehensive investigation of the position and business.
  • Look at websites, news announcements, and reviews of the firm.
  • Become an authority on oneself.
  • Be able to discuss the information listed in your CV.
  • Prepare your questions in advance.
  • The motto of IBM is "Think, prepare, and rehearse." Consider doing some research about the position you are applying for.
  • Don’t be afraid to pose challenging queries.
  • Be genuine.
  • Be yourself and exude confidence.

FAQs Related to IBM Interview

1. How long is the total hiring process of IBM?
The hiring process at International Business Machines might take two weeks to 10 months. Due to the enormous number of applicants, the selection process for the top prospects takes a little longer.

2. Is the IBM interview easy or difficult?
The candidate’s comprehension of the fundamentals is the main emphasis of the IBM interview process. The appropriate preparation makes it easier to succeed in IBM interviews. Just go through the list of IBM interview questions and then you will have the idea of the difficulty level.

3. What is the salary for fresher in IBM?
The salary for fresher varies from 2.2 LPA to 7.3 LPA.

4. Does IBM only hire full time or do they hire interns also?
Yes, they hire both interns and full time.

Leave a Reply

Your email address will not be published. Required fields are marked *