The first part of the hiring process was a written test composed of four algorithm-based questions. One week later, you will receive an email informing you have passed to the second stage.
The second stage consisted of three back-to-back, 50-minute interviews with 10-minute breaks in between, all of which were with a different interviewer. Each interview consisted of soft skill questions at the beginning, as well as a technical question.
Given a binary tree, write a function that will print out its nodes in a zig-zag order, starting from the top. For example, print the head node, then the second level from left to right, the third from right to left, etc.
Given a linked list, write a function that will return true if the list can become sorted by moving at most one element, and false in every other case.
Given a not necessarily balanced, unweighted binary tree, write a function that will find the longest path between two nodes in it.
The following metrics were computed from 20 interview experiences for the Microsoft Software Engineer (Internship) role in Belgrade, Serbia.
Microsoft's interview process for their Software Engineer (Internship) roles in Belgrade, Serbia is fairly selective, failing a large portion of engineers who go through it.
Candidates reported having very good feelings for Microsoft's Software Engineer (Internship) interview process in Belgrade, Serbia.