Filter interviews by
To reverse a doubly-linked list, swap the next and previous pointers of each node iteratively.
Initialize three pointers: current, prev, and next.
Set current to the head of the list and prev to null.
Iterate through the list: for each node, store the next node, reverse the pointers, and move prev and current forward.
After the loop, set the head of the list to prev.
Function compacts a sorted array by removing duplicates and returns the new length.
Iterate through the array using a loop.
Use a variable to track the position of unique elements.
If the current element is different from the last unique element, add it to the unique position.
Return the count of unique elements as the new length.
Example: For input [1, 3, 7, 7, 8, 9, 9, 9, 10], output should be [1, 3, 7, 8, 9, 10] wit...
OOP is a programming paradigm that focuses on objects and their interactions.
Encapsulation: bundling data and methods that operate on that data within one unit
Inheritance: creating new classes from existing ones, inheriting their properties and methods
Polymorphism: ability of objects to take on many forms, allowing for flexibility and extensibility
Abstraction: hiding implementation details and only exposing necess...
Yes, I have implemented a thread library.
Implemented a user-level thread library using POSIX threads.
Used mutexes and condition variables for synchronization.
Implemented thread creation, joining, and cancellation.
Implemented thread-local storage using pthread_key_create and pthread_setspecific.
What people are saying about Microsoft Corporation
Polymorphism is the ability of an object to take on many forms.
Polymorphism allows objects of different classes to be treated as if they are the same type of object.
It simplifies code and makes it more flexible.
Examples include method overloading and overriding, and interfaces in Java.
Polymorphism is a key concept in object-oriented programming.
Implementation varies depending on the context and can occur at any stage of a project or process.
Implementation can occur during the planning, execution, or evaluation stages of a project or process.
It involves putting plans into action and making sure they are carried out effectively.
Implementation can involve the use of technology, personnel, or other resources.
Examples of implementation include launching a new...
Count the number of full nodes in a binary tree.
A full node has both non-null left and right children.
Traverse the tree recursively and count the full nodes.
If a node has both left and right children, increment the count and traverse its children.
If a node has only one child or no child, skip it and traverse its child if it exists.
An algorithm to balance a binary search tree ensures optimal search times by maintaining a balanced structure.
1. Identify the imbalance: Check the height of left and right subtrees.
2. Perform rotations: Use single or double rotations to balance the tree.
3. Example of single rotation: Right rotation on a left-heavy subtree.
4. Example of double rotation: Left rotation followed by right rotation on a right-heavy subt...
An alternative algorithm for what?
Please provide context for the algorithm needed
Without context, it is impossible to provide an alternative algorithm
Facebook's database design focuses on scalability, user relationships, and efficient data retrieval.
User Profiles: Each user has a unique profile containing personal information, posts, and friend connections.
Social Graph: A graph database structure to represent relationships between users, allowing for efficient querying of friends and connections.
Posts and Interactions: Tables for storing posts, likes, comments,...
I appeared for an interview in Feb 2025.
Duration: 30 minutes - Format: Online coding challenge - Type: Technical screening - Questions: 2 to 3 coding problems.
Be prepared to answer in-depth technical questions.
- Review data structures, algorithms, and system design concepts.
- Practice explaining complex technical concepts in simple terms.
- Be ready to write code on a shared document or whiteboard.
Aptitude Test:
The aptitude test was a *multiple-choice question*-based assessment that evaluated my logical reasoning, problem-solving, and analytical skills. It consisted of:
- *Quantitative reasoning*: Mathematical problems, such as algebra, geometry, and data interpretation.
- *Logical reasoning*: Pattern recognition, deductive reasoning, and logical puzzles.
- *Verbal reasoning*: Reading comprehension, grammar, and vocabulary.
Aptitude Test Details:
- *Duration*: 60 minutes
- *Format*: Online multiple-choice questions
- *Type*: Aptitude test
- *Questions*: 30-40 questions
What to expect:
- Practice solving logical and mathematical problems.
- Review basic mathematical concepts, such as algebra and geometry.
- Improve your reading comprehension and verbal skills.
- Manage your time effectively to complete the test within the given time frame.
Assignment:
The assignment was a *take-home project* that tested my technical skills, problem-solving abilities, and coding expertise. I was given:
- A set of requirements and specifications
- A deadline to complete the project
- Freedom to choose the programming language and tools
Assignment Details:
- *Duration*: 3-5 days
- *Format*: Take-home project
- *Type*: Technical assignment
- *Requirements*: Implement a specific feature or functionality
What to expect:
- Carefully read and understand the requirements and specifications.
- Plan and design the solution before starting to code.
- Write clean, efficient, and well-documented code.
- Test the solution thoroughly to ensure it meets the requirements.
- Submit the assignment on time, along with any required documentation.
I relate to Samwise Gamgee from 'The Lord of the Rings' for his loyalty, resilience, and dedication to supporting others.
Samwise embodies unwavering loyalty, always supporting Frodo on his journey.
He demonstrates resilience, overcoming challenges despite his fears.
Sam's practical problem-solving skills help navigate difficult situations, similar to maintenance management.
His dedication to his friends mirrors my commitm...
I would approach the team member with empathy, listen to their concerns, and offer support to help them feel better.
Approach the team member privately to avoid embarrassment.
Ask open-ended questions to understand their feelings, e.g., 'I've noticed you're upset; would you like to talk about it?'
Listen actively without interrupting, showing that I care about their well-being.
Offer support, whether it's helping with work...
As CEO, I would enhance communication, invest in training, and prioritize preventive maintenance to boost efficiency and morale.
Improve internal communication by implementing regular team meetings and feedback sessions to ensure everyone is aligned.
Invest in employee training programs to enhance skills and knowledge, leading to better performance and job satisfaction.
Shift focus towards preventive maintenance strategie...
I left my previous company to seek new challenges and opportunities for professional growth in a more dynamic environment.
Desire for career advancement: I wanted to take on more leadership responsibilities, which were limited in my previous role.
Seeking a better cultural fit: The company culture was not aligned with my values, and I wanted to work in a more collaborative environment.
Pursuing new challenges: I felt that...
Fostering creativity involves open communication, collaboration, and providing resources for innovative thinking.
Encourage open dialogue: Create a safe space for team members to share ideas without fear of criticism.
Implement brainstorming sessions: Regularly schedule meetings where team members can freely discuss and develop new ideas.
Provide resources: Offer tools and training that enable team members to explore crea...
I would prioritize the situation, communicate effectively, and seek support to ensure both responsibilities are managed effectively.
Assess the seriousness of the situation at home and determine if it requires immediate attention.
Communicate with family members to delegate tasks or seek their support during the meeting.
If possible, reschedule the meeting or request to attend remotely if the situation allows.
Prepare in a...
Addressing unemployment requires strategic initiatives focusing on skills development, job creation, and community engagement.
Implement vocational training programs to equip individuals with in-demand skills, such as coding bootcamps or trade apprenticeships.
Encourage local businesses to hire through tax incentives or subsidies, fostering job creation in the community.
Promote entrepreneurship by providing grants or low...
My personal motto is 'Excellence through diligence,' reflecting my commitment to quality and continuous improvement in maintenance management.
I believe in proactive maintenance; for example, implementing a predictive maintenance program that reduced downtime by 20%.
I prioritize safety and compliance, ensuring all team members are trained and equipped to follow safety protocols.
I foster a culture of teamwork and communi...
Prioritize essential resources and focus on cost-effective solutions to maximize project impact without loans.
Identify critical tasks: Focus on the most impactful aspects of the project that align with strategic goals.
Leverage existing assets: Utilize current equipment and personnel to minimize additional costs.
Implement phased approach: Break the project into smaller phases to manage resources effectively and assess p...
Led a maintenance team through a major equipment upgrade, ensuring smooth transition and team cohesion.
Identified the need for change due to outdated equipment affecting efficiency.
Conducted team meetings to discuss the upcoming changes and gather input.
Developed a detailed implementation plan with timelines and responsibilities.
Provided training sessions to upskill team members on new equipment.
Monitored progress and ...
I appeared for an interview in Feb 2025.
There are two rounds in the interview process: the first round consists of one data structures and algorithms question based on trees.
Binary Search Trees (BST) enable efficient data storage and retrieval through a hierarchical structure, optimizing search operations.
A BST is a binary tree where each node has at most two children.
For any given node, all values in the left subtree are less, and all values in the right subtree are greater.
Searching for a value in a BST has an average time complexity of O(log n).
Insertion and deletion operations also mai...
2 medium leetcode questions were asked
Polymorphism allows methods to do different things based on the object, while inheritance enables classes to share properties and methods.
Polymorphism allows for method overriding and overloading.
Example of polymorphism: A base class 'Animal' has a method 'sound()', and subclasses 'Dog' and 'Cat' implement it differently.
Inheritance allows a class to inherit properties and methods from another class.
Example of inherita...
During my internship, I developed software features, collaborated with teams, and gained hands-on experience in coding and debugging.
Developed a web application using React and Node.js, improving user experience by 30%.
Collaborated with a team of 5 to implement Agile methodologies, resulting in a 20% increase in project efficiency.
Participated in code reviews, providing constructive feedback that enhanced code quality.
...
I appeared for an interview in Jun 2025, where I was asked the following questions.
Microsoft values collaboration, innovation, and diversity, fostering an inclusive environment for all employees.
Emphasize teamwork: Share experiences where you collaborated effectively with others to achieve a common goal.
Show adaptability: Discuss how you've embraced change in past projects, demonstrating flexibility in your approach.
Highlight diversity: Provide examples of how you've contributed to or benefited from ...
I appeared for an interview in Nov 2024.
It was codility test with 2 questions
Design a scalable food delivery system like Uber Eats, focusing on user experience, logistics, and technology integration.
User Interface: Create intuitive mobile and web apps for customers, restaurants, and delivery personnel.
Order Management: Implement a system to handle order placement, tracking, and notifications in real-time.
Geolocation Services: Use GPS for accurate location tracking of users and delivery personne...
Designing a video-sharing platform like YouTube involves user management, video storage, streaming, and recommendation systems.
User Management: Implement user registration, authentication, and profiles. Example: Users can create channels and subscribe to others.
Video Uploading: Allow users to upload videos with metadata (title, description, tags). Example: Users can upload videos in various formats.
Video Storage: Use c...
Systematic approach to identify and resolve technical issues in desktop support.
Identify the issue: Gather information from the user about the problem.
Reproduce the problem: Try to replicate the issue on your own system.
Check connections: Ensure all cables and peripherals are properly connected.
Review error messages: Analyze any error codes or messages displayed.
Update drivers/software: Ensure all relevant software and...
I chose Microsoft because of its widespread use in the industry and the variety of tools and technologies it offers.
Microsoft products are widely used in the industry, giving me valuable experience and skills
Microsoft offers a wide range of tools and technologies for desktop support, making it easier to troubleshoot and resolve issues
Microsoft certifications are highly recognized and can help advance my career in IT su...
Good communiction and technical skill need
Abstraction is a fundamental concept in programming that simplifies complex systems by hiding unnecessary details.
Abstraction allows focusing on high-level functionalities without worrying about implementation details.
In object-oriented programming, classes and objects are used to represent real-world entities while hiding their complexities.
Example: A car can be driven without knowing how the engine works; the driver ...
LeetCode , hard questions on dynamic programming, graphs, and more.
DSA, Cn, os, DBMS, ML
I appeared for an interview in Jun 2025, where I was asked the following questions.
Python is a high-level, interpreted programming language known for its readability and versatility in various applications.
Easy to learn and use, making it ideal for beginners. Example: Simple syntax like 'print("Hello, World!")'.
Supports multiple programming paradigms, including procedural, object-oriented, and functional programming.
Rich ecosystem of libraries and frameworks, such as Django for web development and Nu...
Python has several built-in data types for various data manipulation needs, including numeric, sequence, mapping, and set types.
int: Represents integers, e.g., x = 5.
float: Represents floating-point numbers, e.g., y = 3.14.
str: Represents strings, e.g., name = 'Alice'.
list: Ordered, mutable collection, e.g., fruits = ['apple', 'banana'].
tuple: Ordered, immutable collection, e.g., coordinates = (10.0, 20.0).
dict: Key-va...
Tuples are immutable and ordered collections, while lists are mutable and can be modified after creation.
Tuples are defined using parentheses: example - tuple_example = (1, 2, 3)
Lists are defined using square brackets: example - list_example = [1, 2, 3]
Tuples cannot be changed after creation (immutable), while lists can be modified (mutable).
Tuples can be used as keys in dictionaries, while lists cannot.
Tuples generall...
Inheritance is a fundamental concept in OOP that allows a class to inherit attributes and methods from another class.
Promotes code reusability by allowing new classes to use existing code.
Supports the creation of a hierarchical class structure.
Example: A 'Dog' class can inherit from an 'Animal' class, gaining its properties and methods.
Allows for method overriding, where a subclass can provide a specific implementation...
Polymorphism allows objects of different classes to be treated as objects of a common superclass, enhancing flexibility in code.
Polymorphism is a core concept in Object-Oriented Programming (OOP).
It enables methods to do different things based on the object it is acting upon.
Example: A function can accept different types of objects and call the same method, which behaves differently for each type.
In Python, polymorphis...
Some of the top questions asked at the Microsoft Corporation interview -
The duration of Microsoft Corporation interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 395 interview experiences
Difficulty level
Duration
based on 1.9k reviews
Rating in categories
Software Engineer
2.5k
salaries
| ₹24.9 L/yr - ₹44 L/yr |
Senior Software Engineer
1.4k
salaries
| ₹37.5 L/yr - ₹75.7 L/yr |
Software Engineer2
1.2k
salaries
| ₹33 L/yr - ₹60 L/yr |
Software Developer
1.1k
salaries
| ₹23.9 L/yr - ₹40 L/yr |
Support Engineer
608
salaries
| ₹14.4 L/yr - ₹24.7 L/yr |
Amazon
Deloitte
TCS