i
HCLTech
Filter interviews by
Implementing a worker pool pattern in Golang for concurrent task processing.
Define a worker struct that will process tasks.
Create a channel for tasks and a wait group to manage goroutines.
Spawn a fixed number of workers that listen for tasks on the channel.
Distribute tasks to workers by sending them through the channel.
Ensure proper synchronization using wait groups to wait for all tasks to complete.
The sync package in Golang provides synchronization primitives for managing concurrent access to shared resources.
Provides Mutex and RWMutex for mutual exclusion.
Example: Using sync.Mutex to protect shared data from concurrent access.
Offers WaitGroup to wait for a collection of goroutines to finish.
Example: Using sync.WaitGroup to synchronize multiple goroutines.
Includes Once to ensure a function is only executed ...
Go's garbage collector is a concurrent, mark-and-sweep collector designed for low-latency and high-throughput applications.
Go uses a concurrent garbage collector that runs alongside the application, minimizing pause times.
It employs a mark-and-sweep algorithm: it marks reachable objects and sweeps away unreferenced ones.
The garbage collector is designed to handle large heaps efficiently, optimizing memory usage.
Go...
The LCC sub-layer manages logical channel coding for efficient data transmission in communication systems.
LCC stands for Logical Channel Coding, crucial for error correction in data transmission.
It encodes data to ensure reliable communication over noisy channels, like in mobile networks.
For example, LCC is used in LTE networks to enhance data integrity during transmission.
It works alongside other layers in the pr...
What people are saying about HCLTech
User mode restricts access to system resources, while privileged mode allows full control over hardware and system operations.
User mode is a restricted mode where applications run with limited access to system resources.
Privileged mode (or kernel mode) allows direct access to hardware and system memory.
In user mode, applications cannot execute certain instructions that could harm the system.
Examples: A web browser...
Data encapsulation is the process of wrapping data with protocol information, while decapsulation is the removal of that information.
Encapsulation involves adding headers and trailers to data packets.
Example: In networking, TCP/IP encapsulates data into packets with source and destination addresses.
Decapsulation occurs at the receiving end, where the protocol information is stripped away to retrieve the original d...
Cisco routers utilize various types of memory for different functions, including RAM, ROM, NVRAM, and Flash memory.
RAM (Random Access Memory): Temporary storage for running processes and configurations.
ROM (Read-Only Memory): Contains the bootstrap program and basic firmware.
NVRAM (Non-Volatile RAM): Stores the startup configuration file, retaining data even when powered off.
Flash Memory: Used for storing the oper...
BOOTP (Bootstrap Protocol) is a network protocol used for booting devices and assigning IP addresses dynamically.
BOOTP allows a client to discover its IP address from a server.
It uses a client-server model where the client requests configuration information.
Commonly used in diskless workstations and network devices.
Example: A network printer using BOOTP to obtain its IP address and configuration settings.
A typical day involves analyzing deductions, resolving discrepancies, and collaborating with teams to ensure accurate accounts receivable.
Start the day by reviewing open deductions and prioritizing them based on impact and age.
Analyze deduction reasons by examining invoices, contracts, and customer communications.
Collaborate with sales and customer service teams to gather necessary information for resolution.
Docum...
Off invoice deals are discounts or promotions applied after the invoice is generated, affecting the final payment amount.
Off invoice deals are typically used in retail and wholesale transactions.
They can include promotional discounts, rebates, or allowances.
For example, a retailer may receive a 10% discount on an invoice after the sale is completed.
These deals help incentivize bulk purchases or clear out inventory...
I applied via Company Website and was interviewed before Mar 2021. There were 3 interview rounds.
A tap library is a collection of pre-built code snippets that can be easily integrated into software applications.
Tap libraries can save developers time and effort by providing pre-built code for common functions.
Examples of tap libraries include Google's Tap Target Library for Android and the Tapku Library for iOS.
Tap libraries can be open source or proprietary, and may be free or require a license fee.
Using a tap lib...
I appeared for an interview in May 2025, where I was asked the following questions.
Both 'const char* p' and 'char const* p' are equivalent, indicating a pointer to a constant character string.
const char* p: Pointer to a constant character. The character data cannot be modified through this pointer.
char const* p: Same as above; the const qualifier applies to the character data, not the pointer itself.
Example: const char* str1 = 'Hello'; char const* str2 = 'World'; Both point to string literals that ca...
A function in C is a block of code that performs a specific task and can be reused throughout a program.
Functions help in code modularity and reusability.
Syntax: returnType functionName(parameters) { /* code */ }
Example: int add(int a, int b) { return a + b; }
Functions can return values or be void (no return).
Example of void function: void printHello() { printf('Hello'); }
C has several data types, including basic types, derived types, and user-defined types, each serving different purposes.
1. Basic Data Types: Include int, char, float, and double. Example: int age = 30;
2. Derived Data Types: Arrays, pointers, structures, and unions. Example: int arr[5];
3. User-Defined Data Types: Enums and typedefs. Example: enum Color {RED, GREEN, BLUE};
4. Size and Range: Each data type has a specific ...
I appeared for an interview in Jan 2025.
A sequence was provided: 4181, 2684, 1597, 987, 610.
first 2 are given and write code for other value calculation using java 8
The second question required writing a reverse of a palindrome using both Java 8 streams. I was able to successfully write both and clear the first round.
Java 17 introduces sealed classes to restrict inheritance and improve code maintainability.
Sealed classes are declared using the 'sealed' keyword followed by the permitted subclasses.
Subclasses of a sealed class must be either final or sealed themselves.
Errors may occur when trying to extend a sealed class with a non-permitted subclass.
Implementation of 'notify me if item is back in stock' feature in an ecommerce application
Create a database table to store user notifications for out-of-stock items
Implement a service to check item availability and send notifications to subscribed users
Provide a user interface for users to subscribe to notifications for specific items
Utilize Java concurrency features to optimize Excel operations for faster response times.
Use Java's ExecutorService to manage a pool of threads for concurrent processing.
Implement parallel streams to process large datasets in Excel efficiently.
Utilize Apache POI for reading/writing Excel files in a multi-threaded manner.
Consider using CompletableFuture for asynchronous operations on Excel data.
Batch operations to minim...
I appeared for an interview in Jul 2025, where I was asked the following questions.
I appeared for an interview in Jan 2025.
I process invoices by verifying accuracy, coding, obtaining approvals, and entering into the system. I address queries related to payment status, discrepancies, and vendor information through email.
Verify accuracy of invoices
Code invoices based on expense categories
Obtain necessary approvals before processing
Enter invoices into the accounting system
Address queries related to payment status
Resolve discrepancies in invoi...
When invoicing in a different currency, I take actions such as converting the amount to the company's base currency, checking for exchange rate fluctuations, and ensuring accuracy in the conversion process.
Convert the amount on the invoice to the company's base currency using the current exchange rate
Check for exchange rate fluctuations to ensure accuracy in the conversion process
Communicate with vendors or suppliers t...
I applied via Campus Placement and was interviewed in Dec 2024. There were 5 interview rounds.
The assessment focused on general aptitude, which was relatively easy and manageable to pass. However, the pseudo-code section may pose a greater challenge during the first round.
It is very easy; you just need to speak at least once to easily pass through this round. mostly they dont try to reject you unless you are very nervous and very low about confidence they want you to speak atleast once , even the point is valid or not.
You will undergo a written test comprising three coding sections (either in Python or C) containing five or six questions each, along with ten multiple-choice questions on software testing, which are relatively easy. However, the most challenging section is networking, for which you will need to write theory responses; therefore, it is important to prepare thoroughly for that part.
I applied via Naukri.com and was interviewed in Dec 2024. There was 1 interview round.
Active Directory is a directory service developed by Microsoft for Windows domain networks.
Centralized database for managing network resources
Stores information about users, computers, and other network objects
Allows for authentication and authorization of users
Enables administrators to assign policies, deploy software, and apply updates
Example: Creating user accounts, managing group policies
Active Directory Users and Computers is a Microsoft Management Console snap-in that allows administrators to manage users, groups, computers, and organizational units in a Windows domain environment.
Allows administrators to create, delete, and manage user accounts
Enables administrators to create and manage security groups
Provides the ability to manage computer accounts and organizational units
Allows for delegation of a...
Creating users and groups in Active Directory involves using tools like Active Directory Users and Computers.
Open Active Directory Users and Computers tool
Navigate to the appropriate organizational unit (OU)
Right-click on the OU and select 'New' -> 'User' or 'Group'
Fill in the required user or group information such as name, username, password, etc.
Click 'OK' to create the user or group
Enabling and disabling users in Active Directory involves using the Active Directory Users and Computers tool.
Open Active Directory Users and Computers tool
Locate the user account to enable/disable
Right-click on the user account and select 'Enable Account' or 'Disable Account'
Click 'Apply' to save the changes
A Distribution List in Exchange Server is a group of email recipients that can be addressed as a single recipient.
Used to send emails to multiple recipients at once
Can be created and managed by users or administrators
Can include both internal and external email addresses
Can be used for sending newsletters, announcements, etc.
A shared mailbox in Exchange Server is a mailbox that multiple users can access to send and receive emails.
Allows multiple users to access the same mailbox
Users can send and receive emails on behalf of the shared mailbox
Useful for departments or teams to manage a common email address
Can be set up with permissions to control access levels
Group Policy in Active Directory is applied through a hierarchical process based on site, domain, and organizational unit levels.
Group Policy objects (GPOs) are created and linked to sites, domains, or organizational units in Active Directory.
The order of precedence for applying Group Policy is Local, Site, Domain, and Organizational Unit.
Group Policy settings are inherited from parent containers to child containers un...
GPOs are applied in the following order: Local, Site, Domain, OU. The last applied GPO takes precedence.
Local GPOs are applied first
Site GPOs are applied next
Domain GPOs are applied after Site GPOs
OU GPOs are applied last and take precedence over others
The last applied GPO takes precedence in case of conflicting settings
WMI in GPO allows administrators to manage Windows settings and resources through a centralized interface.
WMI is a set of extensions to the Windows Driver Model that provides an operating system interface through which instrumented components provide information and notification.
In GPO, WMI filters can be used to apply policies based on specific conditions, such as hardware or software configurations.
Administrators can...
Distribution list is used for sending emails to a group of people, while a shared mailbox is used for multiple users to access and send emails from a single email address.
Distribution list is a group email address that sends emails to multiple recipients.
Shared mailbox is an email address that multiple users can access and send emails from.
Distribution list is mainly used for broadcasting emails to a group of people.
Sh...
E1, E3, and E5 plans in Microsoft Office 365 differ in features and pricing.
E1 plan includes basic Office applications and online services.
E3 plan includes advanced Office applications, email hosting, and online services.
E5 plan includes all features of E3 plus advanced security and compliance tools.
E5 plan is the most expensive among the three plans.
Cloud storage is stored on remote servers accessed over the internet, while on-premises storage is stored locally within an organization's physical location.
Cloud storage is accessed over the internet, providing flexibility and scalability.
On-premises storage is physically located within an organization's premises, providing more control over data security.
Cloud storage is typically managed by a third-party provider, w...
An administrative role can be assigned to a user in Active Directory by using the Active Directory Users and Computers tool.
Open Active Directory Users and Computers tool
Locate the user to whom you want to assign the administrative role
Right-click on the user and select Properties
Go to the Member Of tab
Click Add and enter the name of the administrative group
Click OK to save the changes
Active Directory is a directory service developed by Microsoft for Windows domain networks.
Centralized database for managing network resources
Stores information about users, computers, and other network objects
Allows for authentication and authorization of users
Enables single sign-on for users across multiple applications
Supports group policies for managing security and access control
ADDS is a service provided by Microsoft Windows Server for managing users, computers, and resources in a network.
ADDS is a directory service used to store information about network resources such as users, groups, and computers.
It allows administrators to manage and secure resources within a network.
ADDS uses a hierarchical structure with domains, trees, and forests to organize network resources.
It provides features li...
A database schema is a blueprint that defines the structure of a database, including tables, fields, relationships, and constraints.
Defines the organization of data into tables and columns
Specifies relationships between tables
Includes constraints to enforce data integrity
Can be represented visually using diagrams
Example: In a library database schema, there may be tables for books, authors, and borrowers with relationsh...
The object management system in Active Directory is used to organize and manage objects such as users, groups, and computers within the directory.
Allows for centralized management of objects within the directory
Enables administrators to create, modify, and delete objects
Helps in organizing objects into logical containers for easier management
Facilitates delegation of administrative tasks to specific users or groups
Supp...
I applied for this job by submitting an online application through the company's career portal.
Visited company's website and navigated to the careers section
Filled out the online application form with my personal and professional details
Uploaded my resume and cover letter as required documents
Received confirmation email after submitting the application
Yes, I am comfortable working in a rotational shift.
I have previous experience working in rotational shifts and have adapted well to the schedule.
I understand the importance of flexibility in the workplace and am willing to adjust my schedule as needed.
I am able to maintain a healthy work-life balance even with a rotational shift.
I am aware of the potential challenges of working in different shifts and have strategies ...
I appeared for an interview in Jul 2025, where I was asked the following questions.
I am drawn to HCLTech for its innovation, values, and the opportunity to lead impactful projects in a dynamic environment.
HCLTech is a global leader in technology services and consulting, known for its commitment to innovation and customer-centric solutions.
The company emphasizes a culture of collaboration and continuous learning, which aligns with my values as a supervisor.
I admire HCLTech's focus on sustainability an...
I have led multiple real-time projects, enhancing team efficiency and delivering quality results through effective supervision.
Managed a team of 10 in a software development project, improving delivery time by 20%.
Implemented Agile methodologies, resulting in a 30% increase in team productivity.
Conducted regular training sessions, enhancing team skills and reducing onboarding time for new members.
Collaborated with cros...
I appeared for an interview in Dec 2024.
20 - MCQ test related C&C++ basic to advance
2 - coding questions -
1) create class which allows only one instance creation at a time if you try to create another before deleting existing object then class should throw exception..
2) find the distance between leftmost string and rightmost string(string's chars order doesn't matter) In a given long shuffled string.
Ex :-
Shuffled string = "xaxxcxbxxxcxxaxxbx"
target string= "abc"
Ans: 3
(Leftmost string is last index 6
Right most is 9 so 9-6=3)
Note:- other chars not necessarily 'x' it can be any
Vtable and Vptr are mechanisms in C++ for supporting dynamic polymorphism through virtual functions.
Vtable (Virtual Table) is a static table created by the compiler for each class with virtual functions.
Vptr (Virtual Pointer) is a pointer in each object instance that points to the Vtable of its class.
When a virtual function is called, the Vptr is used to look up the correct function in the Vtable.
Example: If class A ha...
STL libraries provide efficient and easy-to-use container classes like Vector for storing and manipulating data.
STL Vector is a dynamic array that can resize itself automatically.
It provides random access to elements, similar to arrays.
Vector supports various operations like push_back, pop_back, insert, erase, etc.
Example: std::vector<int> numbers = {1, 2, 3, 4, 5};
Singleton class ensures only one instance of a class is created and provides a global point of access to it.
Ensures only one instance of a class is created
Provides a global point of access to the instance
Useful for managing global resources or settings
Some of the top questions asked at the HCLTech interview -
The duration of HCLTech interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 3.6k interview experiences
Difficulty level
Duration
based on 40.6k reviews
Rating in categories
Software Engineer
25.2k
salaries
| ₹2.7 L/yr - ₹8 L/yr |
Technical Lead
23.3k
salaries
| ₹10.7 L/yr - ₹23 L/yr |
Senior Software Engineer
17k
salaries
| ₹5.5 L/yr - ₹16.1 L/yr |
Lead Engineer
16.6k
salaries
| ₹5.8 L/yr - ₹12.5 L/yr |
Analyst
16.1k
salaries
| ₹2.3 L/yr - ₹6.6 L/yr |
TCS
Wipro
Accenture
Cognizant