Filter interviews by
I applied via Naukri.com and was interviewed in Aug 2024. There were 3 interview rounds.
Mainly sql qns are asked to write
I applied via Campus Placement and was interviewed before Apr 2021. There were 4 interview rounds.
Aptitude question if Non circuit branches and Coding question/SQL queries if Circuit branches
Find median of 2 sorted arrays in O(log N) time complexity and O(1) space complexity
Use binary search to find the partition point in both arrays
Calculate the median based on the partition point and array sizes
Adjust the partition points based on the median value
Repeat until the partition points are at the median
Handle edge cases such as empty arrays and uneven array sizes
Anagram of strings in O(1) space complexity
Use a fixed size array of integers to store the frequency of characters in the first string
Iterate through the second string and decrement the frequency of each character in the array
If all the frequencies are zero, then the strings are anagrams
Return true or false accordingly
Level order traversal of a tree using Queue
Create a queue and add the root node to it
While the queue is not empty, remove the front node and print its value
Add the left and right child nodes of the removed node to the queue
Repeat until the queue is empty
Reverse level order traversal of a tree using Queue
Create a queue and push the root node into it
While the queue is not empty, pop the front node and push its children into the queue
Add the popped node to a stack
Once the queue is empty, pop elements from the stack and print them
BFS and DFS are graph traversal algorithms. BFS explores nodes level by level while DFS explores nodes depth by depth.
BFS uses a queue while DFS uses a stack or recursion.
BFS is optimal for finding shortest path while DFS is optimal for finding a path between two nodes.
BFS requires more memory as it stores all the nodes at each level while DFS requires less memory.
BFS can be used to find connected components while DFS
Find product of each element of an array except that element in O(N) time complexity without using / operation
Use prefix and suffix products
Multiply prefix and suffix products for each element to get the final product
Handle edge cases where array has 0 or 1 element separately
Recursively delete a linked list
Create a recursive function that takes the head of the linked list as input
Base case: if the head is null, return
Recursively call the function with the next node as input
Delete the current node
Recursively delete a linked list from the end.
Start from the head and recursively traverse to the end of the list.
Delete the last node and set the second last node's next pointer to null.
Repeat until the entire list is deleted.
Use a recursive function to implement the deletion process.
Recursively delete a tree by deleting all its child nodes and then the parent node.
Start from the leaf nodes and delete them first.
Then move up to the parent nodes and delete them.
Repeat until the root node is deleted.
Use post-order traversal to ensure child nodes are deleted before parent nodes.
Recursively delete elements from the end of an array.
Create a recursive function that removes the last element of the array.
Call the function recursively until the desired number of elements are removed.
Handle edge cases such as empty arrays and removing more elements than the array contains.
Floyd Warshall finds shortest path between all pairs of vertices while Djikstra finds shortest path from a single source.
Floyd Warshall is used for dense graphs while Djikstra is used for sparse graphs.
Floyd Warshall has a time complexity of O(n^3) while Djikstra has a time complexity of O((n+m)logn).
Floyd Warshall can handle negative edge weights while Djikstra cannot.
Floyd Warshall can detect negative cycles while Dj
There is no known algorithm to find shortest path in 2-D space in O(log N) time.
The best known algorithm for finding shortest path in 2-D space is Dijkstra's algorithm which has a time complexity of O(N^2).
Other algorithms like A* and Bellman-Ford have better time complexity but still not O(log N).
If the points are on a grid, Lee algorithm can be used which has a time complexity of O(N).
Design a system for putting newspapers using classes and functions
Create a Newspaper class with attributes like title, date, and content
Create a Publisher class with methods to publish and distribute newspapers
Create a Subscriber class with methods to subscribe and receive newspapers
Use inheritance to create different types of newspapers like daily, weekly, etc.
Implement a database to store newspaper information and ha
I believe practical experience is more valuable than higher studies.
I have gained valuable experience through internships and projects.
I prefer hands-on learning and problem-solving over theoretical knowledge.
I am constantly learning and improving my skills through online courses and workshops.
A generic swap function swaps two values of any data type.
The function should take two parameters of any data type.
Use a temporary variable to store the value of one parameter.
Assign the value of the second parameter to the first parameter.
Assign the value of the temporary variable to the second parameter.
Search for an element in a rotated sorted linked list.
Find the pivot point where the list is rotated.
Divide the list into two sublists based on the pivot point.
Perform binary search on the appropriate sublist.
Handle edge cases such as empty list and list with only one element.
Search an element in a rotated sorted array
Find the pivot point where the array is rotated
Divide the array into two sub-arrays based on pivot point
Perform binary search on the appropriate sub-array
Repeat until element is found or sub-array size is 1
Find 5 missing numbers in an array of size 95 containing numbers in range 1 to 100.
Create a boolean array of size 100 and mark the present numbers
Iterate through the boolean array and find the missing numbers
Alternatively, use a HashSet to store the present numbers and find the missing ones
Given a Sudoku board, find possible numbers for an empty cell.
Iterate through empty cells and check possible numbers using row, column, and box constraints.
Use a set to keep track of possible numbers for each empty cell.
Return the set of possible numbers for the given empty cell.
Find integer average of 4 unsigned integers without typecasting
Add all the integers and divide by 4
Use bit shifting to divide by 4
Handle overflow by using long long data type
Use unsigned int data type for input
Code to identify 32 bit or 64 bit architecture of a processor
Check if the operating system is 32 bit or 64 bit
If OS is 32 bit, processor is 32 bit
If OS is 64 bit, check if processor supports 64 bit architecture
Use CPUID instruction to check if processor supports 64 bit architecture
Convert binary number to base 64 integer
Divide the binary number into groups of 6 bits
Convert each group of 6 bits to decimal
Map the decimal value to the corresponding base 64 character
Concatenate the base 64 characters to form the final integer
I am a software engineer with experience in developing web applications and mobile apps.
Proficient in programming languages such as Java, Python, and JavaScript
Experience in developing RESTful APIs and integrating third-party APIs
Familiarity with front-end frameworks such as React and Angular
Strong understanding of database management systems such as MySQL and MongoDB
Passionate about learning new technologies and keepi
Software industry offers endless opportunities for innovation and growth.
Software industry is constantly evolving and offers opportunities to work on cutting-edge technologies.
It provides a platform to solve complex problems and create innovative solutions.
The demand for software engineers is high and the industry offers competitive salaries.
Core industries may have limited scope for growth and innovation compared to s...
Program to print a given string in reverse
Create a character array of the given string
Loop through the array from end to start and print each character
Mux is a device that selects one of several input signals and forwards the selected input into a single output line.
Mux stands for Multiplexer.
It is used in digital circuits to select one of several input signals and forward the selected input into a single output line.
It is used in communication systems to combine multiple signals into a single channel for transmission.
It is used in video and audio systems to switch b...
DeMux is short for Demultiplexer. It is a digital circuit that takes one input and directs it to multiple outputs.
DeMux is used in digital communication systems to separate signals that have been combined for transmission.
It is also used in computer memory systems to select a specific memory location.
DeMux is used in video and audio systems to separate different channels of information.
It is used in automation systems ...
Decoder converts encoded data into a readable format while Demux separates a single input into multiple outputs.
Decoder is used to decode encoded data such as binary data into a readable format.
Demux is used to separate a single input into multiple outputs based on the control signals.
Decoder is a combinational circuit while Demux is a sequential circuit.
Decoder is used in applications such as remote controls, computer...
Amadeus Labs is a leading technology company in the travel industry.
Amadeus Labs provides opportunities to work on cutting-edge technologies.
The company has a strong focus on innovation and research.
Amadeus Labs has a global presence and offers a diverse and inclusive work environment.
Working at Amadeus Labs provides the opportunity to make a real impact on the travel industry.
The company values work-life balance and o
Yes, I am comfortable working for Testing.
I have experience in testing and understand its importance in software development.
I am willing to learn new testing techniques and tools.
I am comfortable working with testing teams and collaborating with them to ensure quality software.
I understand the importance of testing in ensuring customer satisfaction and reducing costs.
Examples: I have experience in manual and automated...
I have the necessary skills and experience to excel in the developer role.
I have a degree in computer science and have completed multiple coding projects.
I am proficient in programming languages such as Java, Python, and C++.
I have experience working with databases and web development frameworks.
I am a quick learner and enjoy solving complex problems.
I am a team player and have collaborated with other developers on var
I appeared for an interview before Mar 2021.
Round duration - 60 minutes
Round difficulty - Easy
Technical interview round with questions based on DSA and OOPS.
Use double pointer to dynamically allocate memory for array of strings in C.
Declare a double pointer to hold the 2D array of strings.
Allocate memory for the rows first using malloc.
Then allocate memory for each string in the row using malloc.
Assign values to the strings in the array.
Example: char **array = malloc(rows * sizeof(char *));
Example: array[i] = malloc(strlen(str) + 1); strcpy(array[i], str);
Virtual functions in C++ are functions that can be overridden in derived classes, allowing for polymorphic behavior.
Virtual functions are declared using the 'virtual' keyword in the base class.
They are used to achieve runtime polymorphism in C++.
Derived classes can override the virtual functions defined in the base class.
Example: class Base { public: virtual void display() { cout << 'Base class dis...
Virtual base classes are classes that are inherited virtually to avoid multiple instances of the same base class in a derived class hierarchy.
Virtual base classes are used in multiple inheritance to prevent the Diamond Problem.
They are declared with the 'virtual' keyword in the base class.
When a class inherits a virtual base class, the most derived class is responsible for initializing the virtual base class.
Example: c...
Round duration - 60 minutes
Round difficulty - Easy
Technical interview round with questions based on OS/Networking etc.
The system call that creates a separate connection is fork()
fork() is a system call in Unix-like operating systems that creates a new process by duplicating the existing process
The new process created by fork() is called the child process, while the original process is called the parent process
fork() is commonly used in network programming to create separate connections for handling multiple clients
epoll_wait() system call waits for events on an epoll instance
Used in Linux for I/O event notification
Blocks until one or more file descriptors become ready
Returns the number of file descriptors ready for I/O operations
Different protocols used in the transport layer include TCP, UDP, SCTP, and DCCP.
TCP (Transmission Control Protocol) - reliable, connection-oriented protocol used for most internet communication
UDP (User Datagram Protocol) - connectionless protocol used for applications where speed is more important than reliability
SCTP (Stream Control Transmission Protocol) - supports multiple streams of data, used for telecommunicati...
TCP is a connection-oriented protocol that ensures reliable data delivery, while UDP is a connectionless protocol that focuses on speed.
TCP is reliable and ensures data delivery by establishing a connection before sending data.
UDP is faster but less reliable as it does not establish a connection before sending data.
TCP is used for applications that require high reliability and error correction, such as web browsing and...
Round duration - 60 minutes
Round difficulty - Easy
Technical interview round with questions based on Networking etc.
ICMP is a protocol used for error reporting, diagnostics, and network management in IP networks.
ICMP is used to report errors in packet delivery
It is used for network diagnostics and troubleshooting
ICMP messages are encapsulated within IP packets
Examples include ping (echo request/reply) and traceroute
TCP supports four types of connection release: active close, passive close, simultaneous close, and abortive close.
Active close: Client initiates the connection release process by sending a FIN packet.
Passive close: Server initiates the connection release process by sending a FIN packet.
Simultaneous close: Both client and server send FIN packets to each other simultaneously.
Abortive close: Connection is terminated abru...
The MAC layer uses protocols like CSMA/CA, CSMA/CD, and TDMA to manage access to the network.
CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) is used in wireless networks to avoid collisions.
CSMA/CD (Carrier Sense Multiple Access with Collision Detection) is used in wired networks to detect and handle collisions.
TDMA (Time Division Multiple Access) is used in networks where devices are assigned specific
ARP (Address Resolution Protocol) is a protocol used to map an IP address to a MAC address in a local network.
ARP is used to resolve IP addresses to MAC addresses in a local network.
It operates at the data link layer of the OSI model.
ARP requests are broadcasted to all devices on the network.
Example: When a device wants to communicate with another device on the same network, it uses ARP to find the MAC address correspo
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.
MVC life cycle, AJAX call and passing data from view to partial view.
MVC life cycle includes request routing, controller instantiation, action execution, and rendering of the view.
AJAX call is initiated by sending an HTTP request to the server and receiving a response in the form of JSON or XML data.
To pass data from one view to a partial view, we can use ViewBag, ViewData, or TempData.
ViewBag is a dynamic object that ...
Abstract class is a class that cannot be instantiated, while interface is a contract that defines methods.
Abstract class can have both abstract and non-abstract methods, while interface can only have abstract methods.
Abstract class can have instance variables, while interface cannot.
Abstract class is used for code reusability and polymorphism, while interface is used for achieving abstraction and loose coupling.
In serv...
based on 2 interviews
Interview experience
based on 37 reviews
Rating in categories
Senior Software Engineer
859
salaries
| ₹6 L/yr - ₹18.5 L/yr |
Software Engineer
753
salaries
| ₹5.5 L/yr - ₹12 L/yr |
Senior Test Engineer
434
salaries
| ₹5.8 L/yr - ₹15 L/yr |
Test Engineer
366
salaries
| ₹4.5 L/yr - ₹9.5 L/yr |
Associate Product Engineer
258
salaries
| ₹5.8 L/yr - ₹11.2 L/yr |
24/7 Customer
Oracle Cerner
Adobe
Thomson Reuters