loading...

10 questions you should ask during technical interviews

yashints profile image Yaser Adel Mehraban Originally published at yashints.dev ・6 min read

I've been sitting many interview sessions recently as part of our recruitment process and let me tell you, it's one of the hardest tasks I've ever had. In this post I want to share my findings and approach with you, so we can all be more intelligent, inclusive and successful in your hiring process, and I am super keen to hear from you in comments 👇🏼.

Context

The most important part of every interview is how to qualify a candidate without being too specific about a technology or framework. It's about measuring their abilities and potentials rather than asking questions where any person can find somewhere and memorise the answer.

We, at Readify, have a very specific and complex (if I may say so, which I just did 😁) process for hiring great fits, not just technical, but also culturally.

To be able to do this, we need to be very careful with what is being asked during our technical interviews which is reached after a coding challenge and live coding session.

What do we ask

I don't want to review our hiring process, more focus on what is being asked and how do we phrase them. There are plenty of sites which show you what to ask and unfortunately most of them have some predictable questions like:

Where do you see yourself in 5 years?

To be honest I don't even know what happens for me in 5 months, let alone 5 years. So the question is what should we ask to be able to find out as much as we can about a candidate without falling into trap of asking fruitless questions.

To determine whether someone is a good fit for the job, you want to draw them out, ask a mix of technical and situational questions, and listen closely to not only what they have to say but how they say it. The so called technical questions shouldn't be around what, but about how. You want to evaluate how they perform in certain situations like solving a tough problem.

So let's begin.

1. What challenging problem have you had in the last couple of months?

This question is like an ice breaker. It will put them at ease because they will be able to talk about something they're comfortable with. This will also give you an opportunity to see how they go about solving a problem. You can go in more details in areas where you see value in, such as why did you choose this specific way to solve it, or why didn't you try blah.

You can get an overview of their team work too, did they collaborate on solving his problem, or did they help someone or get help from them.

2. What resources do you use to learn or sharpen your skills?

Many developers turn to websites such as StackOverflow, Medium, or Dev when they need help with something. Serious professionals will have their own selection of websites, online communities, social media feeds and other resources specific to their interests. The answer to this question will give you an indication of how engaged the candidate is with the broader IT community.

Apart from those, Meetups, conferences, YouTube Channels, taking online courses, joining hackathons, plugging away at personal IT projects and many more can be discussed to see how the candidate keep themselves up to date, or find answer to a problem.

3. How do you explain X in simple terms?

This is very good to see how they can simplify a technical term or subject. It's very good to understand how deep they know something or how broad their knowledge is.

Another aspect about this is to be able to communicate to stakeholders of a project. If you can explain a subject to your Product Owner, BA, Tester and so on, your whole team would be more successful delivering your project.

4. What qualities do you think is required for X?

This questions will help you unravel some of the candidate's expectations and also how they see the role. Some people may focus on certifications and technical abilities, while others may talk more about problem solving, attention to detail, communication and other general job skills. Look for candidates who give a nice balance of both.

5. What are X words your colleagues describe you with?

This might sound cliché, but it will help you find out about some of their aspects not found in resume or social media profiles. It also gives insight into how the individual perceives themselves and the role they’re applying for. For example, if their answer focuses on their creative side but the position is very analytical in nature, the job may not be a good fit.

6. Tell us about a challenging situation you had which resulted in failure, such as missing a deadline or a promotion being rejected?

We all deals with professional setbacks at some point in our career. What you want to know is how people handled — and what they learned from — those situations. The best employees are resilient, using setbacks as a springboard toward positive changes. So listen to not only the problem they mention, but also what they did after the disappointment.

7. What is your most and least favourite framework/product?

This question helps you evaluate enthusiasm and knowledge. Do candidates become animated when discussing the advantages and disadvantages of certain tools/framework/library? Do they admire solid engineering, sleek design, intuitive user experience or another aspect of good technology?

What is their focus area in a tool, what they look for and what value they see in their favourite choice. These will give you great insight about them.

8. What are the pros and cons of working in an agile environment?

This question can help you understand their perception of agile, how they operate in a fast pace environment which means lots of quick meetings and a steady stream of feedback from fellow team members. Most developers don't like too many meetings especially if they're doing SCRUM until they realise the benefit of each of those and how they help reduce the time waste.

A candidate’s answer to this question can tell you not only their level of understanding of this popular environment, but also their attitudes toward collaboration and communication.

9. What was your last presentation?

First of all, let me clear the fact that by presentation I don't mean public speaking like conferences and meetups. However, having public speaking background is a bonus since it proves a couple of points.

Today’s tech workers can’t be lone wolves. They have to discuss changes with colleagues, coordinate with other departments, advocate for platforms they prefer and much more. While not everyone has to love public speaking, your new hire should be able to conduct research, put together a solid presentation and persuade stakeholders why X is better than Y.

10. How do you manage your work life balance?

There many scenarios where one has to work harder than usual. A pressing deadline, on-call duties (fortunately we don't have this), or simply someone who is addicted to spend all their time working are examples where we need to be careful about.

While you want dedicated team members, you should also seek employees who know how to relax and take care of themselves. Burnout is a very real problem in our industry, and top performers have good strategies in place to prevent it. As a follow up to their answer, you could talk about how your company supports a healthy work life balance (we do this via multiple ways) — something that can be very tempting for candidates with multiple offers.

Summary

There are many questions you can ask during an interview, but those who target intelligence, creativity, and learning abilities are the most helpful ones. When interviewing a candidate, always look for their strength and quick learning ability. Don't ask technical questions which their answer wouldn't help you uncover the candidate's potential. People can spend a couple of days and find out those questions and their answers from many sources. But the questions mentioned here and those similar in nature would help you find a good fit for your team.

And a final advice from truly yours, don't be a jerk when interviewing a candidate. Don't be biased on gender, background, appearance, and other factors which prevent you from finding good people.

Posted on by:

yashints profile

Yaser Adel Mehraban

@yashints

An almond croissant addict cleverly disguised as a web developer

Discussion

pic
Editor guide
 

This is just my personal opinion. Feel free to disagree (I would actually like to hear your thoughts).

  1. This might be difficult for someone who hasn't had any challenging problem recently.
    So, an honest answer like "I actually haven't had anything challenging recently" might not do them justice.
    Just because the project/environment/company they're working at/on isn't challenging doesn't mean they couldn't handle one.
    It's kind of like asking a body builder "have you ever lifted a horse?" and they say "well, no, because there are no horses where I live".
    Just because he hasn't, doesn't mean he couldn't, if necessary.

  2. Good one. I would however hint at what you mean. It might not be very clear exactly what you're thinking of.

  3. Very good. If you can't explain something in simple terms, it usually means you don't really understand it as well as you think.

  4. Good, but depending on X, it might be difficult to think of answers on the spot.
    Perhaps a better approach would some thing like "Do you think 'this quality' is required for X? Why?"

  5. Honestly, I think a lot of people would not know how to answer this question. Or, at best, just give a random/standard answer which doesn't tell you much. :D

  6. I think most people will avoid talking about failures, because they know this reflects badly on them.
    Honestly, I think some people will just say they can't remember such a situation or just tell a small lie.
    I agree with you wanting to find out how they deal with failure, but I don't think you'll find out this way.
    What you're basically asking them is to open up (slightly) to a stranger.

  7. Good one.

  8. Good one, but I would rephrase it simply as "What is your opinion about agile? Or working in a agile environment"
    After that you can extend the discussion, if necessary.
    Asking them about pros and cons would require too much "processing power" IMO :D

  9. I'm not sure if this is really relevant.
    You can have good developers who have never held a presentation in their life.

  10. It's good that you want to know about this and let them know that your company supports this, but be advised: some people might consider this a personal question.
    I'm not saying don't ask it, just to be mindful. :)

 

Thanks for taking time and providing your thoughts.

Here are mine:

  1. The answer to the question might be no I haven't had any recently. But at this point I usually challenge their answer slightly because they might have faced something which has provoked their reactions but haven't realised that since they have faced similar situations before, instinctively they have resolved the issue.

And if at the end they really said they haven't, then imaginary situations can be used.

  1. All of the questions can be delve more into if the candidate hasn't fully understood them.

  2. Really good point and we usually have different forms for rephrasing these.

  3. I'd argue about generalisation in this area. There are many people who know their limits and potentials really well. But even if they can't describe themselves, it's a really good starting point for provoking some thinking to see what is their evaluation about themselves. In another aspect, it's up to the interviewer's people reading skills to get the value out of this. But I wouldn't say the question is worthless.

  4. Failure's definition can vary for different people. It's up to the interviewer to create a safe environment and let them know they embrace failure and value people who learn from them. Everyone has failed at something even in their day to day job, the fact that how they react and recover from it is the core for this question. So let's agree to disagree in this one.

  5. This is really important for many companies including consultancies. As I mentioned before I don't just mean public speaking. Presentation in its simplest form can mean pitching your idea to your team. We're looking for skills in someone to simplify an idea and explain it to people concisely. Again we can agree to disagree.

  6. We're not after their personal life's details. Simply to understand whether they are able to unwind and have the ability to maintain balance. We don't want someone who is super active for a couple of months and then goes under the weather for the next couple.

Thanks for your comments again, they'r really valuable for readers 🙏🏼.

 

Great article Yaser, I'm reading this 4 days prior to my first second interview. It helped me better see what to prepare and also what I might not have thought about.
I've only started programming a few months ago and it is my first time getting a job as a developer. Which getting any job can be intimidating by itself, but this is a huge career change for me. Thanks a lot again!

 

Glad it was helpful, and good luck. I am sure you’ll nail it

 

Thanks Yaser, I really appreciate the vote of confidence. If you'd be open to it, i'd like to pick your brains a bit of other questions I might have. Is there somewhere I could send you the questions? I promise not to over do it and that they will be well thoughtout questions not something like "What should i do?"

Thanks

Be happy to, send them over to me@yashints.dev

Thanks! I' doing some research atm, so maybe tomorrow or sunday i'll use this privilige!

have a great weekend!

 

Most of the people whom i consider really good would fail most questions due to imposter syndrome, unpopular opinions about scrum, and simply beeing not good at marketing themselfes.

Nearly all of the posers who had trouble with fizz/bazz i met in my career will ace these questions, except maybe questions 1 or 3. Hopefully, they'd be weeded out by the challenges before, but i wouldn't count on that.

 

I have to agree with you. I hire a lot. And initially I tried all these really hard interview type questions or questions that I expected that somehow they would have a good answer to. I also knew some very good developers that had terrible looking resumes (they just didn't know how to write a good one), and weren't particularly good at interviews. I also noticed that I scared away good candidates.

The reality is that being able to answer questions really isn't a measure of how they'll do in their job.

So I went back to basics. A favorite question of mine in interviews is "Write a program that will print the numbers from 1 to 10". Its trivially easy, but it filters out people who I definitely don't want to hire. The other thing I put a lot of weight on is references. Since we live in a place where lots of people know each other I see who gets vouched for and who doesn't, and who likes the work the person has done. I understand that nationwide that may be harder to do though.

Then I just talk to them and make sure we'll get along. And see that they've learned relatively new things recently.

I've fired very few people in the last 15 years. So I guess my technique works. The main reason I've fired people is that I feel they aren't growing as they should, or that they have caused problems. But as I said its very rare. And our attrition is also very very low.

I think a lot of companies have gotten out of hand with their technical interviews and they are making the process needlessly expensive for themselves. Recently I witnessed how they were interviewing someone I knew for traditional engineering positions. I was shocked to find out how non-technical the interviews were. And yet the engineering world isn't collapsing is it.

 

In my opinion, the single most important attribute of any candidate is potential. With potential everything can be learned. All the rest are easy to manipulate but asking people about former challenges and explaining a topic are actually very good questions. Both help to create a context that the candidate can expand and not just answer questions. The problem with this type of evaluation is that it requires the interviewer to be relevant to the domain, in other words to have a technical background when the job is about software. Unfortunately, due to lack of knowledge and insight in technology, many organizations want to hire someone based on a checklist on prior experience, usually on keywords that are not understood.

I also agree with the ability to explain a topic but it is very difficult to explain something to an audience that has no clue about it. It really puts the candidate off.

 

Thanks, Yaser! This article clarifies me some things about the technical interview process and when I was reading I notice that I made mistakes taking a technical interview.

Sometimes I feel I responded to some questions like a robot, giving the answer that the recruiter waits, because they ask me questions that, in my opinion, don't give any information about me as a programmer or how I work with teams.

The weirdest question I received was: which teacher did you have in X course? I responded and the recruiter told me: 'that teacher is not good and maybe you don't have enough skills' (after this the interview finished).

In my last interview, I was asked about what was the last thing I learned I respond like 'I am learning X and improving Y'. Then I was asked to give an example of what I learned (this question is the same as 'How do you explain X in simple terms?'). At this moment I felt that I was applying for a real tech job.

 

Yes, unfortunately we all fall into that trap from time to time