• Articles
  • Interview Questions

Accenture Interview Questions and Answers

Reviewed and fact-checked by
career-aspirant learners have read this article
Reviewed and fact-checked by
Archit Agarwal
Team Lead


Most Frequently Asked Accenture Interview Questions

1. Difference between procedural and object-oriented programming
2. What is the importance of self-keywords in Python?
3. What is the difference between static and non-static keywords?
4. Why is Python known as a high-level language?
5. Define the adapter class.
6. What is run-time polymorphism?
7. What is the difference between Python and Java?
8. What is NumPy in Python?
9. What do you mean by name mangling in Python?
10. Define the process of exception handling in Java.

With a strong focus on innovation, Accenture assists clients across diverse industries in navigating the digital landscape, enhancing operational efficiency, and driving business growth.

Their commitment to delivering cutting-edge strategies and services has earned them a reputation as a trusted partner for businesses seeking transformation and success. With a vast talent pool of skilled professionals, Accenture continues to shape industries and make a significant impact on the global business landscape.

Basic Accenture Interview Questions for Freshers

1. Difference between procedural and object-oriented programming

In procedural programming, we need to work with functions and data separately, as functions manipulate data that is stored in variables or data structures, whereas in an object-oriented programming language, the code is treated as entities and objects.

2. What is the importance of self-keywords in Python?

The ‘self’ keyword is used as the first parameter while defining the instance methods of a class. In other words, we can say it represents the instance of the class itself. Although the name self is a convention, we can technically use any name as the first parameter, but using self is considered standard and is used in Python.

3. What is the difference between static and non-static keywords?

In static, you do not need an instance to use a static method. It is independent of any specific object but related to the entire class. It is stored in a single memory location and can be modified by any instance of the class. A non-static method is an instance method that is not independent but belongs to each object that is generated from the class.

4. Why is Python known as a high-level language?

Python is a high-level language because it is an easy and user-friendly way to write and read code. It doesn’t have that much critical syntax. It hides complexity, making programming more accessible and less focused on low-level operations.

5. Define the adapter class.

An adapter class is defined as a class that helps two incompatible classes combine by providing a single interface. It acts as a mediator, which allows objects with different interfaces to communicate.

6. What is run-time polymorphism?

Run-time polymorphism helps us to allow different objects to be treated as objects of a common super-class while executing different implementations of a method based on the actual type of the object at runtime. It also allows us to use the same method with different signature names.

7. What is the difference between Python and Java?

Java and Python are both programming languages, but they are different from each other. In Python, we can simply use “print” to print something, whereas in Java, we use System.out.println.

8. What is NumPy in Python?

NumPy stands for Numerical Python, and it is a library used for scientific computing, data analysis, and numerical operations. Some common use cases and applications of NumPy are mathematical operations, data analysis, and machine learning.

Go through these Google Interview Questions to crack your interview!

9. What do you mean by name mangling in Python?

The purpose of name mangling is to make the attribute private and prevent direct access from outside the class. It is a method that indicates that the attribute is bound for internal use within the class and cannot be achieved or modified with external code.

Get 100% Hike!

Master Most in Demand Skills Now!

10. Define the process of exception handling in Java

Exception handling is a process that allows us to manage exceptional situations that occur during code implementation. It helps you find the error in the code. Each catch block specifies the type of exception. It provides a structured way to handle unexpected events and prevent them from causing the program to terminate abruptly.

Intermediate Accenture Interview Questions and Answers

11. How is XML different from HTML?

XML stands for Extensible Markup Language, which is used to present data on the web and is also a general-purpose markup language designed to store and transport structured data. It focuses on describing the structure and organization of data rather than its presentation. XML is widely used for data exchange, configuration files, and data storage in various domains.

Go through these HR Interview Questions to crack your interview!

12. Define the term pointer-to-pointer address explained with a code.

A pointer to a pointer, also known as a double pointer or pointer-to-pointer, is a special type of pointer that holds the address of another pointer variable. This allows indirect access to the value and memory address stored by the second pointer. 

13. Explain the different types of heading tags in HTML.

In HTML, tags are used to define the headings or titles of sections, providing structure to the content. HTML provides six levels of heading tags, denoted by the <h1> to <h6> tags, such as:

<h1>: It denotes the highest level of heading, typically used for the main title or heading of the entire page. It carries the most importance and should be used sparingly.

<h2>: It denotes a slightly lower level of heading. It is often used for major section titles or headings that come under the main title.

<h3>: It denotes a further sub-level heading. It is used for subsection titles or headings that come under the <h2> heading.

<h4>: It denotes a lower level of heading, typically used for subsection titles or headings within the content.

<h5>: It denotes an even lower level of heading, used for sub-section titles within <h4> headings.

<h6>: It denotes the lowest level of heading, used for minor headings or titles within the content.

14. How do you calculate the sum or count of a column in SQL?

To calculate the average, sum, or count of a column in SQL, you can use the aggregate functions provided by SQL. Here are the commonly used aggregate functions:

Sum (SUM): Calculates the sum of the values in a column.

SELECT SUM(column_name) FROM table_name;

Count (COUNT): Counts the number of rows in a column.

SELECT COUNT(column_name) FROM table_name;

15. Define the following terms:

(i) List (ii) Tuples

  • List: It is used to store a collection of items. It is a mutable, ordered sequence of elements enclosed within square brackets[]. Lists can contain elements of different data types such as integers, strings, floats, or even other lists. 
fruits = ['Kiwi', 'Cat', 'Dog', 'Camel']
  • Tuple: It is an ordered collection of elements. Tuples are immutable and cannot be modified once created. Tuples are defined by enclosing elements within parentheses () or can be created without any enclosing brackets.
person = ('Ram', 21, 'India')

16. Why don't we have global variables in Java?

In terms of programming language, a global variable is a variable that is defined beyond the boundaries of any specific function and can be accessed from anywhere in the code. It is a variable that can be accessed and used by all functions, methods, or classes inside a program because it has a global or universal scope.

Since it’s normally preferred to organize our code in a way that makes it simpler to understand and maintain, Java doesn’t use global variables because any section of the code can access and change global variables when we use them. It may be challenging to remember where and when the variables are being utilized or altered as a result. Additionally, it can result in faults and unforeseen behavior in our program.

17. Define function overloading and function overriding.

  • Overloading: It describes the capacity to declare numerous methods or functions within a class (or, in certain programming languages, even within the same scope) that have the same name but distinct parameters. Overloading is determined at compile time-based on the number, type, and order of the parameters. The compiler decides which version of the overloaded method or function to invoke based on the arguments provided during the function or method call.
  • Overriding: A feature of object-oriented programming called “function overriding” allows a subclass to provide a different implementation of a method that is already defined in its superclass. It enables the subclass to adapt the behavior of the inherited method to suit its own requirements. By adding its own implementation to a method, a subclass can retain the method name and signature while adding new functionality. This is known as overriding a method.

Go through these Behavioural Interview Questions to crack your interview!

18. Why is function overloading not possible in Python?

Function overloading, commonly referred to as function loading, is not as supported in Python as it is in certain other programming languages, such as C++ or Java. The ability to specify numerous functions with the same name but distinct argument lists is known as function overloading.

When you declare several functions with the same name in Python, the most recent definition replaces the earlier definitions. When deciding which function to call, Python does not take the types of arguments or the number of arguments into account. Python instead employs a distinct strategy known as “duck typing,” which puts more emphasis on the behavior of objects than their types.

19. Explain the process of Agile methodology.

Agile methodology is a collaborative approach to project management and software development. It improves flexibility, adaptability, and continuous improvement. The iterative nature of Agile allows for flexibility and enables continuous improvement, resulting in a product that better meets the needs of stakeholders.

The Agile methodology follows a set of principles outlined in the Agile Manifesto that prioritize customer satisfaction, teamwork, and responsiveness to change.

20. Why is Java platform-independent?

Java is defined as platform-independent because it uses a two-step process of compilation and interpretation, which allows Java programs to be executed on any platform that has a Java Virtual Machine installed.

Overall, Java’s platform independence is achieved through the combination of compiling Java source code into bytecode and interpreting that bytecode on any platform with the help of the JVM, along with the availability of a platform-independent standard library.

Advanced Accenture Technical Interview Questions

21. Write a Java program to generate the factorial number.

import java.util.Scanner;
public class Fact {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter a number: ");
        int num = scanner.nextInt();

        long fact = calculateFact(num);
        System.out.println("The Factorial of " + num + " is: " + fact);

    private static long calculateFact(int num) {
        if (num == 0 || num == 1) {
            return 1;
        } else {
            long fact = 1;
            for (int i = 2; i <= num; i++) {
                fact *= i;
            return fact;

Learn new Technologies

22. Write a query to return the top 10 students who have spent their pocket money in the last week.

To write a query to return the top 10 students who spent the most money last year, you would need to have a database schema that includes tables for students and transactions, where transaction data includes the student ID and the amount spent. Here’s an example query using SQL syntax:

SELECT s.student_name, SUM(t.amount) AS total_spent
FROM students s
JOIN transactions t ON s.student_id = t.student_id
WHERE t.transaction_date >= DATE_SUB(CURDATE(), INTERVAL 1 YEAR)
GROUP BY s.student_name
ORDER BY total_spent DESC

23. What is the use of map function? Explain with a code.

In simple terms, the map() function is a predefined function in Python that is used to apply a given function to each item of an iterable (such as a list, tuple, or string) and return a new iterable containing the results.

numbers = [1, 2, 3, 4, 5]
doubled_numbers = list(map(lambda x: x * 2, numbers))

24. What is the difference between RDBMS and DBMS?

RDBMS is an advanced version of DBMS that is used for managing relational databases, where data is organized in tables and relationships, and each table represents an entity and its attribute. Using primary and foreign keys provides data integrity and consistency.

It supports ACID (Atomicity, Consistency, Isolation, Durability), whereas a DBMS allows us to manage the overall database system and its components, including data structures, storage, security, and query processing. It enforces strict relationships between tables or has built-in support for integrity constraints. ACID properties are not necessarily a requirement. The application has specific performance or functionality.

A DBMS provides basic functionality for managing databases without strict enforcement of relationships between tables. Here’s an example of a query in a DBMS:


In a DBMS, the query retrieves all records from the “EMPLOYEE” table. The DBMS executes the query based on the table structure and retrieves the requested data.

An RDBMS is a type of DBMS that enforces relationships between tables using primary and foreign keys. Here’s an example of a query in an RDBMS:

“ SELECT Orders.OrderID, Employee.EmployeeName
FROM Orders
INNER JOIN Employee ON Orders.EmployeeID = Employee.EmployeeID; “

25. What do you mean by transaction, and how do you ensure data consistency in SQL?

In SQL, the process of a transaction typically follows the ACID principles (Atomicity, Consistency, Isolation, Durability) and involves the following steps: 

BEGIN TRANSACTION;  -- Begin the transaction
-- Execute SQL statements
UPDATE customers SET balance = balance - 100 WHERE id = 1;
INSERT INTO orders (customer_id, product_id, quantity) VALUES (1, 5, 3);
-- Check for errors
IF @@ERROR <> 0
    ROLLBACK;  -- Rollback the transaction if an error occurred
    COMMIT;    -- Commit the transaction if no errors occurred

26. What is REST? Explain RESTful web services with an example.

REST stands for Representational State Transfer. It is an architectural style and an approach to communicating between computer systems and mobile applications.
In simple terms, REST provides a way for a client (like a mobile app) to access and use data from a server in a standardized and predictable way.
With RESTful web services, requests made to the server (known as the API endpoint) will be in a standard format that is easy for other systems to understand.

Some key aspects of REST:

●Use common methods like GET, POST, PUT, and DELETE to request resources from the server.
●Resources are accessed via a Uniform Resource Identifier (URI), or URL.
●Responses from the server are in a standard format, like JSON or XML.
●The client and server can be completely separate and independent of each other.

27. What is Docker? Explain the Docker architecture and how it works.

Docker allows you to package an application and its dependencies into a standardized unit called a container.

Containers isolate applications from each other and bundle software, dependencies, configuration files, etc., into a single package. This makes applications portable across different environments, like development, testing, production, etc.

Some key aspects of Docker:

  • Docker uses containers as the building blocks, which provide an isolated environment for each application.
  • Containers are built from images, which are like templates that contain instructions and dependencies to create containers.
  • Images are created from Dockerfiles, which contain a set of commands to assemble an image.
  • The Docker daemon listens for API requests and manages images, containers, networks, and volumes.

To demonstrate with an example:

1. Create a Dockerfile with commands to install dependencies and copy application files:

FROM node:latest
COPY . . 
RUN npm install
CMD ["node","index.js"]

2. Build an image from the Dockerfile:

docker build -t my-app .

3. Run a container from the image:

docker run -p 3000:3000 my-app

4. The container runs the application which is now accessible.

This shows the basic workflow – build an image, run a container from it, and the app is packaged and run in an isolated environment.

28. What is cloud computing? Explain IaaS, PaaS, and SaaS cloud models.

Cloud computing means storing and accessing data and programs over the internet instead of your computer’s hard drive. This allows you to access your information from anywhere, using any device.

The cloud is basically servers (large groups of computers) that are maintained by cloud computing companies like Amazon, Microsoft, Google, etc. These companies manage the servers, and you can rent their resources as needed.

There are different types or models of cloud computing:

Infrastructure as a Service (IaaS):

  • IaaS allows you to rent virtual machines, storage, networking components, etc., from the cloud provider.
  • You are responsible for installing and managing the operating system, applications, etc.
  • Examples are Amazon EC2 and Microsoft Azure.

Platform as a Service (PaaS):

  • PaaS provides a platform for developing, testing, delivering, and managing applications.
  • It includes servers, storage, databases, networking, etc., but you don’t manage the underlying infrastructure.
  • Examples are Google App Engine, Heroku, and Azure Web Apps.

Software as a Service (SaaS):

  • SaaS provides complete applications to users through the internet without installation.
  • The applications are managed by the cloud provider, and you only need to access them through a web browser.
    Examples are Gmail, Google Docs, Salesforce, Dropbox, etc.

29. What is blockchain technology? Explain how blockchain works with an example.

Blockchain is a distributed database that is used to maintain a continuously growing list of records called blocks. Each block contains a cryptographic hash of the previous block, a timestamp, and transaction data.

The key aspects of blockchain:

  • Decentralized: There is no central authority that controls the database. The database is managed by multiple participants collectively.
  • Transparent: Anyone can view the transactions and check the integrity of the data in the blockchain.
  • Secure: Strong cryptography is used to secure all records and transactions in the blockchain.
  • Immutable: Once a transaction is recorded, it cannot be altered or deleted as the blocks are linked to each other.

30. What is serverless computing? Explain AWS Lambda architecture and use cases.

Serverless computing means you don’t have to manage servers yourself. With serverless, your code runs on servers maintained by cloud providers like AWS, Azure, Google Cloud, etc.

AWS Lambda is a popular serverless computing platform by Amazon. It allows you to run code (called functions) in response to events without provisioning or managing servers.

Some key aspects of AWS Lambda:

  • Functions are your code that can be triggered by events like HTTP requests, database changes, etc.
  • Lambda automatically manages the servers and scales them up or down depending on traffic.
  • You only pay for the compute time when your code is running in response to an event. There is no idle cost.
  • Functions are independent and isolated. They can run anywhere across AWS infrastructure.
  • Lambda integrates with other AWS services like API Gateway, S3, DynamoDB, etc., for triggers.

Some common use cases of AWS Lambda:

  • Building serverless APIs by linking Lambda functions to API Gateway.
  • Processing images/videos uploaded to S3 automatically with Lambda.
  • Sending notifications by triggering a Lambda function from SNS.
  • Automating tasks by scheduling Lambda functions to run periodically
  • Building serverless apps without worrying about provisioning or managing servers.

Accenture HR Interview Questions

31. Why do you want to work at Accenture?

As the tagline of Accenture says, “Let There Be Change,” I wish to be a part of the change and contribute to its growth. I’m excited about the chance to learn and contribute to a company that values innovation and is always looking to improve. In addition, there are opportunities to learn and grow. Accenture values diversity and teamwork. I feel I could thrive in the innovative culture and would enjoy being part of this respected organization.

32. How do you handle stressful situations or deadlines?

When faced with stress or tight deadlines, I stay calm and focused. I prioritize the most important tasks and break them into smaller steps. I communicate openly with my team and manager if I need support, and I don’t procrastinate. Staying organized and proactive and asking for help when needed allows me to handle challenges smoothly.

33. What are your strengths and weaknesses?

Try to focus on strengths that mainly align with the job requirements rather than trying to present all the skills that you have. Try to mention a weakness that is correctable and won’t affect your core responsibilities on the job. Don’t jeopardize your job by mentioning your weakness.

My strengths are that I work very hard, learn quickly, and solve problems creatively. I also work well both independently and as part of a team. A weakness is that sometimes I take on too many tasks at once and need to improve at managing my time effectively.

34. How do you handle conflicts in a team?

If a conflict arises in my team, I try to stay calm and listen to understand each perspective. My approach is to find common goals and bring people together to find a solution where everyone feels heard. Communication and compromise are key to resolving issues and keeping the team working well together.

35. Where do you see yourself in the next five years?

In five years, I hope to be in a leadership role in this company where I can use my skills and experience to mentor others. I would like to take on more responsibility and help my team succeed in their work. I also aim to continuously learn new skills and expand my expertise through ongoing training.

36. What motivates you?

I am motivated by the opportunity to solve challenging problems, learn new things, and see the impact of my work. Knowing that I am helping others and contributing to the success of my team and company also drives me forward.

37. How do you stay updated with industry trends?

To stay current with industry trends, I regularly read journals and write reports in my free time. I also follow leaders in my field on social media and networking sites to learn about new developments. Taking online courses further expands my knowledge of emerging topics and technologies.

38. Tell me about a challenging situation at work and how you handled it.

One difficult time was when a big project fell behind. I worked with my manager to prioritize tasks and asked others for help. By delegating well and focusing on the most important parts first, we got it back on track. Communication and teamwork helped solve the problem.

39. How do you handle constructive criticism?

I welcome constructive criticism as an opportunity to improve. Rather than get defensive, I actively listen to understand different points of view. I then reflect on the feedback and work to apply it productively.

40. What skills and experiences do you bring to the table? / Share with me your professional background and expertise.

I have strong skills in project management, communication, and problem-solving from my past roles. As a project coordinator, I handled complex tasks and budgets. My background in customer service also developed my ability to build relationships and work well with others.

Course Schedule

Name Date Details
Data Analytics Courses 29 Jun 2024(Sat-Sun) Weekend Batch
View Details
Data Analytics Courses 06 Jul 2024(Sat-Sun) Weekend Batch
View Details
Data Analytics Courses 13 Jul 2024(Sat-Sun) Weekend Batch
View Details

About the Author

Techical Research Analyst - Front End Development

As a Technical Research Analyst, Kislaya specializes in Front End Development. He is a Full Stack Developer, known for crafting scalable architectures and user-centric interfaces. He has a massive international client base and is an expert in cloud computing, Linux, and Java Script, personifying a commitment to quality and information sharing.