15 Technical Interview Questions all Engineering Managers Should Ask - and Why
Elizabeth (Liz) Bartol
Tech Recruiting @ Capital One | Recruiting & Process Improvement Leader | DEIB | MBA (Penn State)
Hiring the right developer for your team isn’t just a matter of finding the right technical fit (although that's important too!), it’s about finding the right overall fit for your environment and team. Here are the technical interview questions every engineering manager should ask that will give you intelligent insight into the candidates you’re interviewing.
How do you approach solving a programming challenge or issue you’ve never faced before?
Problem-solving along with critical thinking skills are key in any development role. One of the most important characteristics of a solid developer is the ability to solve-problems – especially since IT is ever changing and no two problems are ever the same.
Another way to approach this question is to ask interviewees how they might approach answering a question they are unfamiliar with. A strong candidate will be honest if you ask technical interview questions that may be too advanced, and should be able to describe their research process for learning something new.
And job-seekers, it’s usually ok to answer a technical question outside of your expertise with “I’m not sure of exactly how to do that, but I’m very good with using Google/StackOverflow/GitHub for learning how to do it.” Answering like this will earn you respect, whereas trying to guess or make something up will reflect poorly on your problem-solving skills.
Describe your dream development position and how I might be able to help you create that role here?
According to our yearly tech industry surveys, one of the top reasons employees leave their roles is due to lack of career path or unstimulating work. Although Millennials may have the reputation for being lazy or unmotivated, we’ve learned it can actually be the opposite – they want more challenging work and responsibilities.
How can you make sure you’re hiring someone who won’t be bored in a few months? Opening the line of communication from the start indicates to a potential hire that you’re willing to help them accomplish their career goals (if possible) and will make them feel like they can come to you first when they are feeling unchallenged. It also helps the employee understand that they need to take charge of their career and speak up if there are opportunities within your organization for them to build their skills.
And job-seekers – remember your career path is up to you. If you’re currently under-challenged in your role, write down your personal career goals to help you be clear in your job search. And if appropriate, first have the conversation with your current manager to see if you are able to find ways to transform your current role into a dream position.
Tell us about independent development projects you’ve worked on recently?
Although some companies have policies that restrict or prohibit outside work, policies like this might drive away the most talented of tech employees. The best developers and tech hires are those that are passionate about their work – they are always working on projects, even if simply for the fun of it. This is a great question to understand how passionate a potential hire is about their work.
This is also a great question if you want to show a potential hire you are accepting of the fact they will be doing things in their spare time. Would you hire a mechanic and expect them to not fix their own car, or help a friend who has car issues? Of course not, because a mechanic is passionate about cars, and the best ones are always under the hood – even if they aren’t being paid for it. The same should be thought of developers and other tech employees – it isn’t reasonable to expect them to only follow their passion during the work week.
And job-seekers – read employment contracts carefully. Some companies include clauses that proclaim ownership of any work you do – whether in or out of work. Although clauses like this may not be legal in many states, it is important that you understand who owns the work product especially if it’s a hobby or something you are doing on your own.
What gets you excited to come into work every day? Or, alternatively – What do you look forward to the least about your job?
Positivity is an important trait to look for in employees. Although technical interview questions like these might seem random, it is a good way to gauge what is most important to your potential hire, and whether or not they bring a positive attitude to work. Do they enjoy seeing their coworkers, jumping right into a project or do they struggle with anything positive to say?
Although there’s not necessarily right or wrong answers to these questions, the attitude they convey when answering the question can give you some insight into how well they’d fit into your company culture and whether they would bring positivity to the team or not.
And job-seekers, demonstrating positive energy is one of the most important traits for any hiring manager – make sure any question you answer similar to this indicates the positive influence you would bring to the team.
What is your process for starting a new development project?
Being prepared and not rushing is a critical trait for a solid technical hire. Although not every technical role requires extensive planning, hiring someone that takes the time to plan out their own work is extremely important. If an interviewee forgets the preparation/planning step, they might be the type to jump into solving problems without thinking about the big picture – which can cause bigger issues down the line. At minimum, it’s important for a technical hire to apply critical thinking to understand the technical/functional requirements fully before they begin tackling any problem.
And job-seekers – don’t forget to discuss the planning/prep phase of starting a project – especially in large organizations where there might be guidelines or style guides to review before starting any development work. Being able to demonstrate that you think through a quality solution prior to jumping in will impress any hiring manager.
How do you know when you’ve finished developing on a project?
This is a tricky question as it is so multi-faceted and depends on the technical environment being hired for. What you’re able to find out from a potential hire is how thorough they may or may not be in their development work – and sometimes being too much of a perfectionist isn’t always a good thing. If your environment favors speed over quality, a developer that feels his or her work is completed when they’ve met all the technical requirements might be a good match. However, if quality is more important than speed, you might be looking for answers that indicate the developer cares about a solution that looks good and is properly tested prior to deployment, before they decide their work is finished. There can be a big difference between something that works and a polished, bug-free solution.
And job-seekers, being able to demonstrate that you know how to develop quickly – with quality – will get you an offer, no matter what the environment is. If you have a preference for one development style over another, a counter-question might be “do you prefer your developers to work quickly or take their time to deliver quality?”
What was the first thing you programmed and what would you say you’ve learned since then?
This is a great question to help review how self-aware a candidate is about their development work and how far they’ve developed since then. They should be able to recall their first development project fondly, while still being able to point out issues and things looking back that they could have done better. It might be a red flag if the potential hire doesn’t display any indication of growth from their first project to now.
And job-seekers, hiring managers aren’t looking for perfection from the beginning. No one was a good developer from day one – being able to laugh at yourself and point out things you did back then that you no longer do now shows you’re always learning and growing – critical qualities of a strong developer.
Describe a past colleague’s working style and what you respected most about it?
Good developers are good team players – enterprise level development work can’t be successfully accomplished by a team of one. No matter how talented one developer might be, if they refuse to work well with others, they will hinder the project more than they will help it. This question is a unique twist on simply asking a potential hire how well they work in teams. At this point, every job-seeker knows the script – and the right answer to the question about how well they work with teams. Every candidate will swear they are a great team player – but can they back that up with examples? If they can’t come up with an example of a colleague they worked with that they respected, chances are they are the type that thinks their style of development is the best.
And job-seekers, references are often asked about your working style and what others liked about it. You should be prepared to do the same in an interview, if you want to truly demonstrate you are a strong team-player and not just someone that says they are.
Tell us about a time you hit a roadblock/setback and what you learned from that experience?
Hitting roadblocks or encountering major setbacks are common experiences for any tech professional. Whether it was an application that broke or a project that simply wasn’t solidly thought out, this is part of the growth process of any developer. How a potential employee feels about setbacks and where they place the blame for issues can be critical to getting some insight on the type of person they are. Some developers get extremely frustrated when things break or when projects go off-track – and developers like this can drag the whole team down. Instead, look for answers that indicate the person takes responsibility for their part in the issue and how they rose to the challenge to overcome and resolve the issue.
And job-seekers, things happen. Showing that you were able to overcome a major hurdle and stay positive throughout the situation is a strong indication of your emotional intelligence.
Can you share about a past manager that you worked really well with and what you liked about their management style?
It can be extremely difficult to manage technical teams – some developers require flexibility and freedom to self-manage, while others require well thought out specifications before they can begin coding. With so many coding styles and preferences, it can be a big challenge for a manager to accommodate everyone while still acting as a leader. This question can help you understand how a potential hire interacts with management – a good answer would be them describing a management style like your own – or one that is similar enough to your style for a fit. A red flag response might be one a candidate not really being able to come up with any past examples of managers he or she worked well with.
And job-seekers, at this point we all know it’s not advisable to speak poorly about past work environments, but keep in mind not having anything good to say about at least one manager, speaks volumes and could reflect poorly on yourself.
Tell me about the most complex problem or issue you were proud to solve?
Learning how to solve problems is a day-to-day responsibility in the tech world. Even so, some developers aren’t as good at solving large, complex problems as others – instead they excel at developing strong code exactly as instructed. Other developers find themselves bored by mundane coding, without the challenge of solving bigger issues. There’s nothing wrong with either type, but understanding where their true strengths lie will tell you if this potential hire is going to be content with routine, cookie-cutter coding projects or if they’d excel on the design and strategy side as a team lead or architect.
And job-seekers – there’s nothing wrong with being the type that enjoys routine the routine or the type that enjoys new challenges – the key to landing in a role you’ll enjoy is being able to communicate your needs during the interview process.
How would your last team describe you and your working style?
Flipping a previous question around, this question is a good way to get a feel of a potential hire’s awareness of their personal working style. Keeping notes of their answers can also be helpful when speaking to references. If a reference describes their experience working with the potential hire in a significantly different way, it might be a sign of a candidate that lacks in self-awareness. Strong self-awareness is critical in any hire – and any indications a candidate might not be self-aware should be a concern.
And job-seekers, just like outdated questions about your strengths and weaknesses, the best way to answer this question is honesty paired with how you are working at self-improvement, if necessary. There is no such thing as a perfect working style – if you’re more reserved and prefer a quiet environment to work, perhaps you are working at being more social with team members by inviting colleagues to join you for lunch. Or, if you’re a social butterfly in the office, perhaps you’re working at decreasing some interactions with colleagues to be able to focus more on your work. Demonstrating a high-level of self-awareness paired with strong team dynamics would be attractive to any employer.
Why do you want to work with us?
The answer to this question can give you significant insight into what motivates the candidate sitting across from you. Perhaps you’ll hear about how they reviewed your website and GlassDoor and liked what they saw, or perhaps they’re more motivated to leave their current employer than they are to join you. Too much focus on wanting a better salary or benefits might be an indicator they are just looking for a stepping stone – and are less interested in your company in specific. Of course, not every hiring manager has the benefit of hiring for a well-rated and recognized brand, which can make this question even more important. Perhaps your environment allows them to work close to home – and with a family this is more important than building the biggest and the best software platforms. This also can give the candidate an opportunity to ask about specific issues they might have seen in their research – which is important since it allows an open dialogue on what the company might be doing to resolve these issues and might actually convince a candidate to take an offer, rather than quietly rejected for something else.
And job-seekers, your talent is in high-demand – remember that interviewing is a two-way street. Use your interview as a chance to get to know the company and decide if it is an environment that you would like to work in. Don’t be afraid to answer this question then ask the interview “Why do you most enjoy about working here?”
What is your main interest in considering a new role/leaving your current employer?
Although it is similar to the question above, it can result in similar or completely different answers. The question above is asking about why the candidate specifically wants to work with your brand, while this question is trying to pinpoint their reason for leaving their current employer. If they have a long commute, for example, cutting down on their drive time might be a very valid – though a generic response for both the “why do you want to work with us?” and “why are you looking to leave your current role?”. The reason to ask both of these questions during a technical interview is to get a feel for why the candidate is looking to jump ship. If they don’t have a good answer, there might be a counteroffer risk. Also, there’s a common relationship sentiment that says “how you get them is how you lose them”. The same applies to hiring – if you hire someone away because they are unhappy with their pay, chances are they’ll leave you for another pay bump down the line.
And job-seekers, remember not to say anything disparaging about your current employer – a quick online search will tell them if the work environment you’re coming from is difficult to be in. Leaving a job for another often involves several facets – from pay to commute to benefits to work/life balance to poor leadership to wanting to learn new skills. Frame the motivation in a way that doesn’t seem like a significant flight risk. If your company hasn’t given you a raise since you’ve started, something like “Although I really enjoy my current role and employer, unfortunately they haven’t had budgets for raises in the IT department since I’ve started, which has resulted in a few people from my department leaving for other opportunities.” This would show a hiring manager that you’d be a stable employee, as long as they do very basic things – like giving yearly raises to at least keep up with market/inflation.
Is there anything about you that you’d like to share with us? OR Is there anything in your background that might come up on a background check that might be good for us to be aware of now?
This question is a good way to open the door for a candidate to share anything they feel might be relevant. This is also a good way to allow a candidate to share something from their past that might come up in a background investigation – being honest and upfront with minor issues from years ago is a good indication of a genuine candidate who is earnestly trying to improve their life.
And job-seekers – if you know something will come up on your background check, make sure to disclose it upfront. Most employers are willing to work with you, but honesty is key.
What are your favorite technical interview questions to ask candidates during technical interviews and why?
If you enjoyed this, here are more tips for IT hiring managers...
Strategies for IT Leaders to Improve the Hiring Process
6 Ways Tech Managers Can Boost Employee Happiness (and Productivity)
Elizabeth Becker is the Client Partner of IT Staffing Firm PROTECH, www.protechitjobs.com. Her expertise has been featured in a variety of publications including The Ladders, Recruiter.com, Monster, LinkedIn, Tech.co and more. You can reach her with comments/feedback at [email protected].