loading...
Cover image for How would you hire developers?

How would you hire developers?

ryansmith profile image Ryan Smith ・1 min read

A common sentiment is that developer hiring processes are not always pleasant or effective, so how would you do it if you were designing it?

  • How would you determine if the candidate is a good culture fit?
  • How would you assess technical ability?
  • How would you remove bias from the process?

Discussion

markdown guide
 

A few of my thoughts:

  • Measure what matters
    • What do you look for in an employee or what traits do your successful employees possess (dev.to/ryansmith/in-your-opinion-w...)? Are the canned questions "where do you see yourself in 5 years" or "why do you want to work here" really getting at those traits?
    • Ask open-ended questions that pertain to the traits you are looking for. Allow the candidate to explain their thoughts and converse with them. Closed-ended questions are frustrating and tend to disqualify someone, they have to know it or they cannot answer effectively or show their best qualities.
    • Is that obscure technical trivia going to make the difference between success and failure at your company? If yes, ask it. If no, don't ask it.
  • Emulate work situations
    • There seems to be a lot of hate towards take-home assignments as giving the company "free work" but I think it can be done effectively if it isn't too daunting of a task. I think answering questions or doing a coding assignment outside of an interview is closer to how developers work on the job.
  • Make parts of it asynchronous
    • Most communication is written in chat or via email. Design a hiring process with some of those elements to gauge how well they communicate. Not everyone is great at 1:1 or panel interviews, but they could be an exceptional candidate. If they do not have a chance to show it, your company may miss out.
 

Since I've been frustrated a lot these days with the job market and its interviewing process, I really wish these were true. It's frustrating how inefficient the selection process is.

 

Yeah, it is tough. Keep at it!

 

If I am ever in a position to hire, I think I'd stick to one line: "show me your work, don't tell me about it". I don't think I'd look at resumes or grades, because I've witnessed many C-average students blossom later in life. If the college grades were over a decade ago, I don't care about that as much as I care about the person's work over the past 2-3 years. I think I'd weigh attitude and ambition more than raw technical skill, because I think it's harder to change someone's behavior than it is to teach them what a certain block of code does.

Still though, I may be interested to see how someone performs on hackerrank tests, but failure on those tests wouldn't necessarily be a deal breaker for me. I'd want to see how the candidate performs under stress, and to see what kinds of questions they ask. (I mean, if I really wanted to stump someone and make someone feel weak, sure, I could do that, but I wouldn't gain anything by wasting time like that)

 

Removing bias is a really interesting one because bias is inherent in everyone, but you cannot remove the source of bias (i.e., the people) from the process. You can help by removing all obvious triggers for bias from candidate documentation (i.e., age, race, photo, gendered pronouns etc), but at some point there's going to be a need for candidate and employer to meet. At that stage, I think you can reduce the risk of bias by having multiple people involved in all interviews, but that assumes sufficient diversity of bias within the employer.

Hiring for self awareness is a good approach; you'll likely get better employees and better recruiters.

 

My approach requires having been a developer to be able to truly access a person on the actual job.

I look for potential. I don't look for a check list of words. So, I let the candidate tell me this story and reveal his potential. If the candidate is not senior it is my responsibility to guide his/hers story telling and learn for other interviews as well. Often the younger ones didn't know what is important and need help which is perfectly fine.

So how do I evaluate potential and culture? It is quite easy. You look for things that show that the candidate has the ability to learn and go the extra mile. For example just doing the minimum required job is a potential red flag. When with a junior an easy way is to check the difference to what was asked and what was done during assignments. For culture i look for productiveness and no bullshit attitude. I also look for genuine interest in the technology. Reading content outside the job, following our attending events and in general not staying in the personal box.

Of coarse not everyone is the same so at the end of the day it depends. At the end of the day it all depends on the ability of the candidate to explain things that in don't know and honesty.

 
 

Certainly, the hiring process is quite challenging and tiring. But for businesses with not-much expertise with developers, hiring developers online from an offshore company can be an effective solution. This way, you can touch base with top-notch developers without much expertise and hassle.