Not exactly your standard interview. First a phone screen with technical questions related to java (dependency injection, mocking, ect) and some sql (inner/outer join) as well as a few design patterns.
The on-site was scheduled a few days later and was terrible. Three hour interview, first hour was a PowerPoint that looked like it was made in the 90's, word-art and all, explaining how good GM is. Next hour was a "technical" interview. I say technical even though they only asked me about situations in the past and how I've dealt with them and a few verbal definitions. This could have been done over the phone and didn't require me to go to their location. There was no white-boarding, which is what I would expect at a programming interview, however they explained that they were told from "the top" to not whiteboard. I was ready to walk out at this point as you can never trust the type of programmer that can be hired without white-boarding (believe me from experience).
I felt extremely rushed as they had to go through these 3 open ended questions, one of which ended with the interviewer explained to me that O(N^2) wasn't that bad even though I managed to make the algorithm O(N). He didn't know why you'd want to change that.
Also he regularly interrupted my answers with "let me help you with that" even though my answer were correct, though it may have not been the example he wanted (ie: he asked a question about inheritance and I gave a Person is a mammal relation, but he instead wanted the circle is a shape). He argued with me on every question over semantics. Started to drill through even more definitions and design. First definition question was, "Have you ever made a method call before?" It was pretty clear that they were wasting my time at this point. The interview was not catered to my skill level at all. The position I was going for was a senior java dev role and they actually asked if I had ever made a method call. I realize that this was a standard interview, but I have my MS in a top 10 institution in CS with 5 years enterprise java experience and the suggestion I don't understand a method call is just downright rude.
Questions continued like: what is object oriented programming, programming level language design decisions of things like pass by value/pass by reference in specific instances in java, is there an "ordered set" in java, but not showing the code or asking me to make a data structure like this. The value of these questions are really low as they're asking specifics of the language and not if I understand how programming works.
The interviewer was hard to understand (thick Indian accent). Every time I moved forward to hear him better he moved backward to hide his writings on the page (although my eyesight is excellent and he was merely writing down word for word what I was saying). I had decided not to work with this company at this point, if this was the bar for a "Senior" programmer, I could only imagine what an entry would look like. I was also told there were no "intermediate" developers due to the fact that they outsource at that level, so if you're an entry looking for a job, it's doubtful you'd get past entry.
The last hour was another random guy asking me more open ended questions that were situation based. This is where I asked why we didn't do any whiteboarding and he told me that they're, "not looking to make an excellent programming shop. We just want to support internal products that sell cars." Seriously. Also I asked if there was a push for Scrum in the future and he said, "no, project managers hate that and we have a lot of project managers fully against it." Pretty obvious project managers already rule at GM even though they have no developers.