i
Capgemini
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Naukri.com and was interviewed in Oct 2022. There were 3 interview rounds.
Python has several built-in datatypes including numeric, sequence, and mapping types.
Numeric types include integers, floating-point numbers, and complex numbers.
Sequence types include lists, tuples, and range objects.
Mapping types include dictionaries.
Other datatypes include boolean, bytes, and sets.
Yes, it is possible to concatenate a string and integer using type conversion.
Convert the integer to a string using str() function and then concatenate with the string.
Use format() method to insert the integer value into the string.
Use f-strings to directly insert the integer value into the string.
XPath is a language used to locate elements in an XML or HTML document. Absolute and relative XPaths differ in their starting point.
XPath is used to navigate through elements and attributes in an XML or HTML document
Elements can be located using absolute or relative XPaths
Absolute XPaths start from the root node and are more specific but less flexible
Relative XPaths start from the current node and are more flexible but
Selenium supports various locators such as ID, Name, Class Name, Tag Name, Link Text, Partial Link Text, CSS Selector and XPath.
ID locator is the most efficient and reliable locator
Name locator is used for locating elements by their name attribute
Class Name locator is used for locating elements by their class attribute
Tag Name locator is used for locating elements by their tag name
Link Text locator is used for locating...
findelement returns the first matching element while findelements returns a list of all matching elements.
findelement is used to locate the first matching element on a web page
findelements is used to locate all matching elements on a web page
findelement throws NoSuchElementException if no matching element is found
findelements returns an empty list if no matching element is found
Exceptions in Selenium are errors that occur during test execution.
Some common exceptions in Selenium are NoSuchElementException, TimeoutException, StaleElementReferenceException, and ElementNotVisibleException.
NoSuchElementException occurs when an element cannot be found on the page.
TimeoutException occurs when a command takes too long to execute.
StaleElementReferenceException occurs when an element is no longer attac...
To select a value from dropdown in Selenium, use the Select class and its methods.
Locate the dropdown element using any of the locators like ID, name, class name, etc.
Create an object of the Select class and pass the dropdown element as a parameter.
Use the Select class methods like selectByVisibleText(), selectByValue(), or selectByIndex() to select the desired option.
Finally, use the assert statement to verify if the
Synchronization is the process of coordinating the execution of multiple threads to ensure proper order of execution.
Synchronization can be achieved using techniques like locks, semaphores, and monitors.
Locks are used to ensure that only one thread can access a shared resource at a time.
Semaphores are used to control access to a shared resource by limiting the number of threads that can access it at once.
Monitors are u...
Break, continue and pass are control statements used in loops. Break terminates the loop, continue skips an iteration and pass does nothing.
Break is used to terminate a loop when a certain condition is met
Continue is used to skip an iteration of a loop when a certain condition is met
Pass is used as a placeholder when a statement is required syntactically but no action is needed
Full join is a type of SQL join that returns all the rows from both tables, matching rows from both tables and nulls where there is no match.
Full join is also known as a full outer join.
It is used to combine data from two tables where some of the data may not match.
The result set includes all the rows from both tables, with nulls where there is no match.
Full join is represented by the keyword 'FULL OUTER JOIN' in SQL.
E...
Query to find second highest salary in SQL
Use the ORDER BY clause to sort the salaries in descending order
Use the LIMIT clause to select the second highest salary
Use a subquery to exclude the highest salary from the results
To fetch 1st 5 records in SQL, use the LIMIT clause.
Use the SELECT statement to specify the columns to retrieve.
Use the FROM clause to specify the table to retrieve data from.
Use the LIMIT clause to specify the number of records to retrieve.
The syntax is: SELECT column1, column2, ... FROM table_name LIMIT 5;
The first 5 records will be returned.
To copy a table in MySQL, use the CREATE TABLE statement with the SELECT statement.
Use the CREATE TABLE statement with the SELECT statement to copy a table.
Specify the new table name after the CREATE TABLE statement.
Specify the original table name after the SELECT statement.
Add any additional conditions or clauses as needed.
Example: CREATE TABLE new_table SELECT * FROM original_table WHERE condition;
To fetch unique elements from a column, use the DISTINCT keyword in SQL.
Use the SELECT statement with the DISTINCT keyword.
Specify the column name from which you want to fetch unique elements.
Example: SELECT DISTINCT column_name FROM table_name;
You can also use GROUP BY clause to group the unique elements based on another column.
Example: SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name;
SQL query to find names of employees starting with 'A'
Use the SELECT statement to retrieve data from the employee table
Use the LIKE operator to match the names starting with 'A'
Use the % wildcard to match any number of characters after 'A'
To open a file and read repeating words, use file handling and string manipulation techniques.
Open the file using file handling techniques in the programming language of your choice.
Read the contents of the file and store it in a string variable.
Split the string into an array of words using a delimiter such as space or comma.
Loop through the array and use a dictionary or hash table to count the frequency of each word.
P...
Generating random emails in Python with constant domain
Use the random module to generate random strings for the username part of the email
Combine the random username with the constant domain name
Ensure the generated email is unique if required
Python provides random module to generate random data and numbers.
Import random module
Use random.randint() to generate random integer within a range
Use random.choice() to select a random element from a list
Use random.random() to generate a random float between 0 and 1
Use random.uniform() to generate a random float within a range
Arrays are fixed in size, while lists can grow or shrink dynamically.
Arrays are a collection of elements of the same data type, while lists can contain elements of different data types.
Arrays are accessed using an index, while lists are accessed using an iterator.
Arrays are faster for accessing elements, while lists are faster for inserting or deleting elements.
Examples of arrays include int[] and char[], while example
To run a test suite using robotframework command line, use the 'robot' command followed by the path to the test suite file.
Open the command prompt or terminal
Navigate to the directory containing the test suite file
Enter the command 'robot' followed by the name of the test suite file
Add any additional options or arguments as needed
Press enter to execute the command
Example: robot my_test_suite.robot
Example with options: ...
To validate data after page refresh in Selenium, we can refresh the page and then use explicit wait to validate the data.
Refresh the page using driver.navigate().refresh() method
Use explicit wait to wait for the element to be visible on the page
Validate the data using getText() or getAttribute() method
Example: driver.navigate().refresh(); WebDriverWait wait = new WebDriverWait(driver, 10); wait.until(ExpectedConditions...
As a Senior Automation Test Engineer, my roles and responsibilities include designing and implementing automated test scripts, identifying and reporting software defects, and collaborating with cross-functional teams to ensure high-quality software delivery.
Designing and implementing automated test scripts using tools like Selenium, Appium, or JUnit
Identifying and reporting software defects and working closely with dev...
I prefer not to disclose my current CTC. As for my expected CTC, I am looking for a competitive salary based on my experience and skills.
I am open to negotiation based on the job responsibilities and company's budget
I have researched the market rates for similar positions and have a realistic expectation
I am looking for a salary that reflects my experience and skills
I am also interested in other benefits such as health
Yes, I am willing to relocate to Hyderabad.
I am open to new opportunities and experiences in different locations.
I have researched about Hyderabad and I am excited about the city's culture and opportunities.
I am ready to adapt to a new environment and build a life in Hyderabad.
I was interviewed in Feb 2025.
I balance my professional life and studies through effective time management, prioritization, and self-discipline.
I create a detailed schedule that allocates specific time blocks for work and study, ensuring I stay organized.
I prioritize tasks based on deadlines and importance, allowing me to focus on high-impact assignments first.
I utilize tools like calendars and task management apps to keep track of both work respon...
Cash flow types include operating, investing, and financing; direct and indirect methods differ in presentation and calculation.
Types of cash flow: Operating, Investing, Financing.
Operating cash flow: Cash generated from core business activities.
Investing cash flow: Cash used for investments in assets or securities.
Financing cash flow: Cash received from or paid to investors and creditors.
Direct cash flow: Lists actual...
The P2P cycle involves the process of procuring goods and services, from requisition to payment.
1. Requisition: Initiating a purchase request, e.g., a department needing office supplies.
2. Purchase Order: Creating a formal order to the supplier, ensuring terms are clear.
3. Receipt of Goods/Services: Confirming delivery and quality of items received.
4. Invoice Processing: Matching the supplier's invoice with the purchas...
I have a notice period of one month, and I plan to manage my studies by creating a structured schedule and prioritizing tasks.
Create a detailed study schedule that allocates specific time slots for studying each subject.
Utilize weekends and evenings for intensive study sessions to maximize productivity.
Incorporate breaks to avoid burnout and maintain focus during study periods.
Use productivity tools like calendars or a...
HMV and LMV in GST refer to High Value and Low Value transactions, impacting compliance and reporting requirements.
HMV (High Value) transactions are those exceeding a specified monetary threshold, requiring detailed reporting.
LMV (Low Value) transactions are those below the threshold, often subject to simplified compliance.
For example, if the threshold is set at ₹2,50,000, any transaction above this is HMV, while those...
GSTR-1 is a monthly return for outward supplies, while GSTR-3B is a summary return for GST payment.
GSTR-1 is filed by registered taxpayers to report sales and outward supplies.
It includes details like invoice-wise sales, credit/debit notes, and exports.
Example: A business selling goods worth ₹1,00,000 must report this in GSTR-1.
GSTR-3B is a simplified return for taxpayers to declare their GST liability.
It includes summ...
I have worked with design patterns such as Singleton, Factory, Observer, and Strategy.
Singleton pattern ensures a class has only one instance and provides a global point of access to it.
Factory pattern creates objects without specifying the exact class of object that will be created.
Observer pattern defines a one-to-many dependency between objects so that when one object changes state, all its dependents are notified a...
I would immediately investigate the issue, identify the root cause, and work on a solution to prevent it from happening again.
Investigate the issue thoroughly to understand the scope and impact
Identify the root cause by analyzing logs, code, and configurations
Work on a solution to fix the issue and prevent it from reoccurring
Communicate with stakeholders about the issue and the steps taken to resolve it
Yes, I am able to work under pressure by staying organized, prioritizing tasks, and maintaining a positive attitude.
I stay organized by creating to-do lists and setting deadlines for tasks.
I prioritize tasks based on urgency and importance to ensure critical tasks are completed first.
I maintain a positive attitude by taking short breaks, practicing deep breathing exercises, and seeking support from colleagues when need
SOLID is a set of five principles in object-oriented programming that help make software designs more understandable, flexible, and maintainable.
S - Single Responsibility Principle: A class should have only one reason to change.
O - Open/Closed Principle: Software entities should be open for extension but closed for modification.
L - Liskov Substitution Principle: Objects of a superclass should be replaceable with object...
What people are saying about Capgemini
I was interviewed in Jan 2025.
Identify first occurrences of vowels in a string and return their indices along with count.
Loop through the string and check if each character is a vowel (a, e, i, o, u)
Store the index of the first occurrence of each vowel in a separate array
Return the array of indices and the count of indices
Calculate the difference between two integers and find how many numbers within that difference are divisible by 3.
Calculate the absolute difference between the two integers
Iterate through the range of numbers within the difference and check if each number is divisible by 3
Keep a count of numbers divisible by 3
Content negotiation in ASP .Net Web API allows clients to request data in different formats like JSON, XML, etc.
Content negotiation is the process of selecting the best representation for a given response when there are multiple representations available.
In ASP .Net Web API, content negotiation is handled by the MediaTypeFormatter class which selects the appropriate formatter based on the request headers.
Clients can sp...
Git conflicts can be resolved by merging changes, resolving conflicts manually, and using tools like Git mergetool.
Merge changes from the conflicting branches
Resolve conflicts manually by editing the conflicting files
Use Git mergetool to help resolve conflicts
Commit the resolved changes after resolving conflicts
Static constructor is used to initialize static data members of a class.
Executed only once when the class is first accessed
Cannot have any access modifiers or parameters
Used to initialize static variables or perform any necessary setup tasks
To invoke methods from two interfaces with same method names, use explicit interface implementation.
Use explicit interface implementation to differentiate between the methods from each interface.
Specify the interface name followed by the method name to invoke the desired method.
Example: InterfaceA.Method() and InterfaceB.Method() to invoke methods from InterfaceA and InterfaceB respectively.
Count the occurrence of each character in a given string.
Iterate through the string and use a hashmap to store the count of each character.
Handle both uppercase and lowercase characters separately.
Consider using ASCII values to map characters to their respective counts.
Rest is lightweight, WCF is feature-rich. Rest uses HTTP, WCF uses SOAP. Rest is platform-independent, WCF is Microsoft-centric.
Rest is lightweight and simple to use, making it ideal for web services. WCF is feature-rich and provides more advanced capabilities.
Rest uses HTTP for communication, making it easier to work with in web environments. WCF uses SOAP, which can be more complex and heavyweight.
Rest is platform-in...
Microservices communicate with each other through APIs, messaging queues, and service discovery.
APIs: Microservices can communicate with each other by exposing APIs that allow them to send and receive data.
Messaging queues: Microservices can use messaging queues like RabbitMQ or Kafka to send messages to each other asynchronously.
Service discovery: Microservices can use service discovery tools like Consul or Eureka to ...
Clustered index physically orders the data rows in the table, while non-clustered index does not.
Clustered index determines the physical order of data rows in the table.
Non-clustered index is a separate structure that contains pointers to the actual data rows.
Clustered index is faster for retrieval of data in the order of the index key.
Non-clustered index is faster for retrieval of data not in the order of the index ke
Capgemini interview questions for popular designations
I applied via Approached by Company and was interviewed in Dec 2024. There was 1 interview round.
Java 8 introduced static and default methods in interfaces, allowing for method implementation and code reusability.
Java 8 introduced static methods in interfaces, allowing for method implementation directly in the interface itself.
Default methods were also introduced in Java 8, enabling interfaces to have method implementations without affecting implementing classes.
Static methods in interfaces can be called using the...
HashMap is a data structure that stores key-value pairs and uses hashing to efficiently retrieve values.
HashMap uses an array of linked lists to store key-value pairs.
When a key-value pair is added, the key is hashed to determine the index in the array where it will be stored.
If multiple keys hash to the same index, a linked list is used to handle collisions.
To synchronize a HashMap, you can use the synchronizedMap() m...
No, the program will not compile if the parent class throws a runtime exception while the child class throws an arithmetic exception.
In Java, if a parent class method throws a checked exception, the child class method can only throw the same exception or its subclasses.
ArithmeticException is an unchecked exception, so if the parent class throws a checked exception and the child class throws an unchecked exception, the ...
Configure JDBC in Spring Boot to specify which database to use
Define multiple DataSource beans in the configuration class
Use @Primary annotation to specify the primary DataSource
Use @Qualifier annotation to specify the secondary DataSource
Inject the DataSource beans where needed in the application
To use a Jetty server in a Spring Boot application, you can configure it as a dependency and customize its settings.
Add Jetty server dependency in your pom.xml file
Exclude Tomcat server dependency if it's included by default in Spring Boot
Configure Jetty server settings in application.properties or application.yml file
Example: Add Jetty dependency - <dependency> <groupId>org.springframework.boot</groupId...
RequestParam is used to extract query parameters from the URL, while PathVariable is used to extract values from the URI path.
RequestParam is used for query parameters in the URL, while PathVariable is used for values in the URI path.
RequestParam is optional, while PathVariable is required.
RequestParam is used with the @RequestParam annotation, while PathVariable is used with the @PathVariable annotation.
Example: @Requ...
I would implement timeout mechanisms and retries to handle the scenario of one microservice awaiting a response from another microservice taking an extended time.
Implement timeout mechanisms in the calling microservice to limit the waiting time for a response.
Set up retry logic to automatically resend the request to the slow microservice if no response is received within the specified timeout period.
Use circuit breaker...
Get interview-ready with Top Capgemini Interview Questions
I applied via Naukri.com and was interviewed in Dec 2024. There was 1 interview round.
SOLID principles in Java focus on object-oriented design principles. Java 8 features like lambdas and streams adhere to these principles.
S - Single Responsibility Principle: Java 8 lambdas allow for defining single-purpose functions.
O - Open/Closed Principle: Java 8 streams enable extending behavior without modifying existing code.
L - Liskov Substitution Principle: Java 8 interfaces support polymorphism and substitutio...
A Singleton class in Java ensures that only one instance of the class is created and provides a global point of access to it.
Use a private static instance variable to hold the single instance of the class.
Make the constructor private to prevent instantiation from outside the class.
Provide a public static method to access the single instance, creating it if necessary.
A controller is a component in the Model-View-Controller (MVC) design pattern that handles user input and updates the model and view accordingly.
Controls the flow of the application
Interacts with the model to update data
Receives input from the user and processes it
Updates the view based on changes in the model
Examples: Spring MVC Controller, JavaFX Controller
Code to print unique elements from an array of strings
Create a HashSet to store unique elements
Iterate through the array and add elements to the HashSet
Print out the elements in the HashSet to get unique elements
Code to find the second largest element in an array
Iterate through the array and keep track of the largest and second largest elements
Initialize variables to store the largest and second largest elements
Compare each element with the largest and second largest elements and update accordingly
Hash collision occurs when two different inputs produce the same hash value. hashCode() and equals() methods are from Object class.
Hash collision can occur when two different objects have the same hash code value.
hashCode() method is used to get the hash code value of an object.
equals() method is used to compare two objects for equality.
Circuit breaker is a design pattern used to prevent cascading failures in distributed systems.
Circuit breaker monitors for failures and trips when a threshold is reached
It then redirects calls to a fallback mechanism to prevent further failures
Once the system stabilizes, the circuit breaker can be reset to allow normal operation
ControllerAdvice in Spring Boot is used for global exception handling in RESTful APIs.
Create a class annotated with @ControllerAdvice
Use @ExceptionHandler to define methods to handle specific exceptions
Use @RestControllerAdvice for returning JSON responses
I was interviewed in Dec 2024.
I have over 10 years of experience in designing and implementing complex software systems.
Designed and implemented scalable software solutions for various clients
Led a team of developers in delivering projects on time and within budget
Worked closely with stakeholders to gather requirements and ensure customer satisfaction
I have used tools such as ANSYS, Abaqus, and SolidWorks Simulation for performing finite element analysis (FEA).
ANSYS
Abaqus
SolidWorks Simulation
Basic knowledge of strength of materials and finite element method (FEM) is essential for analyzing structural behavior and designing components.
Understanding of stress, strain, and material properties is crucial in analyzing the behavior of materials under different loading conditions.
Knowledge of FEM helps in simulating complex structures and predicting their response to various loads.
Ability to interpret FEM results...
SFD and BMD for cantilever beams of two different materials under point load P at free end
Calculate reactions at the fixed end of the beam
Determine the shear force at different points along the beam by considering the applied load and reactions
Draw the SFD by plotting the shear force values against the beam length
Calculate the bending moment at different points along the beam using the shear force values
Draw the BMD by...
Static analysis is a software testing technique used to analyze code without executing it.
Identify potential bugs and security vulnerabilities in the code
Ensure code quality and adherence to coding standards
Help in detecting performance issues and memory leaks
Examples: linting tools like ESLint, static code analyzers like SonarQube
I was interviewed in Dec 2024.
Implementing an explicit wait in Selenium using WebDriverWait class
Import WebDriverWait class from Selenium
Specify the maximum time to wait and the polling interval
Use ExpectedConditions to define the condition to wait for
Apply the wait to a specific element or the entire page
Implementing a Robot class in Java
Create a Robot class with attributes like name, batteryLevel, etc.
Include methods for moving, turning, and charging the robot
Use inheritance if needed for different types of robots
To locate the Xpath for the 'Today's Deal' menu item on Amazon, inspect the element using browser developer tools.
Open the Amazon website and right-click on the 'Today's Deal' menu item.
Select 'Inspect' to open the browser developer tools.
Look for the HTML code corresponding to the 'Today's Deal' menu item.
Right-click on the HTML code and choose 'Copy' > 'Copy XPath'.
The copied XPath can be used to locate the 'Today
str1 will be stored in the string pool while str2 will be stored in the heap memory.
str1 will be stored in the string pool, which is a part of the heap memory.
str2 will create a new String object in the heap memory, separate from the string pool.
str1==str2 compares the memory addresses of the two strings, while str1.equals(str2) compares the actual contents of the strings.
str1==str2 checks if the two string variables point to the same memory location.
str1.equals(str2) compares the actual characters in the strings for equality.
Example: String str1 = "hello"; String str2 = "hello"; str1==str2 will return false, but str1.equals(str2) will return true.
401 - Unauthorized, 502 - Bad Gateway
401 status code indicates that the request requires user authentication
502 status code indicates that the server received an invalid response from an upstream server
Print first 4 and last 4 letters of a given string
Use string slicing to extract the first 4 letters: str[:4]
Use string slicing to extract the last 4 letters: str[-4:]
I was interviewed in Jan 2025.
HashMap is unordered, uses hashing for key-value pairs. TreeMap is ordered, uses Red-Black tree for key-value pairs.
HashMap uses hashing to store key-value pairs, allowing for O(1) retrieval time on average.
TreeMap uses Red-Black tree to store key-value pairs, maintaining order based on keys.
HashMap allows one null key and multiple null values, while TreeMap does not allow null keys.
Example: HashMap<String, Integer&...
Eureka Server is a service registry for microservices in a cloud environment.
Eureka Server is part of Netflix OSS and allows microservices to register themselves and discover other services.
It helps in load balancing and failover of services by keeping track of available instances.
Eureka Server uses a REST API for communication between services and the server.
Example: Microservices A, B, and C register themselves with ...
Exception handling in SpringBoot involves using @ExceptionHandler, @ControllerAdvice, and global exception handling.
Use @ExceptionHandler annotation in controller classes to handle specific exceptions.
Use @ControllerAdvice annotation to define global exception handling for all controllers.
Implement a custom exception handler class to handle exceptions globally.
Use ResponseEntity to return custom error messages and stat...
Calculate average salary of employees in each department using Java 8 Stream.
Use Java 8 Stream to group employees by department
Calculate average salary for each department using Stream's 'collect' method
Use 'Collectors.averagingDouble' to calculate average salary
Circuit Breaker is a design pattern used in software development to prevent cascading failures in distributed systems.
Circuit Breaker monitors the health of a service and stops sending requests if the service is not responding properly.
It helps in improving the resilience of the system by providing a fallback mechanism when a service is down.
Circuit Breaker can be configured with thresholds for error rates or response ...
Docker is a platform for developing, shipping, and running applications in containers. Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications.
Docker allows developers to package applications and dependencies into containers for easy deployment and scalability.
Kubernetes helps in automating the deployment, scaling, and management of containerized applications...
I was interviewed in Jan 2025.
Multi cast in Angular allows multiple subscribers to receive the same data from a single source.
Used to broadcast data to multiple subscribers
Helps in reducing duplicate API calls
Can be implemented using Subjects in RxJS
Event emitter is used in Angular to facilitate communication between components by emitting events.
Event emitter is a class in Angular that allows components to emit custom events.
It is used to facilitate communication between parent and child components.
Parent components can subscribe to these events and react accordingly.
Example: Child component emitting an event to notify the parent component about a change.
Use RxJS to handle multiple API calls efficiently in Angular.
Use RxJS operators like forkJoin, combineLatest, or mergeMap to handle multiple API calls concurrently or sequentially.
Consider using catchError operator to handle errors and retry operator to retry failed API calls.
Use switchMap operator to cancel previous API calls when making new ones to avoid memory leaks.
Utilize subjects or BehaviorSubjects to share data
Child route is used for nested routes within a parent route, while forRoot is used for configuring routes at the root level of the application.
Child routes are defined within the parent route's configuration, allowing for nested routing structures.
forRoot is used in the AppRoutingModule to configure routes at the root level of the application.
Child routes are typically used for organizing and managing related component...
I applied via Naukri.com and was interviewed in Nov 2024. There were 2 interview rounds.
Some of the top questions asked at the Capgemini interview -
The duration of Capgemini interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 3.7k interviews
Interview experience
based on 41.9k reviews
Rating in categories
Consultant
55.1k
salaries
| ₹0 L/yr - ₹0 L/yr |
Associate Consultant
50.8k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Consultant
46.2k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Analyst
20.9k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Software Engineer
20.2k
salaries
| ₹0 L/yr - ₹0 L/yr |
Wipro
Accenture
Cognizant
TCS