TL;DR: This guide explains Infosys interview questions, hiring rounds, and expectations. It is useful for freshers as well as experienced candidates. With focused preparation on basics, aptitude, and simple coding, you can approach Infosys interviews with better clarity and confidence.

Infosys interviews are an important milestone for candidates who want to begin or advance their careers in the IT industry. These interviews are designed to check how well you understand core concepts, approach problem-solving, and communicate your thoughts clearly. Along with academic knowledge, interviewers also look for logical thinking, basic coding skills, and the ability to handle real workplace situations with confidence.

Some of the key areas covered in Infosys interview questions include:

  • Core software concepts related to programming, databases, and system basics
  • Logical and coding-based problems that test thinking clarity and approach
  • Skill assessments based on numerical ability, reasoning, and language use
  • Interaction-focused rounds that explore mindset, teamwork, and career goals

In this article, you will explore Infosys company interview questions. You will get a practical idea of the questions asked to help you prepare with better clarity and confidence.

Infosys Hiring Flow and Rounds

Let’s first look at the hiring flow and rounds you’ll encounter when interviewing with Infosys:

  • Online Assessment Overview

The first step in the Infosys hiring flow is an online assessment test that serves as an initial filter for candidates. This exam usually includes questions on quantitative ability, logical reasoning, and verbal skills, and sometimes also includes pseudo-code or basic technical questions. The test is timed, with each section having its own allotted duration, and you must meet sectional cutoffs to move forward.

  • Technical Interview 

Once you finish the online assessment, the next step is the technical interview. Here, the interviewers check how well you understand things like data structures, algorithms, operating systems, databases, and object-oriented programming. They’ll also ask about your projects, how you approach problems, and how comfortable you are coding in your preferred language.

  • HR Interview 

The final round is usually with HR. This one is more about your attitude, communication, and whether you fit with the company culture. Expect questions about your career goals, why you want to join Infosys, your strengths and weaknesses, and personal experiences. It’s basically a way for recruiters to see if you’ll work well with the team.

Online Assessment: Aptitude Plus Basics Technical

Now that you know the interview rounds, let’s see the actual pattern of the online assessment that you’ll face in the written test phase:

Section

Number of Questions

Allotted Time

Quantitative Aptitude

10

25 minutes

Logical Reasoning

15

35 minutes

Verbal Ability

40

35 minutes

Total

65

95 minutes

Did You Know? The global full-stack development service market is experiencing massive growth, with projections indicating it will rise from USD 120.81 billion in 2025 to USD 592.25 billion by 2032, exhibiting a high CAGR of 25.49%. (Source: Research and Markets)

What is InfyTQ Certification?

InfyTQ is a certification from Infosys that looks at whether you’re ready for entry-level IT roles. It focuses on basic programming, simple database concepts, and logical thinking, with questions based on everyday technical tasks rather than heavy theory.

The real benefit is that it lines up closely with how Infosys hires. Scoring well shows you’ve got the fundamentals down and can handle training and early project work without too much struggle. That makes the first few weeks on the job a lot easier.

The best way to prepare is to keep things simple and steady. Go over basics like loops, conditions, and simple database queries, and try small problems each day instead of trying to learn everything at once. Pay attention to where you get stuck and work on those areas gradually, over time, your confidence will build naturally.

Enroll in the AI-Powered Full Stack Developer Masters Program and learn 15+ in-demand skills and 30+ AI-Powered tools. 💻

Infosys Interview Questions for Freshers and Experienced

A. Technical Fundamentals (OOPs, DBMS, OS, CN, SDLC, testing)

OOPs

Q1. What is an Object in OOPs? (Easy)

An object is a real-world entity represented in a program as an instance of a class. It contains attributes that describe its state and methods that define its behavior. For example, if you have a Car class, an actual car you interact with in the program is an object of that class. Objects occupy memory and can communicate with other objects through their methods, allowing the program to mimic real-world interactions.

Q2. What is a Class in OOPs? (Easy)

A class acts as a design reference for objects. It specifies the variables an object can store and the functions it can perform. The class itself does not allocate memory for these variables. Memory is assigned only when an object is instantiated from the class. In simple terms, a class defines the structure and behavior that every object created from it must follow.

Q3. What Are The Basic OOPs Principles? (Medium)

OOPs have four major basic principles:

  • Abstraction: The representation of essential properties without revealing the entire framework. Problems are solved at the 'abstract' or interface level
  • Encapsulation: Data and the corresponding code are 'encapsulated', that is, combined in a single unit called a class
  • Inheritance: The existing class properties are 'inherited' by the new child class. For example, if there are two separate child classes, such as 'Dog' and 'Cat', they can inherit properties, such as 'mammals' and 'pets', from the parent 'Animal' class
  • Polymorphism: It allows cross-movement between parent and child classes. It is implemented using overriding and overloading

Q4. How is method overloading different from method overriding? (Medium)

Overloading

Overriding

Method overloading occurs when two or more methods in the same class have the same name but different parameters, allowing the program to choose the right version at compile time

Method overriding happens when a child class provides its own implementation of a method defined in the parent class with the same name and parameters, which is resolved at runtime

Compile-time polymorphism

Run-time polymorphism

Overloading errors are caught during compilation

Overriding errors may appear only when the program is running

Q5. What is a constructor? (Easy)

A constructor is a special method in a class that is automatically called when an object is created. Its main purpose is to initialize the object’s attributes and prepare it for use. Constructors can be simple, with no parameters (default), or accept values (parameterized), but unlike normal methods, they do not have a return type.

Q6. Explain OOPs in Brief. (Medium)

Object-Oriented Programming (OOP) is a way of designing programs that models real-world entities as objects. Each object has states, represented by attributes, and behaviors, represented by methods. Classes serve as blueprints for objects, allowing programmers to organize code in a modular, reusable, and maintainable way. By using principles like encapsulation, inheritance, polymorphism, and abstraction, OOP makes programs easier to understand and extend.

Q7. Why should we use OOPs? (Medium)

Object-oriented programming is effective because it groups data and related behavior into well-defined units. Internal implementation details stay restricted, while only required operations are exposed. This structure reduces coupling, improves reuse, and makes large codebases easier to extend and maintain as requirements change.

Q8. What characterizes OOPs as a whole? (Medium)

The key features that define OOP include encapsulation, abstraction, inheritance, and polymorphism. Encapsulation combines data and methods into a single unit, while abstraction hides implementation details and exposes only essential functionality. Inheritance allows new classes to reuse properties and methods from existing classes, and polymorphism lets objects take multiple forms, making code more flexible and easier to extend.

Q9. Mention some limitations of OOPs. (Hard)

While OOP offers many benefits, it can lead to larger programs and slower performance than procedural programming. Designing an object-oriented system can be more complex and time-consuming, especially for beginners. It is not always the best choice for small or simple problems, and deeply understanding the concepts may require extra effort.

C / C++

Q1. Explain some important differences between C and C++. (Medium)

C is a procedural programming language focused on step-by-step instructions, whereas C++ is an object-oriented language that supports classes, objects, and other OOP principles. C++ can run almost all C code, but C cannot execute C++ code. Features like function and operator overloading are possible in C++, but not in C, and in C, the main function can be called from other functions, whereas in C++ it cannot.

Q2. What is the difference between C++ and Java? Which one do you think is better and why? (Medium)

C++ is usually chosen when you need tight control over how a program interacts with the system. Because of that, code written for one platform often needs to be modified to work on another. Java works differently. It runs on the JVM, so the same program can run on different systems without much effort, which is why many beginners find it easier to start with it. Both languages have their place. It really comes down to whether you care more about low-level control or about running the same code everywhere.

Q3. What different forms of data are there in C++? (Medium)

The four C++ data types are listed below:

  • Basic Data Type. Char, short, int, float, long, double, bool, etc., are some examples
  • Data Type that was derived. Examples include pointers, arrays, etc.
  • Enumeration Instance: enum
  • Data kinds that are user-defined. Structure, class, etc., are instances

Q4. Define class and object in C++. (Medium)

A class is a user-defined data type that contains variables and functions to represent the state and behavior of an entity. An object is an instance of a class that holds actual values for these variables and can perform the operations defined by the class. For example, if Employee is a class, an actual employee record in the program is an object of that class.

Q5. What distinguishes a class from a struct? (Easy)

 In C++, a class is primarily used for object-oriented programming and its members are private by default. It supports features like inheritance and encapsulation. A struct, by contrast, is used for simple data storage, its members are public by default, and it does not inherently support inheritance or other OOP features.

DBMS / SQL

Q1. What various SQL subsets are there? (Medium)

  • Data Definition Language (DDL) allows you to create, modify, and remove objects in the database, among other activities
  • Access and manipulate data using the Data Manipulation Language (DML). You can use it to access, update, remove, and put data into the database
  • You can manage database access using the Data Control Language (DCL). Example: Permission to grant and revoke access

Q2. What distinguishes SQL and MySQL from one other? (Medium)

SQL (Structured Query Language) is a language used to manage and query relational databases, while MySQL is a database management system that uses SQL to store and retrieve data. Essentially, SQL is the language, and MySQL is the software that implements a database using that language.

Q3. What is a database schema? (Easy)

The database schema represents the overall logical framework of a database. It is an abstract structure made in one of the formal languages accepted by the database.

Q4. What are clustered indexes? (Medium)

A clustered index is used to define the order in which the data will be tangibly stored in the table. If you add a primary key to a table, it automatically becomes a clustered index,

Q5. What are SQL triggers? (Medium)

An SQL trigger is an object that raises an alarm when something happens in a database. For example, a trigger can be set to record the deletion of an entry from the database.

Computer Networks / SDLC / Testing

Q1. What is the difference between a session and a socket? (Medium)

A session is a logical connection established between the source and the destination. A socket is the physical apparatus (an IP address and Port Number) used to implement a session.

Q2. What is the difference between TCP and UDP? (Medium)

TCP (Transmission Control Protocol) is a connection-oriented protocol that ensures data is delivered in order and without errors, making it reliable but slightly slower. UDP (User Datagram Protocol) is connectionless, faster, and simpler, but it does not guarantee that data will arrive in order or even reach its destination. TCP is used for web browsing and email, whereas UDP is often used for streaming, gaming, and voice calls, where speed is more critical than reliability.

Q3. What is SDLC (Software Development Life Cycle)? (Medium)

An SDLC presents the software life cycle in a diagrammatic form. It displays the software's methods for its complete development, maintenance, requirement analysis, etc.

Q4. What are the disadvantages of the waterfall model? (Medium)

The waterfall model is a traditional software development approach where each phase must be completed before the next begins. Its main disadvantages are a lack of flexibility to accommodate changes, delayed testing until the end of development, and late user feedback. This can lead to higher costs and effort if changes are needed after development is complete.

Q5. Explain a network and node. (Easy)

A network is a collection of gadgets linked together via a physical transmission. A node is another word for a device connected to a network. If two PCs, two machines, and a web server are all linked to a network, we may say there are five nodes within the network.

Q6. What are the various testing techniques? (Medium)

The following are the three different types of software testing:

  • Black-box Testing is a testing approach that only relies on specifications and requirements. This approach does not call for any understanding of the internal structures, routes, or implementations of the software being examined
  • White box testing is a testing method that examines the internal code, execution, and integration routes of the software under test. White box testing typically calls for in-depth programming abilities
  • When using the gray box testing technique to debug software, the tester has little access to the program's internal workings

Q7. What do software testing verification and validation entail? (Medium)

Verification is about checking whether the software was built according to the plan. It usually happens through reviews, inspections, or walkthroughs, without running the code. Validation is different. It focuses on whether the software actually works when you use it, which means running the code and testing it. When both are done properly, you know the product is built the right way and also does what users expect.

Q8. What varieties of networks are there? Briefly describe each. (Medium)

Networks come in four main categories.

  • PAN- The smallest and most basic network form, a personal area network, is frequently used at home. It is a link between a computer and a different gadget, such as a telephone, printer, broadband, iPad, etc.
  • LAN- Local Area Network links a few computers together in office spaces and Coffee shops. They are typically used to play games or transfer files via a network.
  • MAN- A more robust network type than LAN is the metropolitan area network (MAN). The MAN service area includes a small city, town, etc. A massive server is utilized to cover such a vast area for connection.
  • WAN- Wide Area Network is more intricate than LAN(Local Area Network) and generally spans a considerable physical distance. The largest WAN that is globally distributed is the Internet. It has a distributed ownership rather than single ownership by an organization.

Java

Q1. How is polymorphism implemented in Java? (Medium)

Polymorphism can be implemented either through overloading at compile-time or overriding at run-time. (Continue by elaborating on the differences between overloading and overriding).

Q2. What is the difference between Stack and heap memory? (Medium)

Stack memory is used to store local variables and function calls, and its memory is automatically released when a function ends. Heap memory is used to store objects created dynamically using new, and the memory remains allocated until it is cleared by the garbage collector. A stack is faster but limited in size, while a heap can store larger amounts of data but with slightly slower access.

Equip yourself with real-world development experience to tackle even the toughest interview questions. Join the AI-Powered Full Stack Developer Program now!💻

B. Coding Questions (Swap, Prime, Sorting, Arrays, Strings)

For Beginners

Q1. Write a program to check if a number is prime. Use 17 as an example. (Medium)

A prime number is any number bigger than 1 that you can only divide evenly by 1 and itself. To check if a number is prime, you just try dividing it by numbers from 2 up to one less than the number. If none of them work, then it’s prime.

Logic:

  • Initialize count to 0
  • For each i from 2 to number - 1, check if number % i == 0
  • If any division is exact, increment count
  • If count remains 0 after the loop, the number is prime; otherwise, it is not prime

Python Code:

number = 17
count = 0
for i in range(2, number):
   if number % i == 0:
       count += 1
if count == 0:
   print(f"{number} is a prime number")
else:
   print(f"{number} is not a prime number")

Q2. Write a program to reverse a string input by the user. Use “INFY” as an example. (Easy)

To reverse a string, read it from the last character to the first. For "INFY", the reversed string becomes "YFNI".

C Code:

#include <stdio.h>
#include <string.h>
int main() {
   char str[] = "INFY";
   int len = strlen(str);
   printf("Reversed string: ");
   for(int i = len - 1; i >= 0; i--) {
       printf("%c", str[i]);
   }
   printf("\n");
   return 0;
}

Q3. Write a program to find the factorial of a number using a loop. Use 5! as an example. (Medium)

The factorial of a number n is the product of all positive integers up to n. For 5!, it is 1×2×3×4×5 = 120.

Python code:

num = 5
result = 1
for i in range(1, num + 1):
   result *= i
print(f"Factorial of {num} is {result}")

DSE / SP-DSE

Q1. Find the count of numbers from 1 to N-1 that are coprime with N. For example, if N = 10, the coprime numbers are [1, 3, 7, 9]. (Hard)

A number is coprime with N if it shares no common factor with N other than 1. We can check each number from 1 to N-1 using the greatest common divisor (GCD). Count all numbers whose GCD with N is 1. For N = 10, the numbers coprime with 10 are 1, 3, 7, and 9. So the output is 4.

Python code:

import math
# Program to count numbers coprime with N
N = 10
count = 0
for i in range(1, N):
   if math.gcd(i, N) == 1:
       count += 1
print("Number of integers coprime with", N, "is:", count)

Q2. Given an array of positive and negative numbers, find the minimum number of swaps needed to group all positive numbers on one side. For example, [-1, 2, -3, 4,-5]. (Hard)

Every time we encounter a positive number, it needs to "jump over" the negatives seen so far. Counting these jumps gives the minimum swaps. For the array [-1, 2, -3, 4,-5], the minimum number of swaps is 3.

Python code:

arr = [-1, 2, -3, 4, -5]
count_negatives = 0
swaps = 0
for num in arr:
   if num > 0:
       # Each positive must jump over all negatives seen so far
       swaps += count_negatives
   else:
       # Count the negative numbers encountered
       count_negatives += 1
print("Minimum number of swaps:", swaps)

Q3. You have N buckets with K balls numbered 1 to K. Randomly transfer balls sequentially from the first bucket to the last. Find the probability that the ball picked from the last bucket is the largest number. (Hard)

The probability for each ball in the first bucket is its value divided by the total sum. As balls are transferred, we update probabilities for each ball using the transfer rule. For N = 2 buckets with balls [1, 2] each, the probability of picking the largest ball (2) in the last bucket is 0.6.

Python code:

N = 2   # number of buckets
K = 2   # number of balls per bucket
# Buckets with ball counts
buckets = [
   [1, 2],  # first bucket
   [1, 2]   # second bucket
]
# Step 1: Initial probabilities from the first bucket
total_first = sum(buckets[0])
prob = [buckets[0][i] / total_first for i in range(K)]
# Step 2: Update probabilities for each subsequent bucket
for i in range(1, N):
   total = sum(buckets[i])
   for j in range(K):
       prob[j] = prob[j] * (buckets[i][j] + 1) / (total + 1) \
                 + (1 - prob[j]) * (buckets[i][j] / (total + 1))
# Final probability of picking the largest ball (index 1 here)
print("Probability of picking the largest ball:", prob[1])

C. Aptitude Questions for Infosys (Quant, Reasoning, Verbal)

Aptitude Questions for Infosys with Answers (Quant + Logical Reasoning)

Q1. A train 120 meters long crosses a platform of 180 meters in 18 seconds. What is the speed of the train in km per hour? (Medium)

To solve this, first find the total distance the train travels while crossing the platform: that is the length of the train plus the platform length.

Total distance = 120 + 180 = 300 meters.

Time taken = 18 seconds. Speed in meters per second = distance / time = 300 / 18 = 16.67 m/s.

Convert this to km/h by multiplying by 18/5: 16.67 × 18/5 = 60 km/h.

So, the train’s speed is 60 km per hour.

Q2. In a race, A beats B by 20 meters in a 100 meter race. If B’s speed is 8 m/s, what would be A’s speed? (Medium)

When A finishes 100 meters, B has covered only 80 meters because A beats B by 20 meters. Time taken by A to finish = 100 / A’s speed. Time taken by B to go 80 meters at 8 m/s = 80 / 8 = 10 seconds.

That means A took 10 seconds to finish 100 meters, so A’s speed = 100 / 10 = 10 m/s.

Q3. If 3 pipes A, B and C can fill a tank in 12, 15, and 20 hours respectively, how long will it take to fill the tank if all three operate together? (Medium)

First, find the rate at which each pipe fills the tank:

A = 1/12 tank per hour, B = 1/15 tank per hour, C = 1/20 tank per hour.

Combined rate = 1/12 + 1/15 + 1/20 = 5/60 + 4/60 + 3/60 = 12/60 = 1/5 tank per hour.

So, all three together fill the tank in 5 hours.

Infosys Reasoning Questions and Shortcuts

Q1. In a row of 40 students, Maya is 14th from the left and 22nd from the right. How many students are between Maya and the middle of the row? (Medium)

First find the position of Maya in the row. She is 14th from the left, and since there are 40 students, she is also (40 - 22 + 1) = 19th from the left by the right value. This means there is an overlap that confirms Maya is 14th from left.

The middle of 40 students would be between the 20th and 21st positions. Maya is at position 14, so the distance to the 20th position is 20 - 14 = 6.

Q2. If the sequence is 2, 6, 12, 20, 30, what is the next term? (Medium)

Look at the pattern: the differences between terms are 4, 6, 8, 10. These are increasing by 2 each time. The next difference after 10 is 12. So next term = 30 + 12 = 42.

Q3. Four friends P, Q, R, and S are sitting in a line. P is to the left of Q, R is to the right of Q, and S is to the right of R. Who is in the middle? (Easy)

From left to right, the order looks like: P Q R S. Q and R are nearest neighbors, so R is in the middle of this four-person arrangement of positions.

Get hired by tech giants!🏭 Prepare for top interviews with a mastery of Java, web development, and cloud technologies. Join the program today and advance your career!

Infosys System Design Questions for Experienced

Q1. How would you design a scalable user login system for millions of users?

When building a login system that needs to scale, the first thing is to keep different parts separate so they don’t all bottleneck together. Login requests can come through an API layer, which makes it easier to manage traffic. From there, load balancers help spread requests across multiple authentication servers instead of overloading one machine.

To avoid hitting the database on every login check, session tokens or JWTs can be stored in a shared cache. This keeps things fast even when traffic grows. Adding rate limits is also important so repeated login attempts don’t turn into security issues. On the security side, passwords should never be stored directly.

Q2. How do you ensure data consistency in a distributed microservices architecture?

Keeping data consistent in distributed systems can be tricky. People often use things like eventual consistency or sagas to handle updates across services. When a transaction touches multiple services, a common approach is to send updates through outbox tables or message queues instead of trying to update everything at once. It also helps to make your message consumers idempotent, so if the same message comes through again, it doesn’t mess up the data.

Q3. What are the trade-offs between monolithic and microservices architectures for enterprise apps?

In a monolithic architecture, all modules are tightly coupled, making deployment simpler but scaling harder and upgrades riskier. Microservices break functionality into independent services with separate deployments, allowing individual scaling and faster updates. The trade-offs include increased complexity, service communication overhead, and the need for distributed tracing, but with better fault isolation and flexibility.

Infosys Interview Questions on Projects (Final Year)

Q1. Describe a testing project you worked on and how you identified defects.

Start by explaining the application domain, its purpose, and your role. Describe how you reviewed requirements to prepare test scenarios, designed test cases, executed them, and logged defects. Explain a bug you found, how you reproduced it, documented the steps, and verified the fix after it was resolved.

Q2. What challenges did you face during your project testing cycle and how did you handle them?

Projects rarely go perfectly. Requirements sometimes changed in the middle, documents were missing details, and test environments would misbehave. I found that talking directly with developers and the product team helped clear things up. As things changed, I updated my test cases and focused on the bugs that really mattered, which helped us stay on track with deadlines.

Q3. How did you ensure the quality of your testing outputs?

You can mention things like having test cases reviewed by teammates, keeping requirements tied back to tests, and using simple checklists so edge cases don’t slip through. Also, talk about how quickly automated checks or regression scripts helped keep things stable as new builds kept coming in.

Suggested Courses to Upskill You Before Your Infosys Interview

1. Masters as Full Stack Java Developer - The course will enhance your computer programming skills and give you an edge in Java. Being absolutely thorough in at least one programming language is a requisite for all aspiring engineers in tech-related fields.

2. Masters in Cloud Architect - Cloud architects look after an organization’s data structures and cloud computing needs. It is a great tool for upskilling, especially if you’re looking to make a career in Fintech-related fields. 

3. Masters in Data Science - Data Science jobs are increasing exponentially in the tech domain, and skilled workers are highly sought-after. Upskill yourself with this wonderful program.

Conclusion

Hope this article was able to give you thorough knowledge about some of the commonly asked Infosys interview questions and answers. Working hard and sitting through the selection process with a sense of seriousness and commitment will already give an edge over your competitors. Combine it with a thorough preparation of computing essentials, and your selection at Infosys will be a dream come true. 

If you are looking to enhance your skills further, we recommend you check Simplilearn's Full Stack Developer Courses. These programs can help you become job-ready in no time. 

If you have any questions regarding Infosys interview questions and answers, feel free to post them in the comments below. Our team will get back to you at the earliest.

Our Software Development Courses Duration And Fees

Software Development Course typically range from a few weeks to several months, with fees varying based on program and institution.

Program NameDurationFees
Full Stack Java Developer Masters Program

Cohort Starts: 30 Mar, 2026

7 months$1,449
AI-Powered Automation Test Engineer Program6 months$1,499