i
TCS
Filter interviews by
I was interviewed in Dec 2024.
API Gateway implementation is a centralized service that routes, manages, and secures API calls.
API Gateway acts as a single entry point for all API calls
It can handle authentication, rate limiting, caching, and request/response transformations
Examples include AWS API Gateway, Apigee, Kong
Circuit breaker is a design pattern used to prevent system overload by temporarily stopping requests to a failing service.
Circuit breaker monitors requests to a service and opens when the service fails repeatedly.
It helps prevent cascading failures and allows the system to gracefully degrade.
Once the circuit breaker is open, it can periodically check if the service has recovered before allowing requests again.
Deadlock is a situation in which two or more processes are unable to proceed because each is waiting for the other to release a resource.
Avoid circular wait by ensuring processes request resources in the same order.
Prevent hold and wait by requiring processes to request all needed resources at once.
Implement a timeout mechanism to break potential deadlocks.
Use resource allocation graphs to detect and prevent deadlocks.
...
The equals() method is used to compare the contents of two objects for equality.
The equals() method is a method of the Object class in Java.
It is used to compare the contents of two objects for equality.
The default implementation of equals() in the Object class compares memory addresses, so it is often overridden in custom classes to compare content.
Example: String class overrides equals() method to compare the content
MongoDB was integrated in the application by using the official Java driver and configuring connection settings.
Used the official MongoDB Java driver to interact with the database
Configured connection settings such as host, port, database name, and authentication credentials
Implemented CRUD operations using MongoDB Java driver methods
Utilized MongoDB aggregation framework for complex queries
Hibernate is an open-source Java framework that simplifies the development of database interactions in Java applications.
Hibernate is an Object-Relational Mapping (ORM) tool that maps Java objects to database tables.
It provides a way to perform database operations using Java objects instead of writing SQL queries.
Hibernate handles the mapping of Java classes to database tables and vice versa, as well as the generation ...
Runnable is a functional interface with a single run() method, while Callable is a functional interface with a single call() method.
Runnable is used for tasks that do not return a result, while Callable is used for tasks that return a result.
Callable can throw checked exceptions, while Runnable cannot.
Callable returns a Future object, which can be used to retrieve the result of the computation.
Example: Runnable - execu...
The Callable interface in Java returns a Future object.
Callable interface returns a Future object which represents the result of a computation that may not be available yet.
The Future object can be used to retrieve the result of the computation, check if it is done, or cancel the computation.
Example: Callable<Integer> task = () -> { return 42; }
Monitor application health using metrics, logs, alerts, and performance monitoring tools.
Use monitoring tools like Prometheus, Grafana, or New Relic to track key metrics such as CPU usage, memory usage, response times, and error rates.
Implement logging to record important events and errors in your application. Use tools like ELK stack (Elasticsearch, Logstash, Kibana) for log analysis.
Set up alerts to notify you of any...
To call an API in a Microservice architecture, use HTTP requests or messaging protocols like gRPC.
Use HTTP requests to communicate between microservices
Implement RESTful APIs for easy integration
Leverage messaging protocols like gRPC for efficient communication
Consider using service discovery mechanisms for dynamic API calls
Profiles in Java are configurations that define the capabilities of a Java platform.
Profiles allow developers to target specific types of devices or applications.
They help in reducing the size of the Java runtime environment by including only the necessary APIs.
Examples include Java SE Embedded Profile for embedded devices and Java SE Compact Profile for resource-constrained environments.
OpenFeign is a declarative web service client used to simplify the process of making HTTP requests in microservices architecture.
OpenFeign allows developers to define RESTful web services as interfaces and automatically generate the necessary implementation code.
It integrates seamlessly with Spring Cloud and other microservices frameworks to facilitate communication between services.
OpenFeign supports features like loa...
Service registry and discovery involves registering services and allowing clients to discover and connect to them.
Implement a service registry where services can register themselves with metadata
Use a service discovery mechanism for clients to find and connect to services
Implement health checks to ensure services are available and healthy
Use a load balancer to distribute traffic among multiple instances of a service
Spring Boot Actuators are built-in tools that provide insight into the running application.
Actuators expose various endpoints to monitor and manage the application.
They can be used to check health, metrics, environment details, and more.
Examples include /actuator/health, /actuator/metrics, and /actuator/env.
Synchronous communication is blocking, while asynchronous communication is non-blocking.
Synchronous communication waits for a response before continuing, while asynchronous communication does not wait.
Examples of synchronous communication include traditional function calls, while examples of asynchronous communication include callbacks and promises.
Synchronous communication can lead to performance issues if there are d...
Synchronized keyword is used in Java to control access to shared resources by multiple threads.
Synchronized keyword can be applied to methods or code blocks to ensure only one thread can access the synchronized code at a time.
It prevents race conditions and ensures thread safety by creating a lock on the object or class.
Example: synchronized void myMethod() { // synchronized code block }
Excessive use of synchronized blocks and methods in Java can lead to performance issues and potential deadlocks.
Decreased performance due to increased contention for locks
Potential deadlocks if multiple threads are waiting for each other to release locks
Increased complexity and difficulty in debugging and maintaining code
Use synchronized sparingly and consider alternatives like ConcurrentHashMap or Lock interface
The number of threads needed for an application can be determined based on factors like the type of tasks, hardware resources, and performance requirements.
Consider the type of tasks your application needs to perform - CPU-bound tasks may benefit from more threads, while I/O-bound tasks may not.
Take into account the hardware resources available - more threads may be beneficial on a multi-core processor compared to a si...
Executor framework is a framework in Java that provides a way to manage and execute tasks asynchronously.
Allows for managing thread execution in a more efficient way
Provides a way to decouple task submission from task execution
Supports various types of executors like ThreadPoolExecutor and ScheduledExecutorService
Helps in handling tasks concurrently and asynchronously
BlockingQueue is an interface in Java that represents a queue which supports operations that wait for the queue to become non-empty when retrieving an element and wait for space to become available in the queue when adding an element.
BlockingQueue is part of the java.util.concurrent package.
It is used for implementing producer-consumer scenarios where multiple threads are involved.
Methods like put() and take() are used...
Seeking new challenges and opportunities for growth.
Desire for career advancement
Looking for new challenges
Seeking better work-life balance
Company restructuring or downsizing
Relocation to a new area
Identify the duplicate character in the string.
I applied via Company Website and was interviewed in Dec 2024. There were 2 interview rounds.
There are two main sections: foundation and advanced. The foundation section consists of three subsections: quantitative, reasoning, and verbal. If you pass the foundation section but do not clear the advanced section, you will be considered for either the ninja role or the digital role during the interview process. The advanced section includes advanced aptitude questions and two coding questions.
What people are saying about TCS
I was interviewed in Jan 2025.
Directives in Angular are markers on a DOM element that tell Angular to attach a specified behavior to that DOM element or transform it.
Directives are used to create reusable components or add behavior to existing elements.
There are three types of directives in Angular: Component, Structural, and Attribute directives.
Examples of built-in directives in Angular include ngIf, ngFor, and ngStyle.
Pipes are a form of inter-process communication used in Unix-like operating systems to send data between processes.
Pipes allow communication between processes by connecting the standard output of one process to the standard input of another process
There are two types of pipes: unnamed pipes and named pipes (also known as FIFOs)
Unnamed pipes are created using the pipe system call and exist only as long as the processes ...
DI system in Angular is a design pattern where dependencies are injected into a class rather than the class creating them.
DI helps in creating loosely coupled components in Angular applications.
It allows for easier testing and maintenance of code.
Dependencies are provided to a component through its constructor.
Angular's DI system is hierarchical, meaning dependencies can be injected at different levels of the applicati...
An HTTP Interceptor is a middleware component that intercepts incoming and outgoing HTTP requests in an application.
HTTP Interceptors are commonly used in Angular applications to modify or log HTTP requests/responses.
They can be used to add headers, handle errors, or perform authentication.
An example of using an HTTP Interceptor is adding an authorization token to every outgoing request for secure API calls.
localStorage and sessionStorage are both web storage options in JavaScript, but they have different scopes and lifetimes.
localStorage stores data with no expiration date, while sessionStorage stores data for one session only
localStorage data persists even after the browser is closed and reopened, while sessionStorage data is lost when the browser is closed
Both can only store strings, but can be converted to other data
Common design patterns in Angular include Singleton, Observer, Factory, and Dependency Injection.
Singleton pattern ensures a class has only one instance and provides a global point of access to it.
Observer pattern defines a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automatically.
Factory pattern is used to create objects without specifying t...
Route guards in Angular are used to control access to certain routes in an application.
Route guards are used to protect routes in Angular applications by controlling whether a route can be activated or not.
There are three types of route guards in Angular: CanActivate, CanActivateChild, and CanDeactivate.
CanActivate guard is used to determine if a route can be activated.
CanActivateChild guard is used to determine if a c...
Methods for communication between components include synchronous and asynchronous communication, message queues, APIs, and web services.
Synchronous communication: Components communicate in real-time, waiting for a response before proceeding.
Asynchronous communication: Components communicate without waiting for a response, allowing for parallel processing.
Message queues: Components send messages to a queue for other com...
TCS interview questions for popular designations
I was interviewed in Jan 2025.
It sounds like you might be asking for an aptitude test that has 20 questions or characters, possibly for a job application. Aptitude tests for jobs usually focus on assessing your ability to think logically, solve problems, and apply basic skills in areas like math, reasoning, and verbal abilities.
Here’s an example of 20 sample aptitude test questions, covering different types of skills:
1. Numerical Aptitude
What is 15% of 200?
If a car travels 60 miles in 1 hour, how far will it travel in 5 hours at the same speed?
Solve for x: 2x + 5 = 15.
2. Logical Reasoning
What comes next in the sequence: 2, 4, 8, 16, ___?
If all roses are flowers and some flowers are red, are all roses red?
Which number is the odd one out: 3, 5, 9, 7?
3. Verbal Ability
Find the synonym of "quick": a) slow, b) fast, c) steady, d) loud
Choose the correct sentence: "She don't like apples" or "She doesn't like apples?"
Find the antonym of "bright": a) shiny, b) dull, c) happy, d) light
4. Data Interpretation
If a graph shows sales increasing by 20% each month, how much is the increase in the 3rd month if sales were $100 initially?
The pie chart below shows the distribution of monthly expenses. If the rent is 25%, how much is the rent if the total is $1200?
5. Spatial
Get interview-ready with Top TCS Interview Questions
I was interviewed in Dec 2024.
I want to jobs for interview
A company for portal the technical support know
A saw the very store pages of line mean
I applied via campus placement at Lovely Professional University (LPU) and was interviewed in Dec 2024. There were 4 interview rounds.
Basic aptitude tests
There were two coding questions: one was classified as easy, while the other was of medium difficulty. The code must pass all test cases to be deemed complete.
Approach manager openly and honestly, provide specific examples of workload struggles, and suggest potential solutions.
Schedule a meeting with your manager to discuss your workload challenges
Be honest and transparent about the specific tasks or projects that are overwhelming you
Provide examples of how the workload is impacting your productivity and quality of work
Suggest potential solutions such as prioritizing tasks, ...
I currently have one other job offer, but I am particularly interested in this company due to its innovative projects and strong company culture.
Have one other job offer but interested in this company due to innovative projects
Impressed by strong company culture
Believe this company aligns with my career goals and values
I have gaps in my experience due to focusing on specialized projects and roles.
I have chosen to focus on specific areas of expertise rather than gaining a broad range of experience
I have taken on challenging projects that have required a significant time commitment
I have prioritized deepening my knowledge in certain technologies or industries over gaining general experience
I successfully completed a project with a tight deadline by prioritizing tasks and staying focused.
Received a project with a short deadline due to unexpected circumstances
Created a detailed timeline and prioritized tasks based on urgency
Worked extra hours and stayed focused to meet the deadline
Successfully completed the project on time and received positive feedback
I approach problem-solving by analyzing the issue, brainstorming solutions, and collaborating with team members. My leadership skills were evident when I successfully led a project to implement a new software system.
Analyze the problem thoroughly before jumping into solutions
Brainstorm potential solutions and evaluate their feasibility
Collaborate with team members to gather different perspectives and insights
Communicat...
I applied via TCS and was interviewed in Dec 2024. There was 1 interview round.
Hash technology is a method used to convert data into a fixed-size string of characters, typically used for data security and integrity.
Hash technology uses algorithms to generate a unique fixed-size string of characters from input data.
It is commonly used for data security, password storage, digital signatures, and data integrity verification.
Examples of hash algorithms include MD5, SHA-1, and SHA-256.
Blockchain is a decentralized, distributed ledger technology used to securely record transactions across multiple computers.
Decentralized database
Consensus mechanism
Immutable record of transactions
Cryptographic security
Smart contracts
Examples: Bitcoin, Ethereum
DML stands for Data Manipulation Language, used to manage data in a database.
DML is a subset of SQL (Structured Query Language) used to insert, update, delete, and retrieve data in a database.
Examples of DML commands include INSERT, UPDATE, DELETE, and SELECT.
DML is essential for managing and manipulating data within a database system.
Binary to decimal conversion involves multiplying each digit by 2 raised to the power of its position.
To convert binary to decimal, start from the rightmost digit and multiply each digit by 2 raised to the power of its position.
Add all the results together to get the decimal equivalent.
For example, to convert binary 1011 to decimal: 1*2^3 + 0*2^2 + 1*2^1 + 1*2^0 = 11.
Iterate through array and compare each element to find the maximum number.
Iterate through the array using a loop.
Compare each element to a variable storing the current maximum number.
Update the variable if a larger number is found.
Return the maximum number at the end.
Basic HTML code for inserting image and creating a table
Use <img> tag to insert an image with src attribute
Use <table>, <tr>, <td> tags to create a table structure
Specify image source and table content within respective tags
I applied via campus placement at Vellore Institute of Technology (VIT) and was interviewed in Dec 2024. There were 2 interview rounds.
The 4 pillars of C++ are encapsulation, inheritance, polymorphism, and abstraction.
Encapsulation: Bundling data and methods that operate on the data into a single unit (class).
Inheritance: Creating new classes from existing classes, inheriting their attributes and methods.
Polymorphism: Ability to present the same interface for different data types.
Abstraction: Hiding complex implementation details and showing only the
Normalization in SQL is the process of organizing data in a database to reduce redundancy and improve data integrity.
Normalization involves breaking down a database into smaller, more manageable tables and defining relationships between them.
It helps in reducing data redundancy by storing data in a structured and organized manner.
Normalization ensures data integrity by preventing anomalies such as insertion, update, an...
Abstract class is a class that cannot be instantiated and may contain abstract methods.
Cannot be instantiated directly
May contain abstract methods that must be implemented by subclasses
Used to define a common interface for a group of related classes
Pseudo code for prime number is a simple algorithm to determine if a given number is prime or not.
Start by checking if the number is less than 2, if so it is not prime
Then iterate from 2 to the square root of the number and check if it is divisible by any number in that range
If it is not divisible by any number, then it is a prime number
Create a login page using HTML, CSS, and JS
Use HTML for structure and form elements
Style the page using CSS for layout and design
Implement client-side validation using JavaScript
Handle form submission and authentication using JS
The duration of TCS interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 8.4k interviews
Interview experience
based on 89.1k reviews
Rating in categories
System Engineer
1.1L
salaries
| ₹1 L/yr - ₹9 L/yr |
IT Analyst
66.8k
salaries
| ₹5.1 L/yr - ₹16 L/yr |
AST Consultant
51.5k
salaries
| ₹8 L/yr - ₹25 L/yr |
Assistant System Engineer
29.8k
salaries
| ₹2.7 L/yr - ₹7 L/yr |
Associate Consultant
29.3k
salaries
| ₹9 L/yr - ₹32 L/yr |
Amazon
Wipro
Infosys
Accenture