i
Capgemini
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
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...
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
About basic test of knowledge on english & general knowledge
What people are saying about Capgemini
I applied via Naukri.com and was interviewed in Oct 2024. There was 1 interview round.
Circuit breaker is a design pattern used in software development to prevent system failures by temporarily stopping requests to a failing service.
Circuit breaker monitors the number of failures and opens when a threshold is reached.
When the circuit is open, requests are not sent to the failing service, preventing further failures.
After a specified time, the circuit breaker closes and allows requests to be sent again.
Ex...
Frequency of occurrence of words in a given text can be calculated by counting each word and storing it in a data structure.
Split the text into words using whitespace as delimiter
Create a map to store word frequencies
Iterate through the words and update the frequency count in the map
Return the map with word frequencies
Spring Boot can work with two databases by configuring multiple data sources and using @Primary annotation.
Configure multiple data sources in application.properties or application.yml
Use @Primary annotation to specify the primary data source
Use @Qualifier annotation to specify the secondary data source
Example: @Configuration @EnableTransactionManagement public class DatabaseConfig { @Primary @Bean(name = "primaryDataSo...
Capgemini interview questions for designations
Our project architecture follows a microservices design pattern with a front-end client communicating with multiple back-end services.
Front-end client built using Angular framework
Back-end services developed in Java using Spring Boot
Communication between services through RESTful APIs
Database layer implemented using MySQL
Containerized deployment using Docker and managed with Kubernetes
Spring Security is a powerful and customizable authentication and access control framework for Java applications.
Provides authentication and authorization capabilities for Java applications
Integrates with Spring Framework for easy configuration and usage
Supports various authentication mechanisms like form-based, basic, OAuth, etc.
Allows for fine-grained access control through roles and permissions
Can be easily extended...
Global exception handling in Spring Boot can be achieved using @ControllerAdvice and @ExceptionHandler annotations.
Create a class annotated with @ControllerAdvice to handle global exceptions
Define methods in this class annotated with @ExceptionHandler for specific exception types
Return a ResponseEntity with appropriate status code and error message in the @ExceptionHandler methods
Circuit breaker pattern is a design pattern used in software development to prevent system failures and improve resilience.
Circuit breaker pattern is used to handle faults in distributed systems.
It monitors for failures and trips when a threshold is reached, preventing further requests.
Once the circuit breaker trips, it can be configured to allow some requests through to check if the system has recovered.
If the system ...
Get interview-ready with Top Capgemini Interview Questions
I applied via Approached by Company and was interviewed in Jul 2024. There was 1 interview round.
Static binding is resolved at compile time, while dynamic binding is resolved at runtime.
Static binding is also known as early binding, where the method call is resolved at compile time based on the type of reference variable.
Dynamic binding is also known as late binding, where the method call is resolved at runtime based on the actual object type.
Example of static binding: method overloading.
Example of dynamic binding
Functional interface is an interface with only one abstract method, used for lambda expressions.
Functional interface can have multiple default or static methods.
It can also have methods from Object class, like equals(), hashCode(), etc.
Example: java.util.function.Function is a functional interface with apply() method.
Types of indexes in SQL include clustered, non-clustered, unique, and composite indexes.
Clustered index physically reorders the table based on the index key
Non-clustered index creates a separate structure for the index
Unique index ensures that no two rows have the same key values
Composite index uses multiple columns as the index key
Merge two arrays of strings into a single array
Create a new array with the combined length of the two input arrays
Copy elements from the first array to the new array
Copy elements from the second array to the new array starting from the end of the first array
Remove vowels from a given string to get the original name back.
Create a function to iterate through each character of the string
Check if the character is a vowel (a, e, i, o, u) and remove it
Return the modified string
Use SQL query with MOD function to get even row data
Use MOD function to filter out even rows
Example: SELECT * FROM table_name WHERE MOD(row_number, 2) = 0;
Constants in SQL are values that remain the same throughout the execution of a query or program.
Constants can be defined using the 'CONST' keyword in SQL.
They are used to store values that do not change during the execution of a query.
Constants can be used in WHERE clauses, JOIN conditions, and other parts of a SQL query.
Example: CONST MAX_VALUE = 100;
I applied via Naukri.com and was interviewed in Apr 2024. There was 1 interview round.
Filter employees with salary > 25,000 and department IT using Java 8.
Use Java 8 stream API to filter employees based on salary and department.
Use lambda expressions to define the filtering criteria.
Example: employees.stream().filter(e -> e.getSalary() > 25000 && e.getDepartment().equals("IT")).collect(Collectors.toList());
The interview questions cover a wide range of topics including design patterns, exception handling, Hibernate, MongoDB, Java collections, Spring framework, and microservices.
Design patterns like markers interface, functional interface, and Singleton pattern are important in Java development.
Understanding exception handling with try-catch-finally blocks is crucial for handling errors in Java applications.
Knowing the dif...
Some of the top questions asked at the Capgemini Java Developer interview -
The duration of Capgemini Java Developer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 58 interviews
4 Interview rounds
based on 85 reviews
Rating in categories
Consultant
55.1k
salaries
| ₹5.2 L/yr - ₹17 L/yr |
Associate Consultant
50.8k
salaries
| ₹3 L/yr - ₹11.8 L/yr |
Senior Consultant
46.1k
salaries
| ₹7.4 L/yr - ₹24.3 L/yr |
Senior Analyst
20.8k
salaries
| ₹2 L/yr - ₹9 L/yr |
Senior Software Engineer
20.1k
salaries
| ₹3.5 L/yr - ₹12.4 L/yr |
Wipro
Accenture
Cognizant
TCS