- Published on
Interview Questions I Ask of Teams as a Software Engineering Candidate
- Authors
- Name
- Curtis Mitchell
Several years ago at a startup I was working at, I was interviewing a candidate for an open role as a fellow software engineer. The candidate was a little nervous, which I didn't count against them, but at the end of my time slot I asked them if they had any questions for me, and the candidate responded with “no, I think I'm good.” This raises a big yellow flag as an interviewer: even if it isn't the intention, a lack of questions can often indicate that you aren't that interested in the role, the team, or the company as a whole. I feel that interviewees should always take advantage of this often too-brief amount of time in interviews to learn all they can about a team and company with which they may be spending a significant part of their lives for the next few years or possibly decades. In this post I'd like to share the set of questions I always try to ask teams I interview with.
Before jumping into the content, I realize that sometimes a person can be in a desperate situation to find a new role and may be willing to take almost any offer that is extended to them. Trust me when I say I've been there: I've been laid off, I've struggled to escape a bad manager, and I've had successive rounds of bad interviews that killed my confidence. I was once even asked to leave an interview early because I was bombing the technical questions so badly. However, I think that even in those types of situations that it's nevertheless worth asking these kinds of questions because you'll at least have a better idea of what to expect. It's also worth asking many of these questions to multiple colleagues and managers, because if you receive wildly different answers it can indicate mismatched expectations or broken communication between managers and individual contributors.
I'll list out each question I like to ask by category, and then describe what type of insight the question should give you about the team/organization you're interviewing with.
Questions about Work Assignments
- Can you describe how work is typically assigned?
This should give you an indication of how collaborative the work environment is. If you're early in your career it may be expected to be assigned tasks without much input, but as you become more senior it can be demoralizing to have little or no say in your assignments. It will also prevent you from growing as an engineer from one who can complete a work ticket to one who can talk to users and customers to figure out their needs and begin architecting solutions in a team setting.
- How do you work with stakeholders and project managers to design or iterate on requirements?
This is similar to the above question, with more emphasis placed on iterative development and (hopefully) an answer will describe where you would fit within the development of features and products.
Questions about Fires 🔥
- Can you tell me about the last team emergency you had, like a very unhappy customer or broken deployment, and how the team overcame it?
It's all fine to learn how a team works on a normal day, but what about when things go really wrong? These are the types of days you'll most strongly remember, for better or for worse. How managers and teammates respond on these types of days can instill loyalty and comraderie for strong teams, or bitterness and resentment for weak ones.
- How does the team learn from mistakes like these and institute changes so that mistakes aren't repeated?
It's possible that in a young organization (like an early-stage startup) that processes such as post-mortems have not yet been instituted, or that no emergencies have been encountered. In that case, I typically like to create a hypothetical scenario such as in the previous question and ask how they might respond.
Skills and Career Development
- How does the team support career development (conferences, continuing education, etc.)?
Similar to the fires question above, early-stage startups rarely have the resources to support much career development. But hopefully in lieu of money for conferences or classes they can provide time for hackathons or try to provide formal or informal mentoring. Leaders who haven't thought about this kind of thing at all may present a yellow or red flag as an organization that will burn you out with constant work with few new skills or certifications to show for it when you start searching for your next opportunity.
- How do your performance reviews work?
This question should give you a clear insight into how the organization thinks about career development and promotions, and how you'll be expected to report on your work.
Role Expectations
- If a candidate were to accept this offer and it was 6-12 months from now, what would you imagine a wildly successful candidate to have done in that time?
This is an excellent question to end on. It can create a sense of excitement for both parties and often give you insight into what some unwritten expectations are and what the organization deeply values in an employee. If you get an offer and can execute on the answer to this question, you'll likely be on the fast track to recognitions of your hard work such as bonuses and promotions.
This isn't an exhaustive list, and obviously there may be questions you can ask that are more specific to the role or organization. But this should give you some ideas about how to get the most out of your Q&A time as a candidate, and hopefully at the end of the process you'll have a clearer picture of the team that you are considering joining.
Best of luck!