i
CGI Group
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Referral and was interviewed in Aug 2024. There was 1 interview round.
We are using the Selenium framework for automation testing in our project.
Selenium is a popular open-source automation testing framework
It supports multiple programming languages like Java, Python, C#, etc.
Selenium WebDriver is used for automating web applications
It provides features for browser automation, testing across different browsers, and parallel test execution
Framework structure refers to the organization and layout of the automation framework components.
Framework structure includes modules, libraries, test scripts, configuration files, and test data.
It follows a hierarchical structure with layers such as driver scripts, reusable libraries, and test cases.
Frameworks can be structured as linear, modular, data-driven, keyword-driven, or hybrid.
Example: In a data-driven framew...
findelement returns the first matching element on a webpage, findelements returns a list of all matching elements.
findelement returns a single WebElement, findelements returns a list of WebElements
findelement throws NoSuchElementException if no element is found, findelements returns an empty list
Example: driver.findElement(By.id("exampleId")) vs driver.findElements(By.className("exampleClass"))
Handling multiple tabs in Selenium involves switching between tabs and performing actions on each tab.
Use getWindowHandles() to get a set of window handles
Switch to a specific tab using switchTo().window(handle)
Perform actions on the tab
Close the tab if needed using driver.close()
Hashmaps are data structures that store key-value pairs and allow for efficient retrieval of values based on keys.
Hashmaps are also known as dictionaries, maps, or associative arrays.
They use a hash function to map keys to indices in an underlying array.
Hashmaps offer constant-time average case complexity for insertion, deletion, and lookup operations.
Example: HashMap
Try and catch blocks are used in programming to handle exceptions and prevent the program from crashing.
Try block is used to enclose the code that might throw an exception
Catch block is used to handle the exception thrown in the try block
It prevents the program from crashing and allows for graceful error handling
Can also include finally block to execute code regardless of whether an exception is thrown
Inheritance is a concept in object-oriented programming where a class can inherit attributes and methods from another class.
Allows a class to inherit attributes and methods from another class
Promotes code reusability and reduces redundancy
Creates a parent-child relationship between classes
Derived class can access the properties and methods of the base class
Example: Class 'Car' can inherit from class 'Vehicle'
I applied via Approached by Company and was interviewed in May 2024. There were 4 interview rounds.
Microservices are a software development technique where an application is divided into smaller, independent services that communicate with each other through APIs.
Microservices are small, independent services that focus on specific business functions.
Each microservice can be developed, deployed, and scaled independently.
Microservices communicate with each other through APIs, typically using lightweight protocols like ...
Microservices architecture is a design approach where a single application is composed of small, independent services that communicate with each other.
Each microservice is responsible for a specific business function or capability
Microservices communicate with each other through APIs
Each microservice can be developed, deployed, and scaled independently
Microservices architecture promotes flexibility, scalability, and re
Microservices are connected in REST APIs using communication protocols like HTTP, messaging queues, and service discovery.
Microservices communicate with each other using HTTP requests and responses.
Messaging queues like RabbitMQ or Kafka can be used for asynchronous communication between microservices.
Service discovery tools like Eureka or Consul help in locating and connecting to different microservices.
API Gateway ca...
Creating immutable class of orders, sorting orders, finding average of lists of integers.
Create an immutable class Orders with private final fields and no setter methods.
Override equals() and hashCode() methods to ensure uniqueness of objects.
Use Collections.unmodifiableSet() to create a set of orders and Collections.sort() to sort them.
Iterate through the List of List of String of integers, convert to integers, and ca
Spring Cloud is a set of tools and frameworks for building cloud-native applications in Java.
Spring Cloud provides tools for service discovery, load balancing, configuration management, and more in microservices architecture.
It includes projects like Eureka for service discovery, Ribbon for client-side load balancing, and Config Server for externalized configuration.
Spring Cloud integrates with Spring Boot to simplify ...
Deployment build config includes settings for deploying the application.
Use tools like Maven or Gradle to manage dependencies and build the project
Specify deployment environment configurations in a separate file (e.g. application.properties)
Define build scripts for tasks like compiling, packaging, and deploying the application
Leverage CI/CD pipelines for automated builds and deployments
Given a project, you need to create logic for a service using helpers and finally give a aggregate of the final converted price .
Given few java 8 programming functions, you need to convert them to respective java 11 functions
Factory design pattern is used to create objects without specifying the exact class of object that will be created.
Factory method creates objects without specifying the exact class of object that will be created.
It provides a way to delegate the instantiation logic to child classes.
Example: Java's Calendar.getInstance() method returns a Calendar object based on the current timezone and locale.
Redux is a predictable state container for JavaScript apps.
Centralized state management
State is read-only
Changes are made with pure functions (reducers)
Actions are dispatched to update state
Used with React for managing application state
What people are saying about CGI Group
I applied via Referral and was interviewed in Jun 2024. There were 2 interview rounds.
Basically communication and sql 12 question and progaming mcq 12q and 2 coding question
Inheritance is a concept in object-oriented programming where a class inherits attributes and methods from another class.
Allows a class to inherit properties and behaviors from another class
Promotes code reusability and reduces redundancy
Derived class can add its own unique attributes and methods
Example: Class 'Car' can inherit from class 'Vehicle' and gain attributes like 'color' and methods like 'drive'
Inheritance in object-oriented programming allows a class to inherit properties and behaviors from another class.
Inheritance allows for code reusability and promotes a hierarchical structure in classes.
Subclasses can access and modify the properties and methods of their parent class.
Example: class Animal { ... } class Dog extends Animal { ... }
Example: class Shape { ... } class Circle extends Shape { ... }
Reverse a string using array manipulation
Create an array of characters from the input string
Iterate through the array in reverse order and append each character to a new string
Return the reversed string
Use SQL query to select a particular column from a table and get the count of entries.
Use SELECT statement to specify the column you want to retrieve.
Use COUNT() function to get the count of entries in that column.
Combine both in a single query to achieve the desired result.
The time taken for the clock to tick from 8'o clock to 11'o clock is 105 seconds.
Each tick represents 1/8th of an hour (45 minutes) on the clock.
From 8'o clock to 11'o clock, there are 3 hours, so the total time taken is 3 * 45 = 135 minutes = 135 * 60 = 8100 seconds.
The time taken for the clock to tick from 8'o clock to 11'o clock is 8100 - 35 = 8065 seconds.
CGI Group interview questions for popular designations
I applied via Job Portal and was interviewed in Nov 2024. There was 1 interview round.
Selenium framework is a test automation tool used for web applications.
Selenium framework allows for automated testing of web applications.
It supports multiple programming languages like Java, Python, C#, etc.
Selenium WebDriver is a key component for interacting with web elements.
Test scripts can be written using Selenium IDE, WebDriver, or Grid.
Selenium framework can be integrated with tools like TestNG, JUnit, etc.,
Get interview-ready with Top CGI Group Interview Questions
tJoin is used to join two data streams based on a common key, while tMap is used to transform and manipulate data within a single data stream.
tJoin is used to combine data from two input streams based on a common key field
tMap is used to perform transformations, lookups, and calculations on data within a single input stream
tJoin is typically used for joining data from different sources, while tMap is used for data mani...
Different types of routines in Talend include Job, Context, Trigger, and Routine.
Job routines are used to define the main logic of a job
Context routines are used to manage job parameters and variables
Trigger routines are used to execute a job based on a specific event or condition
Routine routines are reusable code snippets that can be called from other components
I applied via Referral and was interviewed in Dec 2024. There were 3 interview rounds.
English Communication and Maths
Delegates are a type-safe function pointers used in C# to reference methods.
Delegates allow methods to be passed as parameters
Delegates can be used to define callback methods
Delegates are used in event handling in C#
Interfaces in .NET Core provide a way to define a contract for classes to implement, promoting code reusability and flexibility.
Interfaces allow for multiple inheritance in .NET Core, as a class can implement multiple interfaces.
Interfaces help in achieving loose coupling between components, making the code more maintainable and testable.
Interfaces are used for dependency injection in .NET Core, allowing for easier uni...
Garbage collection is used to automatically manage memory by reclaiming unused memory and preventing memory leaks.
Prevents memory leaks by reclaiming memory that is no longer in use
Reduces the risk of memory errors and crashes
Improves performance by freeing up memory for other processes
Eliminates the need for manual memory management, reducing developer workload
Some of the top questions asked at the CGI Group interview -
The duration of CGI Group interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 415 interviews
Interview experience
based on 4.5k reviews
Rating in categories
4-10 Yrs
Not Disclosed
3-8 Yrs
Not Disclosed
Software Engineer
8.1k
salaries
| ₹3.8 L/yr - ₹12 L/yr |
Senior Software Engineer
7.2k
salaries
| ₹6.1 L/yr - ₹22.5 L/yr |
Lead Analyst
3.1k
salaries
| ₹9.9 L/yr - ₹29.5 L/yr |
Associate Software Engineer
1.9k
salaries
| ₹2.5 L/yr - ₹6.6 L/yr |
Senior Test Engineer
1.2k
salaries
| ₹6 L/yr - ₹18.4 L/yr |
TCS
Infosys
Wipro
HCLTech