The initial communication started with a phone screen and a couple of technical questions. That was followed up by a second phone interview and then there was a day long interview with the hiring group in Redmond. The interview consisted of 7 in-person interviews.
Most of the questions were about algorithms and design.
Examples:
Design a system that syncs data between 2 servers.
Compare 2 lists to determine if they are identical