Status: New Grad (May 2019), BS CS
Position: Team Leader | SWE
Location: Monterrey, México
Date: January 2019
Status: New Grad, BS CS
Position: SWE1 at Microsoft
Location: Redmond, WA
Date: September 2019
I got referred by a friend of mine that works at MS as a new grad
I scheduled online but couldn't make it to the interview at the recruiting event of my university, so got rescheduled to a phone interview
I prepared with the Microsoft premium course, which gave me a lot to study and the "explore" section. I consider it to be very handy because you can "explore" the courses and then get to solving problems. (I got to + 40%)
I also prepared with the problems I got in previous years of interviewing at MS.
I really get to try to understand the implementation when I can't come up with a solution, so I just don't memorize it, but get to comprehend the code and also try to understand the process of how I could come with the solution and, If i didn't know a method, really get comfortable with it.
We talked for about 15 minutes, he was very kind and talked about his current role @MS
He gave me a code (it basically was the code of how "social networks" find out the "mutual friends")
I coded the "fix" parts but only discussed the improvements, he didn't ask me to code it.
After that, he asked me a
Which I implemented recursively.
He was very kind at all times and told me to keep studying, as I may hear from there "in the next two-three weeks"
I received the email that I "passed" to finals the next day after my previous interview, which surprised me a lot because finals round was less than two weeks from that day. I signed up for the last few days (which at the moment seemed like the best option because "I get to study more", but later I consider it to be a mistake, because interviewers where really tired by that time, and interview days, as they told me are from 7 am to 7 pm, and then they work to make the reports and end up being days "extremely tiring".
It consisted of four technical interviews at MS Monterrey's office
I consider that I had 2 out of 4 "very good" interviews, 1 "good" and 1 "horrible" interview. (Technically speaking)
Context: he was sleeping
He told me to think "very carefully" and after I came up with a solution, write it down in the board, so we could discuss it later.
He was kinda mad and seemed bothered for some reason.
I first tried a Depth First Approach, he continuously asked me if I already knew the problem (which I didn't), the solution wasn't good enough, so after he told me to sit again because "he was sure I could come up with a better solution", I tried the BF Approach, then he followed up with
He accepted my solution and asked me if I had any questions.
It was very disappointing that I was very excited as it was my first interview and he just "no, wait"ed me cause he was sleeping, probably 15/45 minutes (when I was coming up with a solution) he was sleeping.
Context: He was super friendly and enthusiastic
He told me to first go to the technical part so we could have more time to talk at the end.
He gave me code, asked me what it does
I tried speaking and writing out what we got, but it was very poorly written code, no significant names, and unfamiliar syntax. I ended up taking a lot of time in this part (20 minutes).
At the end it was a two-function class that check if two given strings
And it pass through them using recursion and very strange null checking
He asked me then how could I implement a better solution. (Didn't code, barely discussed it)
After that he told me what his current role at MS was, he was very enthusiastic, gave a couple of questions and after I finished, he told me "I have to pee" and left the room. It ended up being a 35 minutes interview.
Context: He was super friendly and told me he liked to help people out, we talked about my previous and current jobs, talked about cars, vacations, and stuff.
He also talked a lot about his current role, and how me manage to "help people help". It was by far the most comfortable interview I ever had.
After that we got to the technical part.
I spoke out my solution, he asked me if I knew a specific library or method, I said that I didn't and let me continue with my code, he helped out at the very end with some syntax error I had.
No follow up.
Context: When we arrived to the room, he simply told me "the problem is in the board".
He verbally harassed me continuous times asking me "if I had ever written code", "where did I graduated from", "if I have ever compiled code before".
One of the other candidates (which happened to be a classmate), when finished the interview, she came to the candidates-room crying.
It was basically the worst interview I ever had, he prevented me from continuing coding and after (I assume) he gave up on me coming up with a solution (barely at min 30), showed me the way out of the room and told me he had a "team meeting to attend".
https://leetcode.com/problems/n-queens/Even though I know the problem, I didn't remember the "best approach", so probably that was why he prevented me from advanzing.
He told me I "already had the function for checking if the queen is in a valid position, where no queens could attack each other"
He prevented me from going on after I double-for-looped the matrix because I was "printing" after I did the check.
The process was extremelly fast, it ended up being a 3ish week process after I first heard from MS.
You receive a lot of information about the process and interviews and even get scheduled a group "mockup" or preparation session.
The university recruiter never answers the emails and rarerly her phone or IMs
I received the response that they would not continue with my application by not giving me an offer barely 40 minutes after I came out of the office. (I was still on the Uber home)
So that ended up my not very long process of interviewing.