i
Capgemini
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Approached by Company and was interviewed in Oct 2024. There was 1 interview round.
Golang Basics, DBMS, Channels, Unit Test
I applied via Approached by Company and was interviewed in Aug 2024. There were 3 interview rounds.
I applied via Naukri.com and was interviewed in Jan 2023. There were 2 interview rounds.
Buffered channels allow multiple senders to send data without blocking, while unbuffered channels block until data is received.
Buffered channels have a fixed capacity and can store multiple values until they are received
Unbuffered channels have no capacity and block until a receiver is ready to receive the data
Buffered channels are useful for improving performance in cases where there are multiple senders
Unbuffered cha...
I am a Golang developer with experience in building scalable web applications.
Developed a RESTful API using Golang and MongoDB for a social media platform
Implemented authentication and authorization using JWT
Optimized database queries for improved performance
Utilized Goroutines and channels for concurrent processing
Integrated third-party APIs for data retrieval and processing
Go is a fast, efficient, and easy-to-learn programming language with built-in concurrency features.
Advantages of Go include its speed, simplicity, and concurrency features.
Garbage collection is supported by other languages such as Java, Python, and Ruby.
Go routines allow for easy and efficient concurrency without the need for traditional multithreading.
Go is used by companies such as Google, Uber, and Dropbox for its p
A channel is a way for goroutines to communicate with each other and synchronize their execution.
Channels are typed and can only transmit values of that type.
There are two types of channels: buffered and unbuffered.
Unbuffered channels block until a sender and receiver are ready to communicate.
Buffered channels have a fixed capacity and can transmit values without blocking until the buffer is full.
Channels can be used t...
Buffered channels have a fixed capacity while unbuffered channels have no capacity limit.
Buffered channels allow sending multiple values without blocking until the buffer is full.
Unbuffered channels block until the sender and receiver are both ready to communicate.
Error handling methods include returning errors as values, using panic and recover, and logging errors.
Errors can be solved by identifying the root cause, im
Yes, Go allows returning different data types. Go has OOP concepts and I have worked with microservices architecture.
Go allows returning different data types using interfaces.
I have worked with microservices architecture using Go and Docker.
Go has OOP concepts like structs and methods.
Questions on Go programming language concepts
Empty interface is an interface with no methods. Empty struct is a struct with no fields.
Array has fixed size, slice is dynamic. Array is passed by value, slice is passed by reference.
Function is standalone, method is associated with a type. Method has a receiver, function does not.
Questions on Docker, Kubernetes, unit testing, looping concepts, and Go path and root.
Docker is a containerization platform used for packaging and deploying applications. Kubernetes is a container orchestration tool used for managing containerized applications.
Unit testing in Go can be done using the built-in testing package and the 'go test' command.
Go has only one looping concept, the 'for' loop.
Go path is the locati...
Complicity faced in project: Handling concurrent requests and ensuring data consistency
Implemented mutex locks to prevent race conditions
Used channels to coordinate communication between goroutines
Ensured atomicity of operations on shared data
Implemented retry mechanisms to handle failed requests
What people are saying about Capgemini
I applied via Naukri.com and was interviewed in Jan 2023. There were 2 interview rounds.
Channels are used for communication and synchronization between goroutines in a project.
Channels allow safe communication between goroutines without the need for locks or condition variables.
They can be used to synchronize the execution of multiple goroutines.
Channels can be used to implement pipelines, where each stage of the pipeline is a goroutine that communicates with the next stage through a channel.
Channels can ...
Interfaces are used to define a set of methods that a type must implement.
Interfaces allow for polymorphism and decoupling of code.
They are commonly used in Go projects for defining contracts between different components.
Interfaces can be used to create mock objects for testing purposes.
An example of an interface in Go is the io.Reader interface, which defines the Read method.
10 Docker commands and their uses
docker run - starts a new container
docker stop - stops a running container
docker ps - lists all running containers
docker images - lists all available images
docker build - builds an image from a Dockerfile
docker push - pushes an image to a registry
docker pull - pulls an image from a registry
docker exec - runs a command in a running container
docker rm - removes a container
docker rmi - rem
Capgemini interview questions for designations
I applied via Naukri.com and was interviewed in Oct 2024. There was 1 interview round.
gRPC is a high-performance, open-source RPC framework developed by Google.
gRPC stands for Google Remote Procedure Call.
It uses HTTP/2 for transport, Protocol Buffers for serialization, and supports multiple programming languages.
gRPC is commonly used for building efficient and scalable microservices.
It allows for bidirectional streaming and authentication features.
Examples of companies using gRPC include Google, Netfli
Concurrency is the ability of a program to execute multiple tasks simultaneously. Race condition occurs when multiple threads access shared data and try to change it at the same time.
Concurrency allows multiple tasks to run in parallel, improving performance and efficiency.
Race condition happens when multiple threads access and modify shared data without proper synchronization.
To prevent race conditions, synchronizatio...
I applied via Company Website and was interviewed in Dec 2024. There was 1 interview round.
Asked mostly on grpc.
Couple of coding questions like write the protobuf file for interfaces and gave a string from which asked to find out the valid IP address in that string.
1) Search an array element
2) braces balance program
3) anagrams Program
A map is a built-in data structure in Golang that allows you to store key-value pairs.
Maps are unordered collections of key-value pairs.
Keys in a map must be unique.
Maps are useful for efficient lookup and retrieval of values based on their keys.
You can add, update, and delete key-value pairs in a map.
Example: map[string]int{"apple": 5, "banana": 3}
A slice is a dynamically-sized, flexible view of an underlying array in Go.
Slices are similar to arrays but with a variable length.
They are reference types and can be resized.
Slices can be created using the make() function or by slicing an existing array.
They provide a convenient way to work with collections of data.
Arrays have fixed length, while slices are dynamic. Slices are references to arrays.
Arrays have a fixed length, while slices can grow or shrink dynamically.
Slices are references to arrays, allowing for efficient memory usage.
Arrays are value types, while slices are reference types.
Arrays are initialized with a specific size, while slices can be created from existing arrays or other slices.
Slices provide additional func
Go routines are lightweight threads of execution that allow concurrent programming in Go.
Go routines are created using the 'go' keyword followed by a function call.
They are executed concurrently and independently of the main program.
Go routines communicate with each other using channels.
They are used to achieve concurrency and parallelism in Go programs.
Channels are used in Go to enable communication and synchronization between goroutines.
Channels are typed and can only send or receive values of that type.
They can be created using the built-in make() function.
The <- operator is used to send and receive values from channels.
Channels can be used to implement various synchronization patterns like blocking and non-blocking operations.
They are commonly used for concurrent
I applied via Recruitment Consulltant and was interviewed in Apr 2024. There was 1 interview round.
Ask to write a program for find prime number of n numbers using gorountines
1 Interview rounds
Consultant
55.2k
salaries
| ₹5.2 L/yr - ₹18 L/yr |
Associate Consultant
52k
salaries
| ₹2.9 L/yr - ₹11.8 L/yr |
Senior Consultant
46.1k
salaries
| ₹7.5 L/yr - ₹25 L/yr |
Senior Analyst
20.7k
salaries
| ₹2 L/yr - ₹9 L/yr |
Senior Software Engineer
20k
salaries
| ₹3.5 L/yr - ₹12.1 L/yr |
Wipro
Accenture
Cognizant
TCS