Filter interviews by
Yes, Ping can be used to measure congestion in the system.
Ping measures the round-trip time for packets to travel from the source to the destination.
If the round-trip time is high, it indicates congestion in the network.
Ping can also be used to measure packet loss, which is another indicator of congestion.
Create and insert nodes in a linked list using C and STL.
Define a struct for the linked list node
Allocate memory for the nodes using malloc or new
Set the data and next pointer for each node
Use push_back or insert functions in STL for insertion
TCP/IP protocol stack consists of 4 layers: Application, Transport, Internet, and Network Access.
Application layer: interacts with user applications and provides services like email, file transfer, etc.
Transport layer: responsible for end-to-end communication between hosts and provides reliable data transfer using TCP or unreliable using UDP.
Internet layer: responsible for routing packets across networks using IP ...
A Denial of Service (DoS) attack is an attempt to make a website or network unavailable to users by overwhelming it with traffic.
DoS attack floods a network or server with traffic to make it unavailable to users
Remedy includes implementing firewalls, load balancers, and intrusion detection systems
Another remedy is to use a content delivery network (CDN) to distribute traffic
Examples of DoS attacks include Ping of ...
Minimum Spanning Tree helps in finding the shortest path in a network.
MST helps in reducing the cost of network connections.
It is used in network design and optimization.
MST algorithms like Kruskal's and Prim's are used in network routing protocols.
MST can be used to find the shortest path between two nodes in a network.
Example: MST can be used to find the shortest path for data transmission in a computer network.
A router routes a packet by examining the destination IP address and forwarding it to the appropriate network.
The router receives a packet from a device on one of its interfaces
The router examines the destination IP address in the packet header
The router looks up the destination IP address in its routing table
The router forwards the packet to the appropriate interface based on the routing table
If the destination n...
Page fault is an error that occurs when a program tries to access a page that is not currently in physical memory.
Occurs when a program tries to access a page not in physical memory
Operating system retrieves the page from disk to physical memory
Can cause performance issues if it happens frequently
Can be caused by insufficient memory or memory fragmentation
Deleting a node in a linked list given a pointer to the node.
Save the next node's pointer in a temp variable
Copy the data of the next node to the current node
Delete the next node using the temp variable
A router uses longest prefix matching to find the most specific route for a packet.
The router looks at the destination IP address of the packet
It compares the address with the entries in its routing table
The router selects the entry with the longest matching prefix
The packet is then forwarded to the next hop in that route
If there is no matching prefix, the router uses the default route
Longest prefix matching ensur...
Page fault is serviced by fetching the required page from disk to memory.
When a process tries to access a page that is not in memory, a page fault occurs.
The operating system then checks if the page is present in the disk.
If the page is not present in the disk, it results in a segmentation fault.
If the page is present in the disk, it is fetched to memory and the process continues.
The process is then restarted from...
Create and insert nodes in a linked list using C and STL.
Define a struct for the linked list node
Allocate memory for the nodes using malloc or new
Set the data and next pointer for each node
Use push_back or insert functions in STL for insertion
Deleting a node in a linked list given a pointer to the node.
Save the next node's pointer in a temp variable
Copy the data of the next node to the current node
Delete the next node using the temp variable
TCP/IP protocol stack consists of 4 layers: Application, Transport, Internet, and Network Access.
Application layer: interacts with user applications and provides services like email, file transfer, etc.
Transport layer: responsible for end-to-end communication between hosts and provides reliable data transfer using TCP or unreliable using UDP.
Internet layer: responsible for routing packets across networks using IP addre...
A router routes a packet by examining the destination IP address and forwarding it to the appropriate network.
The router receives a packet from a device on one of its interfaces
The router examines the destination IP address in the packet header
The router looks up the destination IP address in its routing table
The router forwards the packet to the appropriate interface based on the routing table
If the destination networ...
A router uses longest prefix matching to find the most specific route for a packet.
The router looks at the destination IP address of the packet
It compares the address with the entries in its routing table
The router selects the entry with the longest matching prefix
The packet is then forwarded to the next hop in that route
If there is no matching prefix, the router uses the default route
Longest prefix matching ensures ef...
Page fault is an error that occurs when a program tries to access a page that is not currently in physical memory.
Occurs when a program tries to access a page not in physical memory
Operating system retrieves the page from disk to physical memory
Can cause performance issues if it happens frequently
Can be caused by insufficient memory or memory fragmentation
Page fault is serviced by fetching the required page from disk to memory.
When a process tries to access a page that is not in memory, a page fault occurs.
The operating system then checks if the page is present in the disk.
If the page is not present in the disk, it results in a segmentation fault.
If the page is present in the disk, it is fetched to memory and the process continues.
The process is then restarted from the ...
Calculating round trip time and bandwidth of network using Pin
Use Pin to measure the time it takes for a packet to travel from source to destination and back
Divide the round trip time by 2 to get the one-way latency
Calculate bandwidth by dividing the size of the packet by the one-way latency
Repeat the process with different packet sizes to get an average bandwidth
Use Pin's built-in tools to analyze the data and generat...
Yes, Ping can be used to measure congestion in the system.
Ping measures the round-trip time for packets to travel from the source to the destination.
If the round-trip time is high, it indicates congestion in the network.
Ping can also be used to measure packet loss, which is another indicator of congestion.
Algorithms used in networking include routing, switching, and security protocols.
Routing algorithms determine the best path for data to travel between devices on a network.
Switching algorithms determine how data is forwarded between network devices.
Security algorithms are used to protect data and prevent unauthorized access.
Examples of routing algorithms include OSPF and BGP.
Examples of switching algorithms include Spa...
Minimum Spanning Tree helps in finding the shortest path in a network.
MST helps in reducing the cost of network connections.
It is used in network design and optimization.
MST algorithms like Kruskal's and Prim's are used in network routing protocols.
MST can be used to find the shortest path between two nodes in a network.
Example: MST can be used to find the shortest path for data transmission in a computer network.
Articulation points are nodes in a network whose removal would disconnect the network or increase the number of connected components.
Articulation points are also known as cut vertices.
They are significant in network design and analysis as they help identify critical points in the network.
Removing an articulation point can cause the network to split into multiple disconnected components.
For example, in a computer networ...
Sort an array of 0s, 1s, and 2s without counting their occurrences.
Use three pointers to keep track of the last index of 0s, 1s, and 2s.
Iterate through the array and swap elements to their respective pointers.
Time complexity: O(n), Space complexity: O(1).
A Denial of Service (DoS) attack is an attempt to make a website or network unavailable to users by overwhelming it with traffic.
DoS attack floods a network or server with traffic to make it unavailable to users
Remedy includes implementing firewalls, load balancers, and intrusion detection systems
Another remedy is to use a content delivery network (CDN) to distribute traffic
Examples of DoS attacks include Ping of Death...
DDoS is a cyber attack where multiple systems flood a targeted server with traffic to make it unavailable.
DDoS attack overwhelms a server with traffic from multiple sources
Attackers use botnets to launch DDoS attacks
DDoS attacks can be mitigated by using specialized software and hardware
Examples of DDoS attacks include the 2016 Dyn cyberattack and the 2018 GitHub attack
Top trending discussions
I applied via Referral and was interviewed before Jun 2020. There were 5 interview rounds.
Developed a solution for optimizing a complex algorithm for a client in the finance industry
Client had a large dataset that needed to be processed quickly
Implemented parallel processing to speed up the algorithm
Optimized the code to reduce memory usage
Collaborated with the client to fine-tune the algorithm for their specific needs
I appeared for an interview before Sep 2020.
Round duration - 180 Minutes
Round difficulty - Medium
Round was held in the morning at 10 am.
Given an undirected graph with 'N' nodes in the form of an adjacency matrix and an integer 'M', determine if it is possible to color the vertices of the graph using at most ...
The problem involves determining if a given graph can be colored with at most 'M' colors without adjacent vertices sharing the same color.
Create a function that takes the adjacency matrix, number of nodes 'N', and maximum number of colors 'M' as input.
Implement a graph coloring algorithm such as backtracking or greedy coloring to check if the graph can be colored with at most 'M' colors.
Check if adjacent vertices have ...
Round duration - 40 Minutes
Round difficulty - Medium
The round was held in the evening
Design and implement a Trie (prefix tree) to perform the following operations:
insert(word)
: Add a string "word" to the Trie.search(word)
: Verify if the string "w...Implement a Trie data structure to insert, search, and check for prefixes in strings.
Create a TrieNode class with children and isEndOfWord attributes.
Implement insert, search, and startsWith methods in the Trie class.
Use a Trie to efficiently store and search for strings based on prefixes.
Example: insert 'apple', search 'apple' returns true, startsWith 'app' returns true, search 'app' returns false.
Round duration - 10 Minutes
Round difficulty - Easy
Was held in the morning around 9 am
Tip 1 : Focus on graphs, most questions are from this topic
Tip 2 : Prepare well about the projects you mention in your resume
Tip 3 : Do not fill the resume with too many things. Keep it simple
Tip 1 : Have 2-3 projects on resume. But also be prepared to answer questions related to the projects.
Tip 2 : Do not mention too many things. Keep it short and simple
I appeared for an interview before Jan 2021.
Round duration - 120 Minutes
Round difficulty - Medium
The round had 2 coding problems to solve with varying difficulty. Each candidate had a different set of questions. The round was around 2 pm. The webcam was turned on to keep an eye on candidates.
Given an array ARR
of size N
, where each element represents the height of a balloon. The task is to destroy all balloons by shooting arrows from left to right. When an arrow hits...
Find the minimum number of arrows needed to burst all balloons by shooting arrows from left to right.
Sort the array in non-decreasing order to make it easier to calculate the minimum number of arrows needed.
Iterate through the sorted array and count the number of times the height decreases compared to the previous balloon.
The count of decreases + 1 will give the minimum number of arrows needed to burst all balloons.
Exa...
Count the number of leaf nodes present in a given binary tree. A binary tree is a data structure where each node has at most two children, known as the left child and the...
Count the number of leaf nodes in a binary tree.
Traverse the binary tree and check if both left and right children are NULL to identify leaf nodes.
Use recursion to traverse the tree efficiently.
Keep track of the count of leaf nodes as you traverse the tree.
Handle base cases where the current node is NULL or a leaf node.
Round duration - 60 Minutes
Round difficulty - Medium
This round had 2 questions related to DSA. I was first asked to explain my approach with proper complexity analysis and then code the soution in any IDE that I prefer.
Given a rod of a certain length, the rod can be divided into different sizes, each with an associated cost. Your task is to determine the maximum cost that can be obtained by...
The Rod Cutting Problem involves maximizing the profit obtained by cutting a rod into smaller pieces and selling them.
Use dynamic programming to solve this problem efficiently.
Create a table to store the maximum profit for each sub-length of the rod.
Iterate through the rod lengths and update the table with the maximum profit.
The final answer will be the maximum profit for the total length of the rod.
You are given an array of integers ARR
and an integer X
. Your task is to determine the number of subarrays of ARR
whose bitwise XOR is equal to X
.
Count the number of subarrays in an array whose XOR is equal to a given value.
Iterate through the array and keep track of XOR values and their frequencies using a hashmap.
For each element in the array, calculate the XOR with the current element and check if the required XOR value exists in the hashmap.
Increment the count of subarrays whenever the required XOR value is found in the hashmap.
Round duration - 60 Minutes
Round difficulty - Medium
This round had 2 questions of DSA of Easy-Medium difficulty and at the end I was asked a Puzzle to check my general problem solving ability.
You are given a grid containing oranges where each cell of the grid can contain one of the three integer values:
Find the minimum time required to rot all fresh oranges in a grid.
Use Breadth First Search (BFS) to simulate the rotting process of oranges.
Keep track of the time taken to rot all oranges and the count of fresh oranges remaining.
If all fresh oranges are not rotten after simulation, return -1.
Handle edge cases like empty grid or no fresh oranges present.
Example: For the given grid, the minimum time required is 4 seconds...
For a given singly linked list, identify if a loop exists and remove it, adjusting the linked list in place. Return the modified linked list.
A...
Detect and remove loop in a singly linked list in place with O(n) time complexity and O(1) space complexity.
Use Floyd's Cycle Detection Algorithm to identify the loop in the linked list.
Once the loop is detected, use two pointers approach to find the start of the loop.
Adjust the pointers to remove the loop and return the modified linked list.
Example: For input 5 2 and 1 2 3 4 5, return 1 2 3 4 5 without the loop.
Round duration - 50 Minutes
Round difficulty - Medium
This round had 2 Algorithmic questions wherein I was supposed to code both the problems after discussing their
approaches and respective time and space complexities . After that , I was grilled on some OOPS concepts related to C++.
You are provided with a string STR
of length N. The task is to find the longest palindromic substring within STR
. If there are several palindromic substring...
Given a string, find the longest palindromic substring within it.
Iterate through the string and expand around each character to find palindromes
Keep track of the longest palindrome found so far
Return the longest palindromic substring
You are provided with an array of integers. The task is to sort the array in ascending order using the quick sort algorithm.
Quick sort is a divide-and-conquer algorithm. It ...
Yes, the quick sort algorithm can be enhanced to achieve NlogN complexity in the worst case by using a randomized version of the algorithm.
Randomized quick sort involves randomly selecting the pivot element to reduce the chances of worst-case scenarios.
By choosing a random pivot, the algorithm becomes less predictable and more likely to achieve the desired time complexity.
This enhancement helps in avoiding the worst-ca...
Friend functions in C++ are functions that are not members of a class but have access to its private and protected members.
Friend functions are declared inside a class with the keyword 'friend'.
They can access private and protected members of the class.
They are not member functions of the class, but have the same access rights as member functions.
Friend functions are useful for implementing operators that are not part ...
Early binding is resolved at compile time while late binding is resolved at runtime in C++.
Early binding is also known as static binding, where the function call is resolved at compile time based on the type of the object.
Late binding is also known as dynamic binding, where the function call is resolved at runtime based on the actual type of the object.
Early binding is faster as the function call is directly linked to ...
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I appeared for an interview before Sep 2020.
Round duration - 60 minutes
Round difficulty - Easy
This was coding round and was conducted on Cocubes platform. It is not IDE but kind of white board coding platform. C/C++, Java and Python were only allowed languages.
Round duration - 30 minutes
Round difficulty - Easy
This was pen and paper round. Total 40 shortlisted candidates were grouped into 8 groups (each of 5). Each group was given a coding question which they have to solve on paper and explain it to the recruiter. 2 to 3 from each group were selected for the next round.
Round duration - 60 minutes
Round difficulty - Easy
This was general face to face Data Structures and Algorithms based round.
Spiral order traversal of a binary tree involves printing nodes level by level alternating between left to right and right to left.
Start by pushing the root node into a queue.
While the queue is not empty, pop a node, print its value, and push its children into the queue.
For each level, alternate between printing nodes from left to right and right to left.
Repeat until all nodes are printed in spiral order.
Round duration - 45 minutes
Round difficulty - Easy
It was the last round.
Be real during the interview and don’t show off. Also, practice Data Structures and Algorithms based problems as only through practice you will be able to solve questions quickly during the interview. Also prepare for theory subjects like Object-Oriented Programming System, Database Management System, Computer networks, etc.
Application resume tips for other job seekersKeep your resume simple. Prefer LaTeX. Don't use colourful templates. They are too common and very unprofessional. Keep it black and white and keep your content richer. Keep it of 1 page and 2 pages only if you have achieved a lot. Don’t use fillers. Any unwanted information on the resume leaves a bad impact on the interviewer.
Final outcome of the interviewSelectedI appeared for an interview before Jan 2021.
Round duration - 120 Minutes
Round difficulty - Medium
This was an online coding round where we had 3 questions to solve under 120 minutes. The questions were of medium to hard difficulty level.
Determine the minimum time required to travel from a starting point to a destination point in a two-dimensional coordinate system, considering both direct movement and the...
Find the minimum time to travel from a starting point to a destination point using direct movement and wormholes.
Calculate the time taken for direct movement from source to destination.
Consider using each wormhole to see if it reduces the total travel time.
Choose the path with the minimum total time to reach the destination.
Ninja needs help in a battle against the string man. Given two strings, 'S' and 'T', the task is to find the number of substrings in 'S' that differ from some su...
The task is to find the number of substrings in 'S' that differ from some substrings of 'T' by exactly one character.
Iterate through all substrings of 'S' and 'T' and compare them character by character to find the ones that differ by exactly one character.
Use nested loops to generate all possible substrings of 'S' and 'T'.
Count the number of substrings that differ by exactly one character and return the total count.
Determine whether a given integer N
is a power of two. Return true
if it is, otherwise return false
.
An integer 'N' is considered a power of two if it can be e...
Check if a given integer is a power of two or not.
Check if the given integer is greater than 0.
Check if the given integer has only one bit set in its binary representation.
Return true if the above conditions are met, else return false.
Round duration - 60 Minutes
Round difficulty - Medium
This round had 2 questions related to DSA where I was first expected to explain my approaches and then discuss the time and space complexities of my solution. After that , I was asked some core concepts related to OS.
Given a singly linked list of integers, return the head of the reversed linked list.
Initial linked list: 1 -> 2 -> 3 -> 4 -> NULL
Reversed link...
Reverse a singly linked list of integers and return the head of the reversed linked list.
Iterate through the linked list and reverse the pointers to point to the previous node instead of the next node.
Use three pointers - prev, current, and next to reverse the linked list in O(N) time and O(1) space complexity.
Update the head of the reversed linked list as the last node encountered during reversal.
You are provided with an undirected graph containing 'N' vertices and 'M' edges. The vertices are numbered from 1 to 'N'. Your objective is to determi...
Detect cycles in an undirected graph.
Use Depth First Search (DFS) to detect cycles in the graph.
Maintain a visited array to keep track of visited vertices.
If a visited vertex is encountered again during DFS, a cycle exists.
Check for cycles in each connected component of the graph.
Example: For input N=3, Edges=[[1, 2], [2, 3], [1, 3]], output is Yes.
Mutex is used for exclusive access to a resource by only one thread at a time, while semaphore can allow multiple threads to access a resource simultaneously.
Mutex is binary semaphore with ownership, used for mutual exclusion.
Mutex is typically used to protect critical sections of code.
Semaphore is a signaling mechanism, used for synchronization between multiple threads.
Semaphore can have a count greater than 1, allowi...
Multitasking refers to the ability of an operating system to run multiple tasks concurrently, while multithreading involves executing multiple threads within a single process.
Multitasking allows multiple processes to run simultaneously on a single processor, switching between them quickly to give the illusion of parallel execution.
Multithreading involves breaking a process into multiple threads that can be executed ind...
Round duration - 60 Minutes
Round difficulty - Medium
This round had 2 Algorithmic questions wherein I was supposed to code both the problems after discussing their
approaches and respective time and space complexities . After that , I was grilled on some OOPS concepts related to C++.
You are given a long type array/list ARR
of size N
, representing an elevation map. The value ARR[i]
denotes the elevation of the ith
bar. Your task is to determine th...
Calculate the total amount of rainwater that can be trapped between given elevations in an array.
Iterate through the array and calculate the maximum height on the left and right of each bar.
Calculate the amount of water that can be trapped at each bar by taking the minimum of the maximum heights on the left and right.
Sum up the trapped water at each bar to get the total trapped water for the entire array.
You are provided with an array nums
which contains the first N positive integers. In this array, one integer appears twice, and one integer is missi...
Given an array of first N positive integers with one number repeating and one missing, find the repeating and missing numbers.
Iterate through the array and keep track of the sum of elements and sum of squares to find the missing and repeating numbers.
Use a set to identify the repeating number and calculate the missing number based on the sum of elements.
Example: For nums = [1, 2, 3, 4, 4, 5], the repeating number is 4 ...
Diamond Problem in C++ is a common issue in multiple inheritance where a class inherits from two classes that have a common base class.
Diamond Problem occurs when a class inherits from two classes that have a common base class, leading to ambiguity in accessing members.
It can be resolved in C++ using virtual inheritance, where the common base class is inherited virtually to avoid duplicate copies of base class members.
...
Friend functions in C++ are functions that are not members of a class but have access to its private and protected members.
Friend functions are declared inside a class with the 'friend' keyword.
They can access private and protected members of the class.
They are not member functions of the class, but have the same access rights as member functions.
Friend functions are useful for implementing operators that are not membe...
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I appeared for an interview in Aug 2017.
Some of the top questions asked at the Polycom interview -
Staff Engineer
8
salaries
| ₹20 L/yr - ₹31 L/yr |
Senior Software Engineer
7
salaries
| ₹9.3 L/yr - ₹18 L/yr |
Technical Support Engineer
6
salaries
| ₹6.3 L/yr - ₹8.5 L/yr |
Software Engineer
5
salaries
| ₹5.9 L/yr - ₹8 L/yr |
Territory Sales Manager
5
salaries
| ₹10 L/yr - ₹28.6 L/yr |
Samsung
vivo
Dell
Godrej & Boyce Manufacturing