Filter interviews by
Callbacks are functions passed as arguments to other functions to be executed later.
Callbacks are commonly used in asynchronous programming to handle tasks that take time to complete.
They allow functions to be executed after another function has finished its execution.
Callbacks can be used to handle events, such as button clicks in a web application.
MVVM, MVC, and MVP are design patterns used in software development to separate concerns and improve code maintainability.
MVC (Model-View-Controller) separates the application into three components: Model (data), View (UI), and Controller (logic).
MVVM (Model-View-ViewModel) is similar to MVC but introduces a ViewModel to handle UI logic and data binding.
MVP (Model-View-Presenter) is similar to MVC but the Presenter act...
Move all the non zero numbers to start of the array
Top trending discussions
I appeared for an interview before Apr 2021.
Round duration - 45 Minutes
Round difficulty - Medium
It was in the mid day and since I applied for a Frontend role the discussion was majorly around data structure and bit of Javascript.
The interviewer was helping and good listener.
You are provided with two sorted linked lists. Your task is to merge them into a single sorted linked list and return the head of the combined linked list.
...Merge two sorted linked lists into a single sorted linked list without using additional space.
Create a dummy node to start the merged list
Compare the values of the two linked lists and add the smaller value to the merged list
Move the pointer of the merged list and the pointer of the smaller value list
Continue this process until one of the lists is fully traversed
Append the remaining elements of the other list to the me...
Given an integer array arr
of size 'N' containing only 0s, 1s, and 2s, write an algorithm to sort the array.
The first line contains an integer 'T' representing the n...
Sort an array of 0s, 1s, and 2s in linear time complexity.
Use three pointers to keep track of 0s, 1s, and 2s while traversing the array.
Swap elements based on the values encountered to sort the array in-place.
Time complexity should be O(N) and space complexity should be O(1).
Round duration - 60 Minutes
Round difficulty - Medium
It was more of a in depth round on the framework I'm working on and problem solving.
The event loop is a mechanism in programming that allows for asynchronous execution of code.
The event loop is a key component in JavaScript's runtime environment, responsible for handling asynchronous operations.
It continuously checks the call stack for any pending tasks and executes them in a non-blocking manner.
The event loop ensures that the program remains responsive by allowing other code to run while waiting for ...
Output-based questions in JavaScript using browser APIs
Example 1: Write a script that uses the Geolocation API to display the user's current location on a map
Example 2: Create a program that uses the Web Audio API to play a sound when a button is clicked
Example 3: Develop a web page that uses the Canvas API to draw a simple animation
Designing a system to support localization in a mobile app
Use resource files to store localized strings for different languages
Implement a language selection feature for users to choose their preferred language
Utilize localization libraries or frameworks to streamline the process
Consider cultural differences when localizing content, such as date formats and currency symbols
Round duration - 75 Minutes
Round difficulty - Hard
It was more of a fitment/managerial round.
Didn't had any coding questions, but was asked more on approaches and optimisations.
Discussions on the project you have worked on.
To find the fastest 3 horses out of a group with 5 horses racing at a time, we can use a tournament style approach.
Divide the horses into groups of 5 and race them against each other. This will give you the fastest horse in each group.
Take the winners from each group and race them against each other. The top 3 horses in this final race will be the fastest 3 overall.
Keep track of the results and compare the timings to d...
To debug lag on a screen, analyze code, check for memory leaks, optimize rendering, and use profiling tools.
Analyze code to identify any inefficient algorithms or operations causing lag.
Check for memory leaks that could be impacting performance.
Optimize rendering by reducing the number of draw calls, optimizing shaders, and minimizing overdraw.
Use profiling tools like Xcode Instruments or Android Profiler to identify p...
The app I recently worked on is a social media platform for sharing photos and connecting with friends.
The app follows a client-server architecture, with the client being the mobile app and the server handling data storage and processing.
The client side is built using React Native for cross-platform compatibility.
The server side is implemented using Node.js with a MongoDB database for storing user data and photos.
The a...
Tip 1 : Get your JS fundamentals right (if applying for a Frontend role, https://javascript.info/ is a good start)
Tip 2 : Apart from preparing data structures, practise on the communication skills as well (prepare your introduction, be a good listener and on spot improvisation plays key roles)
Tip 1 : highlight projects related to the job profile in your resume and mention what was your contribution in them precisely in 1/2 lines.
Tip 2 : Include URLs to applications/projects that you have build and your achievements/blog (if any)
I applied via Naukri.com and was interviewed in Jun 2021. There were 2 interview rounds.
I applied via Company Website and was interviewed before Dec 2020. There were 3 interview rounds.
Reverse a given Linked List with O(1) and O(N) space complexity.
For O(1) space complexity, use three pointers to reverse the links in place.
For O(N) space complexity, use a stack to store the nodes and then pop them to create the reversed list.
Be careful with edge cases such as empty list or list with only one node.
THis is an answer,jdkiukj froin feiudjcbiufjewbd
Merge Sort and Quick Sort are sorting algorithms that use divide and conquer approach.
Merge Sort divides the array into two halves, sorts them recursively, and then merges them.
Quick Sort selects a pivot element, partitions the array around the pivot, and recursively sorts the sub-arrays.
Merge Sort has a worst-case time complexity of O(nlogn), while Quick Sort has an average case time complexity of O(nlogn).
Merge Sort ...
Compute amount of water trapped in an elevation map after raining
Iterate through the array and find the maximum height on the left and right of each bar
Calculate the amount of water that can be trapped on each bar using the difference between the minimum of the two maximum heights and the height of the bar
Add up the amount of water trapped on each bar to get the total amount of water trapped
Zigzag traversal of a binary tree is a way of traversing the tree in a zigzag pattern.
Use a stack to keep track of nodes to be visited.
For each level, alternate between adding nodes to the stack from left to right and right to left.
Pop nodes from the stack and add their children to the stack in the appropriate order.
Repeat until all nodes have been visited.
Sort a dictionary by key or value in ascending/descending order.
Use sorted() function with lambda function to sort by key or value.
For ascending order, use reverse=False and for descending order, use reverse=True.
Example: sorted_dict = sorted(dictionary.items(), key=lambda x: x[0], reverse=True)
I applied via Campus Placement and was interviewed in Jul 2021. There was 1 interview round.
Polymorphism is the ability of an object to take on many forms.
Polymorphism allows objects to be treated as if they are of multiple types.
It enables code to be written that can work with objects of different classes in a uniform way.
Polymorphism can be achieved through method overloading or method overriding.
Example: A shape class can have multiple subclasses like circle, square, triangle, etc. and all can be treated a...
Inheritance is a mechanism in object-oriented programming where a new class is created by inheriting properties of an existing class.
Inheritance allows for code reuse and promotes code organization.
The existing class is called the parent or superclass, and the new class is called the child or subclass.
The child class inherits all the properties and methods of the parent class, and can also add new properties and method...
I appeared for an interview before Sep 2020.
Round duration - 60 Minutes
Round difficulty - Easy
A thief is planning to rob a store and can carry a maximum weight of 'W' in his knapsack. The store contains 'N' items where the ith item has a weight of 'wi' and a value of...
Yes, the 0/1 Knapsack problem can be solved using dynamic programming with a space complexity of not more than O(W).
Use a 1D array to store the maximum value that can be stolen for each weight capacity from 0 to W.
Iterate through each item and update the array based on whether including the item would increase the total value.
The final value in the array at index W will be the maximum value that can be stolen.
Given an array or list of integers 'ARR', identify the second largest element in 'ARR'.
If a second largest element does not exist, return -1.
ARR = [2,...
Find the second largest element in an array of integers.
Iterate through the array to find the largest and second largest elements.
Handle cases where all elements are identical.
Return -1 if a second largest element does not exist.
Round duration - 60 Minutes
Round difficulty - Easy
System Design Round
Design a scalable system for Twitter with key components and architecture.
Use microservices architecture for scalability and fault isolation.
Key components include user service, tweet service, timeline service, and notification service.
Use a distributed database like Cassandra for storing tweets and user data.
Implement a message queue like Kafka for handling real-time updates and notifications.
Use a caching layer like ...
Round duration - 30 Minutes
Round difficulty - Easy
It is just a formality
Tip 1 : System Design
Tip 2 : Practice questions from leetcode
Tip 3 : Have some projects.
Tip 1 : Mention what you know
Tip 2 : Good previous work to showcase
I applied via Campus Placement and was interviewed in Jun 2024. There were 3 interview rounds.
Coding test has multiple choice questions based on basics of programming and 2 coding questions.
OOP is a programming paradigm based on the concept of objects, which can contain data and code to manipulate that data.
OOP focuses on creating objects that interact with each other to solve problems.
Key concepts include classes, objects, inheritance, polymorphism, and encapsulation.
Classes are blueprints for creating objects, defining their properties and behaviors.
Inheritance allows new classes to be based on existing...
I applied via Recruitment Consulltant and was interviewed in Sep 2021. There were 2 interview rounds.
Apti and coding
I applied via Campus Placement and was interviewed in Jun 2021. There was 1 interview round.
My dream is to create innovative software solutions that positively impact people's lives and drive technological advancement.
Building User-Centric Applications: I aspire to develop applications that prioritize user experience, like a health tracking app that motivates users to lead healthier lives.
Contributing to Open Source: I dream of contributing to open-source projects, collaborating with developers worldwide to c...
Deadlock is a situation in computing where two or more processes cannot proceed because each is waiting for the other to release resources.
Occurs in multi-threaded environments when processes hold resources and wait for others.
Example: Process A holds Resource 1 and waits for Resource 2, while Process B holds Resource 2 and waits for Resource 1.
Can lead to system inefficiency and unresponsiveness.
Deadlock detection and...
A Red-Black Tree is a balanced binary search tree with specific properties to ensure efficient operations.
Each node is colored either red or black.
The root node is always black.
Red nodes cannot have red children (no two reds in a row).
Every path from a node to its descendant leaves must have the same number of black nodes.
This structure ensures O(log n) time complexity for insertion, deletion, and search operations.
Exa...
Local minima in a 2-D array are elements smaller than their neighbors. We can find them using various algorithms.
A local minimum is defined as an element that is less than its adjacent elements.
For example, in the array [[9, 8, 7], [6, 5, 4], [3, 2, 1]], the element 1 is a local minimum.
To find local minima, iterate through each element and compare it with its neighbors (up, down, left, right).
Consider edge cases where...
based on 1 interview experience
Software Developer
10
salaries
| ₹4.1 L/yr - ₹8.5 L/yr |
Customer Safety Consultant
9
salaries
| ₹1.9 L/yr - ₹4 L/yr |
Team Lead
7
salaries
| ₹3.8 L/yr - ₹4 L/yr |
Customer Service Executive
4
salaries
| ₹1.9 L/yr - ₹3.5 L/yr |
Senior Software Developer
4
salaries
| ₹6.9 L/yr - ₹8.5 L/yr |
Udaan
Swiggy
CARS24
BlackBuck