A phone screen with a manager and a few programmers comes first. They ask mostly about Object Oriented Design, Patterns, and architecture. They ask questions about the skills you listed on your resume as they apply to your last or current position. It lasts between 30 minutes to an hour. Next, is the in-person interview in Oklahoma City. It's scheduled for 4 hours. The first 2 hours are with 3 managers who ask you behavioral questions from a printed list given to them by Human Resources. The next 2 hours is with 2 managers and 2 engineers. They ask some C# questions, but it's mainly about object oriented design, architecture, and patterns. They also ask about mocking, test driven design, dependency injection. They also asked about TFS, branching, and conflict resolution. They want someone with heavy Microsoft Enterprise Development experience instead of just a programmer. The last thing you do is code FizzBuzz on the whiteboard. Example questions: What is .net? What is MVC? What's a Stringbuilder and why would you use it? What is mocking? What is dependency injection? What is polymorphism? How would you set up a mocking framework in your project? What's the difference between Var and Dynamic? What is garbage collection? Name the design patterns you know. Are you familiar with continuous integration?