Filter interviews by
I applied via LinkedIn and was interviewed in Jul 2022. There were 3 interview rounds.
Simple coding problems- python and go
Terraform, ansible, AWS
Top trending discussions
posted on 3 Dec 2015
The memory layout of C programs refers to how variables and data structures are organized in memory.
C programs typically have four main sections in memory: code, data, heap, and stack.
The code section contains the compiled program instructions.
The data section stores global and static variables.
The heap is used for dynamic memory allocation.
The stack is used for function calls and local variables.
Pointers in C hold mem...
Inefficiency and lack of organization irritate me.
Inefficient code or processes
Lack of documentation
Disorganized project management
Inconsistent coding standards
Poor communication within the team
I know multiple computer languages including Java, Python, and C++.
Java
Python
C++
Design a P2P sharing network like torrent
Consider the architecture and protocols for file sharing
Include mechanisms for file discovery and download
Implement a distributed system for efficient data transfer
Ensure data integrity and security
Handle scalability and load balancing
Consider user interface and ease of use
A good job is one that provides satisfaction, growth opportunities, work-life balance, and fair compensation.
Satisfaction: Feeling fulfilled and accomplished in the work being done.
Growth opportunities: Having chances to learn, develop new skills, and advance in the career.
Work-life balance: Striking a healthy equilibrium between work responsibilities and personal life.
Fair compensation: Being adequately rewarded for t...
I applied via Campus Placement and was interviewed in Dec 2016. There were 3 interview rounds.
Program to reverse an integer
Convert the integer to a string
Reverse the string
Convert the reversed string back to an integer
I have worked on various projects including a web application for inventory management and a mobile app for task tracking.
Developed a web application using React for inventory management, allowing users to track stock levels and generate reports.
Created a mobile app using Flutter for task tracking, enabling users to create, assign, and track tasks in real-time.
Collaborated with a team of developers to integrate APIs an...
Yes, I am interested in studying further to enhance my skills and knowledge in software engineering.
Interested in pursuing a Master's degree in Computer Science
Enrolling in online courses to learn new technologies and programming languages
Attending workshops and conferences to stay updated with industry trends
Reverse a linked list without using extra memory
Iterate through the linked list and change the next pointers to reverse the list
Use three pointers - prev, current, and next - to keep track of the reversed list
Start with prev and current pointing to null and the head of the linked list respectively
While traversing the list, update the next pointer of the current node to point to the previous node
Move prev and current po...
Data structures are fundamental concepts in software engineering that organize and store data efficiently.
Arrays: Simple and efficient for storing and accessing elements.
Linked Lists: Dynamic and flexible, efficient for insertion and deletion.
Stacks: LIFO structure, useful for managing function calls and undo operations.
Queues: FIFO structure, ideal for managing tasks and scheduling.
Trees: Hierarchical structure, used ...
The difference is that 'int arr[5]' creates an array on the stack, while 'malloc(5*sizeof(int))' allocates memory on the heap.
int arr[5] creates an array of 5 integers on the stack, which is a fixed-size memory allocation.
malloc(5*sizeof(int)) dynamically allocates memory on the heap, allowing for variable-size memory allocation.
The memory allocated with malloc must be explicitly freed with free() to avoid memory leaks
I am a passionate software engineer with a strong background in computer science and experience in developing innovative solutions.
Completed a Bachelor's degree in Computer Science from XYZ University
Proficient in programming languages such as Java, Python, and C++
Worked on various projects including a mobile app for tracking fitness goals
Familiar with Agile development methodologies and version control systems like Gi
In 5 years, I see myself as a senior software engineer leading a team of developers on innovative projects.
Continuing to enhance my technical skills and knowledge through ongoing learning and certifications
Taking on more leadership responsibilities and mentoring junior team members
Contributing to the development of cutting-edge software solutions for the company
Possibly pursuing opportunities for advancement within the...
I tend to overthink details and can be overly critical of my own work.
Overthinking details can lead to delays in completing tasks
Being overly critical can hinder progress and confidence
Yes, I am interested in studying further to enhance my skills and stay updated with the latest technologies.
I believe continuous learning is essential in the fast-paced tech industry
Further studies can help me specialize in a specific area of software engineering
Advanced degrees or certifications can open up new career opportunities
I was interviewed before Mar 2021.
Round duration - 40 minutes
Round difficulty - Easy
Technical round with questions based on DSA.
Create a program to reverse a given integer N
. The output should be the reversed integer.
If a number has trailing zeros, their reversed version should not inclu...
Reverse a given integer while excluding trailing zeros.
Create a program to reverse the given integer by converting it to a string and then reversing it.
Remove any trailing zeros from the reversed string before converting it back to an integer.
Handle the constraints of the input integer being between 0 and 10^8.
Example: For input 1230, the output should be 321.
You are given a Singly Linked List of integers. Your task is to reverse the Linked List by changing the links between nodes.
The first line of input contai...
Reverse a given singly linked list by changing the links between nodes.
Iterate through the linked list and reverse the links between nodes.
Use three pointers to keep track of the current, previous, and next nodes.
Update the links while traversing the list to reverse it.
Return the head of the reversed linked list.
new int[5] is C++ specific and initializes the array with default values, while malloc(5 * sizeof(int)) is a C function and does not initialize the array.
new int[5] is C++ specific and calls constructors for each element in the array.
malloc(5 * sizeof(int)) is a C function and does not call constructors, leaving the array uninitialized.
new int[5] returns a pointer to the first element of the array, while malloc(5 * siz...
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 was interviewed 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.
I applied via Campus Placement and was interviewed in Jan 2016. There were 3 interview rounds.
Software Engineer III
128
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Engineer
110
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Software Engineer
87
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Engineer2
80
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Engineer II
50
salaries
| ₹0 L/yr - ₹0 L/yr |
Cisco
Juniper Networks
Palo Alto Networks
Fortinet