KarmSakha
Help

Interview & Soft Skills

Microsoft Interview Questions: Official Process and Practice Answers

Last checked against official sources: 9 October 2026.

Microsoft does not publish a bank of interview questions, but its careers site is unusually open about how interviews work and what interviewers are looking for. That is the best map you have. This guide summarises the official process, then gives practice questions with worked answers for each type of conversation a software engineering candidate is likely to face. The questions are our own practice material, not a list of questions Microsoft has asked.

What Microsoft says about its hiring process

Microsoft's hiring tips page sets out the stages and expectations. When we checked it on 9 October 2026, it described the following:

StageWhat the page says
ApplyCreate a profile, confirm you meet the required qualifications and apply; track your status in the Action Center
Application reviewHiring teams may add a brief screening conversation before interviews
InterviewUsually 2–4 conversations with potential teammates and cross-functional colleagues, each lasting up to an hour
Offer and pre-onboardingOffers arrive by email, through the Action Center or by secure link; a recruiter handles pre-hire steps

Interviews may take place over the phone, on Microsoft Teams or in person, and next steps vary by role. The page also notes that individual feedback is generally not given to candidates who are not selected, so don't count on a detailed debrief.

According to the same page, interviewers ask for specific examples from your past experience, your ideas about how you would approach tasks in the role, and how your skills translate to the position. For some roles you will write code, or share a portfolio or work samples. It lists respect, integrity, accountability and a growth mindset among the qualities it looks for.

Two rules matter on the day. Microsoft encourages candidates to use AI tools responsibly while preparing, but expects you to demonstrate your own skills during assessments and interviews without outside assistance unless that is explicitly permitted. And candidates are expected to represent themselves honestly at every stage, from resume to pre-onboarding. If you need an accommodation, the page says you can request one through the careers site.

Coding conversations: practice questions with worked answers

Coding interviews reward a visible process: clarify, propose, code, test, analyse. Say each step out loud.

Two numbers that add up to a target

Prompt: Given a list of integers and a target, return the indices of two numbers that sum to the target.

Clarify first: can the same element be used twice (assume no), and what should happen if no pair exists (return nothing)? Checking every pair is O(n²). A hash map gives O(n):

def two_sum(nums, target):
    seen = {}  # value -> index
    for i, x in enumerate(nums):
        if target - x in seen:
            return [seen[target - x], i]
        seen[x] = i
    return None

Test it aloud. For [3, 3] and a target of 6, the first 3 is stored at index 0; the second finds it and returns [0, 1]. Time is O(n) and extra space is O(n).

Detect a cycle in a linked list

The two-pointer method moves one pointer a step at a time and another two steps at a time. If there is a cycle, they eventually meet; if the fast pointer reaches the end, there is none.

def has_cycle(head):
    slow = fast = head
    while fast and fast.next:
        slow = slow.next
        fast = fast.next.next
        if slow is fast:
            return True
    return False

This uses O(n) time and O(1) extra space, which is often the follow-up after you offer a hash-set solution.

Level-order traversal of a binary tree

Use a queue. Start with the root, then repeatedly remove a node, record it and add its children. To return each level separately, process the queue in batches equal to its length at the start of each level. Space is proportional to the widest level, which is O(n) in the worst case. For more worked examples, see our coding interview questions with Python answers.

Design conversations

Experienced candidates usually get a design discussion, while freshers may get a smaller object-oriented design question. A practice prompt: design the room-booking feature of a calendar app.

  1. Requirements. Users search rooms by time and capacity, book, cancel and see conflicts. Ask about scale: how many rooms, and how many bookings per minute at peak?
  2. API. GET /rooms?start=&end=&capacity=, POST /bookings, DELETE /bookings/{id}.
  3. Data. Rooms (id, building, capacity) and Bookings (id, room_id, start, end, organiser).
  4. The hard part: double booking. Two people may request the same slot at the same moment. Check for overlap inside a transaction, or use a database constraint that rejects overlapping intervals for the same room, and give the second user a clear error.
  5. Trade-offs. Caching availability speeds up search but can show stale results, so the final conflict check must happen at write time.

Our system design interview guide works through reservations, concurrency and retries in more depth.

Behavioural conversations

Because Microsoft names a growth mindset, prepare stories that show learning, not just success. Practice prompts:

  • Tell me about a time you got something wrong and what you changed afterwards.
  • Describe feedback that was hard to hear and what you did with it.
  • Tell me about a time you had to learn a new tool or domain quickly.
  • Describe a disagreement with a teammate and how it was resolved.

Worked example (fictional, for practice): Situation: during an internship, a feature I built passed my tests but failed for users in a different time zone. Task: I owned the fix. Action: I reproduced the bug with a test that set a fixed time zone, stored timestamps in UTC, converted them only at display time, and added the case to the test suite. Result: the bug did not recur during the rest of the internship, and I now write a time-zone test for any date feature. The learning is specific and shows a changed habit, which is what makes it a growth-mindset answer.

Use our STAR method guide to tighten each story to about two minutes.

"How would you approach this role?" questions

Because interviewers ask how you would approach tasks in the role, pick two responsibilities from the job description and prepare answers to four questions: what you would learn first, who you would talk to, what you would deliver in the first few weeks, and how you would know it was working.

Worked example: turning a job description into a prep sheet

The job description lines below are illustrative, not taken from a real posting.

Job description lineConversation it may lead toEvidence to prepare
"Build and maintain backend services"Coding plus a small design discussionOne service you built: its API, data and a failure you handled
"Collaborate with partner teams"Behavioural: working across teamsA story about aligning with another team's priorities
"Debug production issues"Practical problem-solvingA bug you diagnosed: symptoms, hypothesis, fix, test
"Learn new technologies quickly"Growth mindsetA tool you learned under time pressure, and how

A two-week practice plan

DaysFocus
1–3Arrays, strings and hash maps; two or three problems a day, explained aloud
4–6Linked lists, trees and graphs (BFS and DFS)
7–8One design prompt a day, sketched and timed at 35–40 minutes
9–10Six STAR stories, including two about failure or feedback
11–12Two full mock interviews with a friend
13–14Revise weak spots, prepare questions for your interviewers and test your Teams setup if the interview is virtual

Final checklist

  • Confirm the format, number of conversations and timing with your recruiter.
  • Practise thinking aloud: clarify, propose, code, test, analyse.
  • Prepare stories that show learning, not just wins.
  • Prepare a short plan for how you would approach the role.
  • Do not use AI tools or outside help during interviews unless explicitly permitted.
  • Request any accommodation early through the careers site.

Related guides

Ask KarmSakha AI