i
CGI Group
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Campus Placement and was interviewed before Apr 2023. There were 2 interview rounds.
There were 3 coding questions in the test.
I applied via Naukri.com and was interviewed before Apr 2023. There were 2 interview rounds.
I applied via Referral and was interviewed before Apr 2023. There was 1 interview round.
What people are saying about CGI Group
I appeared for an interview in Sep 2021.
Round duration - 60 Minutes
Round difficulty - Medium
This round was majorly focused towards some core concepts in Java and OOPS.
Access specifiers in Java control the visibility of classes, methods, and variables.
There are four access specifiers in Java: public, private, protected, and default.
Public: accessible from any other class.
Private: accessible only within the same class.
Protected: accessible within the same package and subclasses.
Default: accessible only within the same package.
JIT compiler stands for Just-In-Time compiler, which compiles code during runtime instead of ahead of time.
JIT compiler improves performance by compiling code on the fly as it is needed
It can optimize code based on runtime conditions and platform specifics
Examples include Java HotSpot VM's JIT compiler and .NET's JIT compiler
JVM allocates 5 types of memory areas: Method Area, Heap, Stack, PC Register, and Native Method Stack.
Method Area stores class structures and static variables.
Heap is where objects are allocated.
Stack holds method-specific data and references.
PC Register stores the address of the current instruction being executed.
Native Method Stack is used for native method execution.
Abstract class can have both abstract and non-abstract methods, while interface can only have abstract methods.
Abstract class can have constructors, fields, and methods, while interface cannot have any implementation.
A class can implement multiple interfaces but can only inherit from one abstract class.
Abstract classes are used to define a common behavior for subclasses, while interfaces are used to define a contract f...
Data encapsulation is the concept of bundling data and methods that operate on the data into a single unit or class.
Data encapsulation helps in hiding the internal state of an object and restricting access to it.
It allows for better control over the data by preventing external code from directly modifying it.
Encapsulation also promotes code reusability and modularity by grouping related data and functions together.
Exam...
Round duration - 60 Minutes
Round difficulty - Medium
This round started with some basic questions from Spring Boot and then the interviewer switched to SQL and asked me to execute some questions on SQL followed by some more questions from OOPS and Java Design Pattern.
Ninja needs to perform basic string compression. For any character that repeats consecutively more than once, replace the repeated sequence with the character followed...
Implement a function to compress a string by replacing consecutive characters with the character followed by the count of repetitions.
Iterate through the input string and keep track of consecutive characters and their counts
Replace consecutive characters with the character followed by the count of repetitions if count is greater than 1
Return the compressed string
Dependency injection is a design pattern where components are given their dependencies rather than creating them internally.
Allows for easier testing by providing mock dependencies
Promotes loose coupling between components
Improves code reusability and maintainability
Examples: Constructor injection, Setter injection, Interface injection
Spring Boot offers basic annotations like @RestController, @RequestMapping, @Autowired, @Component, @Service, @Repository.
@RestController - used to define RESTful web services.
@RequestMapping - maps web requests to specific handler methods.
@Autowired - used for automatic dependency injection.
@Component - marks a Java class as a Spring component.
@Service - marks a Java class as a Spring service.
@Repository - marks a Jav
@ComponentScan is used in class files to enable component scanning for Spring beans.
Enables Spring to automatically detect and register Spring beans within the specified package(s)
Reduces the need for manual bean registration in configuration files
Can be used with basePackages attribute to specify the base package for scanning
Can also be used with includeFilters and excludeFilters to customize the scanning process
Design patterns in Java are reusable solutions to common problems encountered in software design.
Creational Patterns: Singleton, Factory, Builder
Structural Patterns: Adapter, Decorator, Facade
Behavioral Patterns: Observer, Strategy, Template Method
Round duration - 30 Minutes
Round difficulty - Easy
This is a cultural fitment testing round. HR was very frank and asked standard questions. Then we discussed about my
role.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
CGI Group interview questions for designations
I applied via Referral and was interviewed before Oct 2022. There were 3 interview rounds.
Indian economy , work in india or abroad
Get interview-ready with Top CGI Group Interview Questions
I applied via Naukri.com and was interviewed before Apr 2022. There were 2 interview rounds.
They have focused on logic while writing the code not actual implementation
I expect a competitive salary based on my experience, skills, and the industry standards.
I have researched the average salary range for software engineers in this location and industry.
I have considered my years of experience and the value I can bring to the company.
I am open to negotiation and willing to discuss the compensation package in detail.
I prioritize fair compensation that aligns with my skills and responsibi
You should hire me because of my strong technical skills, problem-solving abilities, and passion for software development.
I have a deep understanding of programming languages such as Java, C++, and Python.
I have experience in developing and maintaining complex software systems.
I am skilled in problem-solving and can quickly analyze and resolve issues.
I am a fast learner and can adapt to new technologies and frameworks.
...
In 5 years, I see myself as a senior software engineer leading a team and working on cutting-edge technologies.
Leading a team of software engineers
Working on advanced technologies like artificial intelligence and machine learning
Contributing to the development of innovative software solutions
Continuously learning and staying updated with the latest industry trends
Mentoring and guiding junior engineers
Taking up addition
I am a software engineer with experience in developing and maintaining software applications.
I have a strong background in programming languages such as Java, C++, and Python.
I have worked on various projects, including developing web applications and mobile apps.
I am skilled in problem-solving and debugging, ensuring efficient and reliable software.
I have experience with version control systems like Git and collaborat...
I applied via Campus Placement and was interviewed before Feb 2023. There was 1 interview round.
Flatten an array of strings
Use recursion to iterate through the array and flatten nested arrays
Concatenate the elements of the array into a single array
Check if each element is an array, if so, recursively flatten it
I applied via Campus Placement and was interviewed before Sep 2022. There were 5 interview rounds.
Normal aptitude questions+ coding
Discussion more on projects done to check aptitude
I applied via Approached by Company and was interviewed in Sep 2021. There were 2 interview rounds.
Polymorphism is the ability of an object to take on many forms. It allows objects of different classes to be treated as if they were of the same class.
Polymorphism can be achieved through method overloading and method overriding
Method overloading is when multiple methods have the same name but different parameters
Method overriding is when a subclass provides its own implementation of a method that is already defined in...
Hashmap is a data structure that stores key-value pairs and uses hashing to retrieve values quickly.
Hashmap uses an array to store the key-value pairs
The keys are hashed to generate an index in the array
If two keys hash to the same index, a collision occurs and the values are stored in a linked list
Retrieving a value involves hashing the key to find the index and then traversing the linked list if necessary
Some of the top questions asked at the CGI Group Software Engineer interview -
The duration of CGI Group Software Engineer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 69 interviews
5 Interview rounds
based on 964 reviews
Rating in categories
Software Engineer
8.1k
salaries
| ₹3.8 L/yr - ₹12 L/yr |
Senior Software Engineer
7.3k
salaries
| ₹6.1 L/yr - ₹23 L/yr |
Lead Analyst
3.1k
salaries
| ₹10 L/yr - ₹31.5 L/yr |
Associate Software Engineer
1.9k
salaries
| ₹2.5 L/yr - ₹7 L/yr |
Senior Test Engineer
1.2k
salaries
| ₹6 L/yr - ₹21.3 L/yr |
Accenture
Wipro
Cognizant
Capgemini