Filter interviews by
Find node with maximum weight in a binary tree based on data and level of node
Calculate weight of each node based on data and level
Traverse the binary tree and keep track of node with maximum weight
Return the node with maximum weight
Use synchronization techniques like locks, semaphores, or mutexes to prevent multiple processes from accessing shared memory simultaneously.
Implementing a locking mechanism to ensure only one process can access the shared memory at a time.
Using semaphores to control access to the shared memory.
Using mutexes to ensure mutual exclusion and prevent race conditions.
Using atomic operations to ensure that memory operati...
Find the intersection point of two linked lists.
Traverse both lists and find their lengths.
Move the head of the longer list to make both lists equal in length.
Traverse both lists in parallel until the intersection point is found.
Designing an offline browser poses challenges such as data storage, synchronization, and user experience.
Ensuring efficient data storage and retrieval
Implementing synchronization with online content
Providing a seamless user experience with limited connectivity
Handling updates and changes to online content
Managing cache and memory usage
Dealing with security concerns
Handling different file types and formats
What people are saying about Microsoft Corporation
C code using semaphores to ensure exclusive access to shared memory for two processes.
Use a semaphore to control access to shared memory.
Initialize the semaphore to 1 to allow one process at a time.
P0 should wait on the semaphore before writing to memory.
P1 should also wait on the semaphore but will be blocked until P0 releases it.
After P0 finishes writing, it should signal the semaphore to allow P1 to proceed.
Count the number of times a substring appears in a string.
Use a loop to iterate through the string and check for the substring at each index.
Use the count() method to count the number of occurrences of the substring.
Consider using regular expressions to find all occurrences of the substring.
Handle edge cases such as empty strings or substrings.
Use exponentiation by squaring algorithm to find nth power of a number in shortest computational time.
Use recursion to divide the power by 2 and multiply the base accordingly
If power is odd, multiply the base with the result of recursive call
If power is negative, take reciprocal of base and make power positive
Handle edge cases like power=0 and base=0 or 1
Time complexity is O(log n)
Find the nth largest number in a binary tree
Traverse the tree in-order and store the values in an array
Return the (n-1)th index of the sorted array in descending order
Use a max heap to keep track of the largest n elements
Compress a string by replacing consecutive characters with their count.
Iterate through the string and count consecutive characters.
Append the character and its count to a new string.
Handle edge cases like single characters.
Add two numbers stored in linked lists and return the sum in a linked list.
Traverse both linked lists and add the digits at each node while keeping track of carry.
Create a new linked list to store the sum digits.
Handle cases where one linked list is longer than the other.
Handle cases where the sum of the last digits results in a carry.
Return the new linked list with the sum digits.
LeetCode , hard questions on dynamic programming, graphs, and more.
DSA, Cn, os, DBMS, ML
I applied via LinkedIn and was interviewed in Jul 2024. There were 3 interview rounds.
It was bsed on DP, Trees and Graphs
Optimizing code for reduced time complexity by using efficient algorithms and data structures.
Use efficient data structures like hash tables, binary search trees, or priority queues.
Avoid nested loops and try to reduce the number of iterations.
Utilize dynamic programming or memoization to store and reuse intermediate results.
Consider using bitwise operations for certain calculations.
Optimize recursive functions by elim...
I appeared for an interview in Feb 2025, where I was asked the following questions.
DSA, Graph, DP, Arrays
I applied via Referral and was interviewed in Apr 2024. There were 4 interview rounds.
OA Test with 2 medium level questions
Find the kth largest element in an array of integers using efficient algorithms.
Use a max-heap to extract the largest elements efficiently. Example: For array [3, 2, 1, 5, 6, 4] and k=2, return 5.
Alternatively, use quickselect algorithm for average O(n) time complexity. Example: In the same array, quickselect can find the 2nd largest.
Sorting the array and accessing the kth largest directly is simple but O(n log n). Exa...
Count distinct islands in a grid of '1's (land) and '0's (water) using DFS or BFS.
Use Depth-First Search (DFS) or Breadth-First Search (BFS) to explore the grid.
Mark visited land cells to avoid counting them multiple times.
Each time you start a new DFS/BFS from an unvisited land cell, increment the island count.
Example: For grid [['1', '1', '0'], ['0', '1', '0'], ['0', '0', '1']], there are 2 islands.
I applied via Referral and was interviewed in Apr 2024. There were 2 interview rounds.
2 problem related to graphs and dynamic programming 45min I was given to solve I was able to solve both of them and got shortlisted for the next round.
I have a strong technical background, excellent problem-solving skills, and a passion for software development.
I have a Bachelor's degree in Computer Science and 5 years of experience in software development.
I have successfully completed multiple projects using various programming languages such as Java, Python, and JavaScript.
I am a quick learner and always eager to expand my knowledge and skills in the field of softw...
I applied via Campus Placement and was interviewed in Aug 2024. There was 1 interview round.
I am a passionate software developer with experience in Java, Python, and web development.
Experienced in Java, Python, and web development technologies
Strong problem-solving skills
Team player with excellent communication skills
1 hr wide varitey of question
A graph is a data structure that consists of nodes (vertices) connected by edges.
Nodes represent entities and edges represent relationships between entities
Graphs can be directed or undirected
Common graph algorithms include depth-first search and breadth-first search
2 easy level machine coding round.
A logger captures and stores application events for debugging and monitoring purposes.
Log Levels: Define levels like DEBUG, INFO, WARN, ERROR, and FATAL for categorizing logs.
Output Formats: Support multiple formats (e.g., JSON, plain text) for flexibility.
Log Rotation: Implement log rotation to manage file sizes and prevent disk overflow.
Asynchronous Logging: Use asynchronous methods to avoid blocking application perf...
Some of the top questions asked at the Microsoft Corporation Software Developer interview -
The duration of Microsoft Corporation Software Developer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 30 interview experiences
Difficulty level
Duration
based on 92 reviews
Rating in categories
Software Engineer
2.5k
salaries
| ₹15 L/yr - ₹54 L/yr |
Senior Software Engineer
1.4k
salaries
| ₹24.8 L/yr - ₹95 L/yr |
Software Engineer2
1.2k
salaries
| ₹22 L/yr - ₹72 L/yr |
Software Developer
1.1k
salaries
| ₹15 L/yr - ₹52.7 L/yr |
Support Engineer
615
salaries
| ₹9 L/yr - ₹32 L/yr |
Amazon
Deloitte
TCS