At the career fair, I talked with a recruiter at the Microsoft booth and dropped off my resume. About two days later, I was invited to interview on campus. I had a two week advance notice. The day after the on campus interview, I was notified that I was advancing to final round interviews. My interview was scheduled to be in Redmond, WA, about three weeks after my on campus interview.
I went to Washington for three days on an all expense paid trip. On the Microsoft campus, I arrived in the morning and my interview peers in I waited in the recruiting office. We would be called out for interviews hourly. The total number of interviews I was scheduled for was 4; however, one of my interviewers couldn't make it so I waited in the recruiting office playing fruit ninja to spend the time. It is not uncommon for an interview to be cancelled.
I was interviewed by the hiring manager and two members from the team I interviewed on. All the interviews were pretty standard; however, the interview with the hiring manager discusses your interests more so than the other interviews. They all followed the same pattern of having behavioral questions first, then a coding problem, then they allocated time afterwards for any questions I had. After interviews, we had a small tour of the campus all the interviewers had lunch together with a few employees. After lunch, we were given some swag and taxi vouchers to explore Seattle and told that we'd be reimbursed to sight see. We all left together as well in a shuttle. I received the results of my interview two days after the interview date.
Overall, the process took about a month and a week.