Filter interviews by
I had to make a to-do list application using Kotlin/Swift/React Native
Observable in Swift is a property wrapper that allows for automatic notifications when the value changes.
Observable is a property wrapper introduced in Swift 5.1.
It can be used with any property that needs to be observed for changes.
When the value of the property changes, any views using that property will be automatically updated.
Example: @Published var score: Int = 0
Swift was chosen for its performance, native iOS support, and better integration with Apple's ecosystem.
Swift offers better performance compared to React Native due to its native code execution.
Swift provides seamless integration with Apple's ecosystem, allowing for better utilization of iOS features.
Swift is the preferred choice for developing iOS apps as it is the native language for iOS development.
React Native may ...
4 DSA questions, 10 Questions of SQL queries, MCQS of APIS, DBMS
I applied via Referral and was interviewed in Sep 2024. There were 2 interview rounds.
They given 4 question based on DSA topics such as graph, DP, Array . All questions level medium to hard .
I was interviewed in May 2024.
It involved 3-4 questions on dsa.
LCA of a binary tree is the lowest common ancestor of two nodes in the tree.
Traverse the tree from the root node to find the paths from root to the two given nodes.
Compare the paths to find the last common node, which is the LCA.
Use recursion to solve the problem efficiently.
Handle edge cases like if one of the nodes is the ancestor of the other.
Buyhatke interview questions for popular designations
2 hours of basic dsa
Foreign keys are columns in a database table that reference the primary key of another table, establishing a relationship between the two tables.
Foreign keys ensure referential integrity in a database by enforcing relationships between tables.
They help maintain data consistency by preventing actions that would violate the relationships between tables.
For example, in a database with tables for 'orders' and 'customers', ...
Depth first search in tree is implemented using recursion to explore each branch fully before moving to the next.
Start at the root node and recursively visit each child node before moving to the next sibling node.
Use a stack to keep track of nodes to visit, pushing children onto the stack before siblings.
Base case is when the current node is null or a leaf node, then backtrack to the parent node.
I was interviewed before Sep 2020.
Round duration - 90 minutes
Round difficulty - Medium
You are given a binary tree consisting of 'N' unique nodes and a start node where the burning will commence. The task is to calculate the time in minutes required to completely b...
Calculate the time in minutes required to completely burn a binary tree starting from a given node.
Start burning from the given node and spread fire to adjacent nodes each minute
Track the time taken for each node to burn completely
Return the maximum time taken to burn the entire tree
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.
You want to visit your friend’s house located at some position in an infinite grid starting from origin (0, 0). You can move in four directions: East (E), West (W), North ...
Given a directional string representing a route to a friend's house in an infinite grid, find the shortest lexicographically smallest route to reach the destination.
Iterate through the directional string and keep track of the movements in each direction (E, W, N, S).
Calculate the final position based on the movements and find the shortest lexicographically smallest route to reach that position.
Consider the constraints ...
Tip 1 : Strengthen DSA skills initially, know the basics and understand the working of different data structures
Tip 2 : Learn to implement them and enhance your coding skills. Make mistakes and learn from them instead of just cramming everything before practicing.
Tip 3 : To enhance coding skills, try your best to crack a question instead of giving up and looking at the solution. This will improve your problem-solving skills.
Tip 1 : Make sure your resume fits everything into a single page.
Tip 2 : Have at least 2 projects on your resume.
Tip 3 : Only Mention only those technical skills that you are confident in. Do not put false things on your resume.
Tip 4 : Mention the work you have done during your internships.
Tip 5 : Include an objective in your resume.
Top trending discussions
My day was productive and fulfilling. As for myself, I am a driven and detail-oriented individual with a passion for problem-solving.
I tackled several challenging tasks at work and made significant progress on each of them.
I also took some time to exercise and clear my mind, which helped me stay focused throughout the day.
As for myself, I have a background in engineering and enjoy using my analytical skills to find cre...
Optimizing code involves identifying and removing bottlenecks to improve performance.
Identify the parts of the code that are taking the most time to execute
Use efficient algorithms and data structures
Minimize the number of function calls and loops
Avoid unnecessary calculations or operations
Use caching or memoization to avoid repeating calculations
Profile the code to measure performance improvements
Optimized version of given code
Use efficient data structures and algorithms
Avoid unnecessary loops and conditions
Minimize function calls and variable assignments
My day was productive and fulfilling. As for myself, I am a driven and detail-oriented individual with a passion for problem-solving.
I tackled several challenging tasks at work and made significant progress on each of them.
I also took some time to exercise and clear my mind, which helped me stay focused throughout the day.
As for myself, I have a background in engineering and enjoy applying my analytical skills to a var...
Yes, I prefer coding in C and have read The C Programming Language book. I have also explored the concept of Inheritance in C.
I find C to be a powerful and efficient language for system programming.
Yes, I have read The C Programming Language book by Dennis Retchie and found it to be a great resource.
Recently, I have been exploring the concept of Inheritance in C through various online resources and tutorials.
While C do...
Inheritance allows a class to inherit properties and methods from another class.
Inheritance promotes code reusability and saves time and effort in programming.
It allows for the creation of a hierarchy of classes with shared characteristics.
For example, a class Animal can be inherited by classes such as Dog, Cat, and Bird, which share common properties and methods.
Inheritance can be implemented using the 'extends' keywo
Liskov substitution principle is a principle in object-oriented programming that states that objects of a superclass should be able to be replaced with objects of its subclasses without affecting the correctness of the program.
Subtypes must be substitutable for their base types
Derived classes must not change the behavior of the base class
Violating the principle can lead to unexpected behavior and errors
Example: A squar...
Explanation of OOPs concepts with programs
Encapsulation: Wrapping data and functions into a single unit. Example: Class in Java
Abstraction: Hiding implementation details and showing only necessary information. Example: Abstract class in C#
Inheritance: Acquiring properties and behavior of a parent class. Example: Child class extending parent class in Python
Polymorphism: Ability of an object to take many forms. Example:
Dynamic polymorphism is achieved through virtual functions and inheritance in object-oriented programming.
Create a base class with virtual functions
Create derived classes that override the virtual functions
Use pointers or references of the base class to call the virtual functions
The appropriate derived class function will be called based on the object being pointed to or referred to
Global variables can lead to unexpected changes and make debugging difficult.
Global variables can be accessed and modified from any part of the code, making it difficult to track changes.
They can cause naming conflicts if multiple variables with the same name are used in different parts of the code.
Using global variables can make it harder to test and debug code, as it can be difficult to isolate the cause of errors.
Th...
Using 'goto' can make code hard to read, maintain and debug.
Goto statements can create spaghetti code that is difficult to follow.
It can make it harder to understand the flow of the program.
It can also make debugging more difficult.
There are usually better alternatives to using goto, such as using loops or functions.
Some programming languages, such as Java and Python, do not even have a goto statement.
Using goto can al...
My favorite subject is history because it helps me understand the present and learn from the past.
I enjoy learning about different cultures and how they have evolved over time
I find it fascinating to study the causes and effects of major historical events
One of my favorite books on history is 'Guns, Germs, and Steel' by Jared Diamond
Implicit objects are pre-defined objects in JSP that can be accessed without being explicitly declared.
Implicit objects are created by the JSP container during the translation phase.
They can be accessed using predefined names such as request, response, session, application, out, pageContext, config, and exception.
For example, the request object can be used to retrieve parameters from a form or URL.
The session object ca...
Apache is a popular web server and Tomcat is a widely used application server.
Apache is an open-source web server that supports multiple operating systems and is known for its stability and security.
Tomcat is a Java-based application server that is used to deploy Java web applications and supports servlets and JSPs.
Other popular web servers include Nginx and Microsoft IIS.
Other popular application servers include JBoss...
To deploy a web application on Apache Tomcat, the application needs to be packaged as a WAR file and then deployed to the Tomcat server.
Create a WAR file of the web application
Copy the WAR file to the Tomcat webapps directory
Start the Tomcat server
Access the web application using the URL http://localhost:8080/
Collections in Java are classes that implement collections of objects, such as lists, sets, and
I applied via Referral
A program to swap two pointers.
Declare two pointers of the same data type
Assign the first pointer to a temporary variable
Assign the second pointer to the first pointer
Assign the temporary variable to the second pointer
Dijkstra's algorithm finds shortest path between nodes in a graph
Create a graph with nodes and edges
Initialize distances from source node to all other nodes as infinity
Set distance from source node to itself as 0
Create a set of unvisited nodes
While unvisited set is not empty, select node with minimum distance
For each neighbor of selected node, calculate distance from source node
If calculated distance is less than curre...
Floyd-Warshall's algorithm is used to find the shortest path between all pairs of vertices in a weighted graph.
Create a 2D array to store the distances between all pairs of vertices.
Initialize the array with the weights of the edges in the graph.
Use nested loops to iterate over all pairs of vertices and update the distances if a shorter path is found through a third vertex.
The final array will contain the shortest dist
Program to print matrix elements in spiral order recursively
Create a recursive function to print the elements in spiral order
Define the boundaries of the matrix and traverse the matrix in spiral order
Call the recursive function to print the elements in spiral order
Handle edge cases such as empty matrix or matrix with only one row/column
Find two numbers in an unsorted array that add up to a given sum in O(n)
Use a hash table to store the difference between the sum and each element in the array
Iterate through the array and check if the current element is in the hash table
If it is, return the current element and the corresponding difference
If not, add the current element to the hash table
Indexing is a technique used in DBMS to improve the performance of queries.
Indexing creates a separate data structure that allows faster retrieval of data.
It works by creating a pointer to the location of data in the table.
Indexes can be created on one or more columns of a table.
Types of indexing include B-tree, hash, and bitmap indexing.
Indexes can also be clustered or non-clustered.
Clustered indexes determine the phy...
B and B+ trees are data structures used for efficient searching and sorting of large datasets.
B trees are balanced trees used for disk-based storage systems.
B+ trees are similar to B trees but have all data stored in the leaf nodes for faster searching.
B trees have a variable number of keys per node, while B+ trees have a fixed number.
B trees have a higher fanout than B+ trees, making them more efficient for smaller da...
Program to find lowest common ancestor of two nodes in binary search tree and binary tree with brute force approach.
For binary search tree, traverse from root to both nodes and store the path. Then compare paths to find LCA.
For binary tree, traverse from root to both nodes and store the path. Then compare paths to find LCA.
Brute force approach involves checking each node's descendants to see if they contain both nodes.
...
Program to print all ancestors of a node in a binary tree
Create a recursive function to traverse the binary tree
Check if the current node is the target node
If yes, print all the nodes in the call stack
If not, recursively call the function for left and right subtrees
I was interviewed before Sep 2020.
Round duration - 180 minutes
Round difficulty - Medium
The online test consisted of 2 coding questions, 30 aptitude MCQs, 30 behavioral MCQs and 10 code snippets to debug. The coding questions were of medium level, aptitude MCQs were easy and the code snippets to debug was also of easy level. Each section had a time constraint.
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 beyond constant space complexity.
Create a dummy node to start the merged list
Iterate through both linked lists and compare nodes to merge them in sorted order
Update the next pointers accordingly
Handle cases where one list is empty or both lists are empty
Return the head of the merged linked list
Consider a 2-dimensional grid 'GRID' with 'N' rows and 'M' columns in Ninjaland. Each cell in the grid has an associated cost. The goal is to determine the minimum path ...
The Minimum Path Sum Problem involves finding the minimum sum of costs along a path from the top-left to the bottom-right of a grid.
Use dynamic programming to calculate the minimum path sum by considering the costs of moving down or right at each cell.
Initialize a 2D array to store the minimum path sum values for each cell in the grid.
Iterate through the grid to calculate the minimum path sum for each cell based on the...
Round duration - 60 minutes
Round difficulty - Medium
My interview was at 9:00 am. The interview was conducted on Amazon Chime and my webcam was on. The interviewer also asked me to write the code on a document which can be edited by both me and the interviewer. The difficulty of the questions was of medium level. I was asked 3 coding questions along with 2 questions related to OOPS at the end. The interview ended with the discussion of one of my projects. The interviewer was good and also gave me hints wherever required.
You are given a string S
. Your task is to partition S
such that every substring of the partition is a palindrome. Your objective is to return all possible palindr...
Given a string, partition it into palindromes and return all possible configurations.
Use backtracking to generate all possible palindrome partitions
Check if each substring is a palindrome before adding it to the partition
Return all valid partitions as an array of strings
Given an array of integers with 'N' elements, determine the length of the longest subsequence where each element is greater than the previous element. This...
Find the length of the longest strictly increasing subsequence in an array of integers.
Use dynamic programming to solve this problem efficiently.
Initialize an array to store the length of the longest increasing subsequence ending at each index.
Iterate through the array and update the length of the longest increasing subsequence for each element.
Return the maximum value in the array as the result.
You have a sequence of consecutive nonnegative integers. By appending all integers end-to-end, you formed a string S
without any separators. During this pro...
Find the missing number in a string of consecutive nonnegative integers.
Iterate through the string and check for missing numbers by comparing adjacent integers
If a missing number is found, return it as the output
Handle cases where there are multiple missing numbers or the string is invalid by returning -1
ACID properties in DBMS ensure data integrity and consistency.
Atomicity: All operations in a transaction are treated as a single unit of work, either all succeed or all fail.
Consistency: Database remains in a consistent state before and after the transaction.
Isolation: Transactions are isolated from each other until they are completed.
Durability: Once a transaction is committed, the changes made by it are permanent and...
Tip 1 : You must have a grip over Data Structures and algorithms. Your concepts must be crystal clear. Pick one coding platform and try to practice at least 7-10 coding questions everyday. I completed around 200+ questions on Leetcode, 200+ questions on Geek For Geeks and around 30-40 questions on InterviewBit.
Tip 2 : After attempting any coding problem, analyze its time and space complexity. See, if you can further optimize your solution. You can always check the editorials and compare your solution with it.
Tip 3 : Apart from coding questions keep studying concepts of Operating Systems, databases and object oriented programming. You can always refer to Geeks For Geeks articles for it. Also, Coding Ninja's Data Structures and algorithms course in C++ helped me a lot in improving my OOPS concepts specifically.
Tip 1 : You do not need to have a long list of projects on your resume. One good project with proper knowledge of it will do good. Similarly, do not list down several number of skills. Few skills but roper knowledge of them are enough.
Tip 2 : Do not fake anything on your resume. The interviewer gets to know about it by asking questions. If you aren't able to answer, it leaves a negative impact.
I was interviewed before Sep 2020.
Round duration - 90 minutes
Round difficulty - Easy
This was MCQ+Coding round.
Check if two strings are anagrams by comparing the sorted versions of the strings.
Sort both strings and compare if they are equal.
Use a hashmap to store the frequency of characters in each string and compare the maps.
Ignore spaces and punctuation when comparing the strings.
Round duration - 90 minutes
Round difficulty - Easy
This was face to face interview round.
Round duration - 90 minutes
Round difficulty - Easy
This was face to face interview round.
Tip 1 : Participate in live contests on websites like Codechef, Codeforces etc as much as possible.
Tip 2 : Practice previous interview questions from LeetCode, GeeksForGeeks.
Tip 3 : Revise Computer Science subjects like DBMS, OOPS thoroughly.
Add projects and Internships if you have done any and add only those things which you really know.
Final outcome of the interviewSelectedbased on 8 interviews
Interview experience
based on 12 reviews
Rating in categories
0-1 Yrs
Not Disclosed
6-8 Yrs
Not Disclosed
3-6 Yrs
Not Disclosed
Software Developer
8
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Development Engineer
5
salaries
| ₹0 L/yr - ₹0 L/yr |
Product Designer
5
salaries
| ₹0 L/yr - ₹0 L/yr |
Content Developer
4
salaries
| ₹0 L/yr - ₹0 L/yr |
Business Development Manager
4
salaries
| ₹0 L/yr - ₹0 L/yr |
Flipkart
Snapdeal
Myntra
Shopclues