I ask candidates to write code, but I tell my interviewers that the point is not completing the task but rather the conversation around it.
If they can’t write code at all, obviously it’s a hard pass because we’d just be setting them up for failure. But, if they’re maybe not the strongest dev ever but ask good questions and provide good observations I will be fairly likely to hire anyways. Honestly having people with room to grow just gives the rest of the team opportunities to teach… which in turn helps them to grow too.
I also tell my interviewers that we absolutely must start with the assumption that we will hire the candidate, and passing on them requires objective concerns. I really work hard to relate to my team that we are not so special that we should only hire the absolute best of all experts. What we do is not rocket science, and we don’t need rocket scientists. We need collaborative, intelligent team members to help /us/ grow.
All of this is to try to limit the impact of ego on the hiring process. It’s not about the candidate proving that they’re good enough to work with us, it’s about us being good enough to be worth working with. The candidate should meet the bar of helping us to make that statement true.
To be clear, dev roles can be difficult, demanding jobs. I’m not diminishing that, just reigning it back into the realm of reality. The industry treats hiring like people are going to die if we make mistakes, and unless that is actually true maybe it’s worth asking if what we’re doing is actually reflective of the job requirements.
> To be clear, dev roles can be difficult, demanding jobs. I’m not diminishing that, just reigning it back into the realm of reality. The industry treats hiring like people are going to die if we make mistakes, and unless that is actually true maybe it’s worth asking if what we’re doing is actually reflective of the job requirements.
This I agree with.
I'd also say that our worst mistakes have generally not been technical, though I don't want to go into the specifics here.
It matters more that you get the right person with the right skills for more senior hires, because they can have an outsized impact on business and delivery outcomes. I've seen the wrong person running a team lead to 6 months of rework when they left, as an example.
If they can’t write code at all, obviously it’s a hard pass because we’d just be setting them up for failure. But, if they’re maybe not the strongest dev ever but ask good questions and provide good observations I will be fairly likely to hire anyways. Honestly having people with room to grow just gives the rest of the team opportunities to teach… which in turn helps them to grow too.
I also tell my interviewers that we absolutely must start with the assumption that we will hire the candidate, and passing on them requires objective concerns. I really work hard to relate to my team that we are not so special that we should only hire the absolute best of all experts. What we do is not rocket science, and we don’t need rocket scientists. We need collaborative, intelligent team members to help /us/ grow.
All of this is to try to limit the impact of ego on the hiring process. It’s not about the candidate proving that they’re good enough to work with us, it’s about us being good enough to be worth working with. The candidate should meet the bar of helping us to make that statement true.
To be clear, dev roles can be difficult, demanding jobs. I’m not diminishing that, just reigning it back into the realm of reality. The industry treats hiring like people are going to die if we make mistakes, and unless that is actually true maybe it’s worth asking if what we’re doing is actually reflective of the job requirements.