Not exactly a standard interview. First, a phone screen with technical questions related to Java (dependency injection, mocking, etc.) 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. It was a three-hour interview. The first hour was a PowerPoint that looked like it was made in the 90s, word art and all, explaining how good GM is. The next hour was a "technical" interview. I say technical, even though they only asked me about past situations 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" not to 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 three open-ended questions. One of which ended with the interviewer explaining 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 answers were correct, though they may not have been the example he wanted (i.e., he asked a question about inheritance, and I gave a "Person is a mammal" relation, but he instead wanted "Circle is a shape"). He argued with me on every question over semantics. He started to drill through even more definitions and design. The 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 from a top 10 institution in CS with 5 years of enterprise Java experience, and the suggestion that I don't understand a method call is just downright rude.
Questions continued like: What is object-oriented programming? Programming-level language design decisions, 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 is 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-level position 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-level 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.
Does Java have an 'ordered set' data structure?
Does Java pass by value or pass by reference?
What are the three tenets of OOO?
Singleton design
The following metrics were computed from 40 interview experiences for the General Motors Software Developer role in Austin, Texas.
General Motors's interview process for their Software Developer roles in Austin, Texas is on the easier side as most engineers get an offer after going through it.
Candidates reported having very good feelings for General Motors's Software Developer interview process in Austin, Texas.