You have 2 free member-only stories left this month.
10 Questions To Know if a Software Engineer Has Team Fit
Whether you’re a hiring manager, or a team member yourself.
The tech space is in a paradox when it comes to hiring. There is a record number of people trying to break into tech, and yet there is also a record amount of unfilled positions. This problem can be reasoned about in multiple ways, but significant blame can be directed to the tech interview process. Between tricky questions on algorithms and data structures, along with take home assignments to make you feel like you’re still in university, tech interviews are notoriously difficult.
However, I personally believe that there is too much weight on practices that attempt to proxy your coding skills as a software engineer (SWE). An aspect that is just as important, if not the most important quality of a potential candidate, is their team fit. How do they work with multiple people? How do they learn, and take advice? How are they going to make the team better than it is now?
Asking questions about team fit from an angle that teaches you more about both the candidate’s personality as well as their technical skills is critical. You may even save everyone the headache of the coding proxies that technical interviews are so well known for (at least, one can dream).
#1 — Why did you decide to become a software engineer?
A simple yet underrated ice breaker question. Why do you willingly sit on a computer screen all day anyways? To me this question always illuminates the real passion an engineer has for their work. Plus, I thoroughly enjoy hearing stories about engineers who have unconventional backgrounds. After all, I was working as a farm hand and cleaning carpets during my summer months of college, up until I landed my first SWE internship.
If it weren’t for the engineers and managers who acknowledged that I was hungry to learn and thus took me under their wing, I would have never gotten such a great start as a software engineer.
#2 — What are you looking for in this job?
Another simple but still important question. Is the candidate trying to break into tech, or are they tired of their old job? If the latter, do they show meaningful effort on trying to improve their previous job situation before hopping onto the next one?
This question also shows how much a candidate is familiar with your company including it’s purpose and tech stack. Both are important, because even the savviest engineer will grow tired if they don’t believe in the company mission and culture.
#3 — What’s important when checking a team member’s code?
These are the types of questions I am most fond of. Even though it’s high level, it gives the candidate the opportunity to go back and forth between high level points as well as dive into how they investigate code they didn’t write. Do they take the time to understand the code, or do they just check that there’s enough test coverage? If they are trying to understand the code, how do they do so? Do they just stare at source, or do they like to pull the branch down and run the project themselves?
#4 — Can you describe a time when you disagreed with your teammates?
This question is SO important. It doesn’t matter how talented you are, nobody wants to work with an egomaniac — especially in software. When there is a disagreement, the most fundamental response I want to see is that you make compromises.
In reality, that’s what teams of software engineers do on a daily basis. That’s what data structures and algorithm questions require. You need to constantly practice tradeoffs and compromises between time, space, and the ideas of your teammates.
#5 — Can you talk about a project that you were especially proud of?
Whether it’s from within or outside their actual work, there should always be a level of passion and pride in the work of a successful SWE. Don’t just look for the level of completion or whether they deployed the project or not. Instead, listen to the candidate to examine how much they learned from the start to end of the project. What did they do when faced with significant challenges? If they didn’t face any challenges, then what was the point of the project to begin with?
#6 — How do you come up with estimates for new features or bug fixes?
Senior engineers should be especially prepared for this question. Junior engineers are still learning the ropes when it comes to the level of effort required for most tasks. A good teammate will estimate new work by taking stock of where the team is at, not what they as individuals are capable of. Is there a new release that’s got everyone under pressure? Are you onboarding new hires? Have you worked with the technology before? These are questions you want the potential candidate to address.
#7 — What do you learn outside of work?
Notice the phrasing here. As great as it would be to only need to rely on your day job to be a competent SWE, I’ve yet to see anyone I looked up to who wasn’t learning outside of work. However, there is a growing movement that is amazing to witness — to achieve a true work life balance. So, I don’t believe there needs to be stories of entire applications built from scratch.
It’s great to hear if a candidate just enjoys learning from a few tech blogs or YouTube channels that they can speak of, or if they train martial arts, or if even if they play a challenging video game. A more realistic baseline expectation can help prevent you from missing underrepresented talent.
#8 — How do you promote quality software?
Open-ended questions such as this one really give the floor to the candidate to tell you how they work. Do they practice test driven development (TDD)? Do they prefer to have deep depth in their skillset, or broad breadth so that they can operate between teams? One of the most important qualities to look for in a candidate with this question is ownership. When it all comes down to it, do they start their day by looking in the mirror or do they blame others?
#9 — What are your career goals?
While this is a vanilla question, it still shows if the candidate has higher aspirations which is important to your overall team composition. Not everyone needs to be shooting to be director in the next few years — in fact that results in a recipe for disaster as everyone butts heads with another. Much of the time it’s a good enough response to just hear the candidate state that they want to learn and build their skillset over the next few years.
#10 — Can you describe the traits of an ideal product and/or QA team?
Ah, the trifecta of engineering, quality assurance and product. The engineers build, QA breaks, and product appears to be working for a different company. Jokes aside, it really is crucial to have teams that work together. When you ask this question to a SWE candidate, ideal responses include being willing to make compromises but also not being a pushover.
In addition, it’s especially reassuring if the candidate makes it clear that it’s important to have different types of voices in the room whenever decisions are being made. “If everyone is thinking the same, then nobody is thinking,” as General Patton likes to say.
That concludes my list on questions to evaluate a SWE candidate’s team fit! I hope you enjoyed it. If you found any of the questions insightful, or have questions that you would like to share yourself, please leave a comment below! Thanks for reading.