Filter interviews by
Clear (1)
I applied via Campus Placement and was interviewed before Sep 2023. There were 2 interview rounds.
Cant remember much of how round 1 happened
Convert a number to base 7 representation
Divide the number by 7 and store the remainder in each step
Repeat until the quotient is 0
Reverse the remainders to get the base 7 representation
Finding the minimum and maximum values in a matrix
Iterate through each element in the matrix to find the minimum and maximum values
Initialize min and max variables with the first element in the matrix
Compare each element with the current min and max values and update accordingly
Example: For a matrix [[1, 2, 3], [4, 5, 6]], min = 1, max = 6
Top trending discussions
I was interviewed before Jan 2016.
I applied via Referral
Windows and UNIX have several technical differences.
Windows has a graphical user interface (GUI) while UNIX is primarily command-line based.
Windows uses the NTFS file system while UNIX typically uses the ext4 file system.
Windows supports a wide range of software applications, while UNIX is known for its stability and security.
Windows has a larger user base and is more commonly used for personal computers, while UNIX is...
NTFS and FAT are file systems used in Windows operating systems with differences in features and capabilities.
NTFS supports file and folder permissions, while FAT does not.
NTFS has built-in support for file compression and encryption, while FAT does not.
NTFS has a journaling feature that helps in recovering from system crashes, while FAT does not.
NTFS supports larger file sizes and partition sizes compared to FAT.
NTFS ...
The OSI stack consists of 7 layers that define the functions and protocols of network communication.
Physical layer: Deals with the physical transmission of data.
Data Link layer: Provides error-free transmission over a physical link.
Network layer: Handles routing and logical addressing.
Transport layer: Ensures reliable data delivery and manages end-to-end connections.
Session layer: Establishes, manages, and terminates s...
NAT (Network Address Translation) is a technique used to translate private IP addresses to public IP addresses, allowing devices on a private network to communicate with the internet. DHCP (Dynamic Host Configuration Protocol) is a network protocol that automatically assigns IP addresses and other network configuration parameters to devices on a network.
NAT allows multiple devices on a private network to share a single...
A hub is a simple networking device that connects multiple devices in a network. A switch is a more advanced device that filters and forwards data packets. A router is a device that connects multiple networks and directs data packets between them.
A hub operates at the physical layer of the OSI model, while a switch operates at the data link layer.
A hub broadcasts data to all connected devices, while a switch selectivel...
Collision domain is a network segment where collisions can occur. Bridges segregate collision domains by creating separate segments.
Collision domain is a section of a network where network devices share the same bandwidth and can collide with each other.
Collisions occur when two or more devices transmit data simultaneously on a shared medium.
Bridges create separate collision domains by dividing a network into multiple ...
A combination of array and hashmap can be used to design the underlying data structures for an educational institution's website.
Use an array to store the departments available in the institution.
Each department can be represented as a key in the hashmap.
The value corresponding to each department key in the hashmap can be another hashmap.
This nested hashmap can store the courses available in the department.
The courses ...
Design considerations for a client-server system with virtual operating systems on the fly
Scalability: Ensure the system can handle multiple clients requesting virtual operating systems simultaneously
Resource allocation: Manage resources efficiently to provide virtual operating systems to clients
Network bandwidth: Optimize network usage to deliver virtual operating systems quickly
Security: Implement measures to protect...
VMware's virtualization on a multicore machine allows for efficient utilization of resources and improved performance.
VMware's virtualization technology enables the creation of multiple virtual machines (VMs) on a single multicore machine.
Each VM can run its own operating system and applications, isolated from other VMs.
The hypervisor, such as VMware ESXi, manages the allocation of CPU, memory, and other resources to e...
The minimum number of packets required to pack 51 apples such that any number of apples between 1 and 51 can be given.
The minimum number of packets required is 6.
Each packet should contain a power of 2 number of apples.
The packets should be of sizes: 1, 2, 4, 8, 16, and 20.
By combining these packets, any number of apples between 1 and 51 can be given.
Program to implement strstr function in C++
Use two nested loops to compare each character of the haystack and needle
If a match is found, return the starting index of the substring
If no match is found, return -1
To construct an almost balanced binary tree from an incoming stream of numbers.
Use a self-balancing binary search tree like AVL or Red-Black tree.
Insert the numbers from the stream into the tree.
Perform rotations or rebalancing operations as necessary to maintain balance.
Consider using a priority queue to handle the incoming stream efficiently.
Implementing autocomplete feature for search queries
Use a trie data structure to store the search queries
As the user types, traverse the trie to find matching prefixes
Return the suggestions based on the matching prefixes
Consider using a ranking algorithm to prioritize suggestions
A semaphore is a synchronization object that controls access to a shared resource through the use of a counter.
Semaphores can be used to limit the number of threads accessing a resource simultaneously.
They can be used to solve the critical section problem in concurrent programming.
Semaphores can have two types: counting semaphores and binary semaphores.
Counting semaphores allow a specified number of threads to access a...
The P and V operations are used to control access to a shared resource using a semaphore.
P operation (wait operation) decreases the value of the semaphore by 1, blocking if the value is already 0.
V operation (signal operation) increases the value of the semaphore by 1, releasing a waiting process if any.
P and V operations are typically used in synchronization mechanisms to prevent race conditions and ensure mutual excl...
REST web service is an architectural style for designing networked applications that use HTTP as the communication protocol.
REST stands for Representational State Transfer
It is based on a client-server model
It uses standard HTTP methods like GET, POST, PUT, DELETE
Resources are identified by URIs
Responses are typically in JSON or XML format
HTTP is a stateless protocol.
HTTP is stateless because it does not retain any information about previous requests or responses.
Each request is treated as an independent transaction, and the server does not maintain any knowledge of the client's state.
To maintain state, cookies or session management techniques can be used.
Statelessness allows for scalability and simplicity in web applications.
Shared memory is a memory space that can be accessed by multiple processes or threads simultaneously.
Shared memory allows processes or threads to communicate and share data efficiently.
It is typically used in inter-process communication (IPC) to avoid the overhead of copying data between processes.
Shared memory can be implemented using operating system mechanisms like memory-mapped files or system calls.
Example: Multip...
Alignment issues in structures occur due to memory padding and alignment requirements.
Structures may have unused memory space due to alignment requirements.
Padding is added to align structure members on memory boundaries.
Alignment issues can lead to wasted memory and decreased performance.
Compiler directives like #pragma pack can be used to control alignment.
Example: struct MyStruct { char a; int b; char c; };
Memory Management Unit (MMU) is a hardware component that manages memory access and translation between virtual and physical addresses.
MMU is responsible for translating virtual addresses used by programs into physical addresses in the computer's memory.
It provides memory protection by assigning access permissions to different memory regions.
MMU also handles memory allocation and deallocation, ensuring efficient use of...
A socket is an endpoint for communication between two machines over a network.
A socket is a software abstraction that allows programs to send and receive data over a network.
It provides a mechanism for inter-process communication between applications running on different machines.
Sockets can be used for various network protocols such as TCP/IP, UDP, etc.
They are identified by an IP address and a port number.
Examples of...
Yes, it is possible to declare a structure 'a' that contains a structure 'b' and 'b' in turn contains 'a'.
To achieve this, we can use forward declaration of one of the structures.
By using a pointer or reference to the other structure inside the first structure, we can avoid recursive definition.
This allows us to create a nested structure hierarchy.
To find the offset of a member of a structure object, use the 'offsetof' macro. If not allowed to create the object, use 'sizeof' and pointer arithmetic.
Use the 'offsetof' macro to find the offset of a member within a structure object
If not allowed to create the object, use 'sizeof' to get the size of the structure and perform pointer arithmetic
Netapp is a multinational storage and data management company.
Netapp specializes in providing storage solutions for businesses and organizations.
They offer a wide range of products and services including storage systems, software, and cloud services.
Netapp's solutions help organizations manage and protect their data, improve efficiency, and enable data-driven decision making.
They have a strong presence in the enterpris...
I come from a close-knit family with two siblings, an older brother and a younger sister.
Close-knit family
Two siblings - older brother and younger sister
I am interested in job profiles that involve software development, problem-solving, and continuous learning.
I prefer job profiles that allow me to work on challenging projects and utilize my technical skills.
I am interested in roles that involve software development, coding, and debugging.
I enjoy problem-solving and would like a job that challenges me to think creatively and analytically.
I value continuous learning and
I was interviewed in Dec 2016.
I was interviewed before May 2016.
I applied via Company Website and was interviewed before Dec 2020. There were 3 interview rounds.
I applied via Company Website and was interviewed in Dec 2020. There was 1 interview round.
I applied via Approached by Company and was interviewed before Aug 2021. There was 1 interview round.
Abstract class can have implementation while interface cannot. Classes can implement multiple interfaces but only one abstract class.
Abstract class can have constructors while interface cannot.
Abstract class can have non-abstract methods while interface cannot.
Interfaces are used for full abstraction while abstract classes are used for partial abstraction.
Example: Abstract class - Animal with method eat() and subclass ...
based on 1 interview
Interview experience
based on 1 review
Rating in categories
Software Engineer
432
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Software Engineer
289
salaries
| ₹0 L/yr - ₹0 L/yr |
Technical Support Engineer
272
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Technical Support Engineer
139
salaries
| ₹0 L/yr - ₹0 L/yr |
Principal Software Engineer
132
salaries
| ₹0 L/yr - ₹0 L/yr |
RUBRIK INDIA
Druva
Veeam Software
CommVault