DEV Community

Why I've started asking companies about their technical interviews before proceeding with them

Charlotte on November 19, 2019

This is a quick a follow up to an article I wrote a few months ago Could your recruitment process be discouraging female developers? and what I'm d...
Collapse
 
valxntine profile image
valentine

Awesome post, Charlotte!

I wanted to comment as I truly believe the interview process for developer roles (particularly in London, where I operate) is getting grossly out of hand.

From multi-stage interviews to take home "weekend" tech tests, there's a lot to be reviewed.

We often push very hard for our partners to go for a 1 stage interview, technical test done during that interview, never a whiteboard coding exercise (we do allow whiteboard exercises for architecture questions when dealing with Senior/Lead Engineers).

We always ensure the test is relevant to the day to day work that will be done by the person who gets the job, not just some ridiculous algorithmic exercise if you're hiring a front end developer! And we often give the choice to the person interviewing if they want to pair or be left alone to crack on.

The industry needs to change, and it will only do that with people like yourself voicing their opinion.

Collapse
 
char_bone profile image
Charlotte

Thanks so much Val! Yes I've been looking in London and honestly I'm finding the process tiring, even as someone with plenty of experience and great references so I cannot imagine how it must be for less experienced developers now. I think that some people just see it as moaning, but the fact that it's really hurting diversity and causing people to even quit the industry means that something really needs to be done.

I feel like a good interview should test your skills but leaving you feeling positive, whatever the outcome. It's really great to hear that there are people out there like you trying to change the process. The fact that you're giving the person the choice to pair or work alone too is brilliant, pairing can be really intimidating in an interview situation!

Collapse
 
jamesthomson profile image
James Thomson

I haven't been in hiring for awhile now (I contract freelance), but I never really focused on interview tests. Before I'd get a candidate to come in I asked them to send me to a Github repo or some code they were particularly proud of writing. I could tell a lot from reviewing that code than I could by watching them fumble through ridiculous whiteboard tests.

I felt it was much more important to find out who the person was and if they would fit into the team. Any good FE developer can learn your process or code the way your team codes. Perhaps this process only worked for the small 30 or so person businesses I was working for, but I never had a bad hire so I think that must count for something.

Thread Thread
 
attkinsonjakob profile image
Jakob Attkinson

I love this, and, as a potential candidate I'd apply to this company only because of the interview style. Yeah, I do random stuff sometimes (that's how I got my first job)

Collapse
 
ravavyr profile image
Ravavyr

I see a lot of these posts from the "interviewee" point of view.
I don't disagree with how everyone feels about these processes. The algorithm questions are hated universally and we don't do those at all. Anyone can google how to do a bubble sort, anyone asking you to write that on a white board doesn't know what they're interviewing you for.

Here's the view from the other side [it's a long one bear with me]:

**
TL;DR: The hiring process for developers is freaking hard as a ton of people apply and the skill ranges vary extremely and not all experience is useful experience depending on the job.
**

I participated in the hiring process for my company for a while, and it's been a year or two so things have changed a bit, but here's one version of the process we went through back then.

We tried recruiting companies, most of them suck and just shove every applicant your way whether they're even remotely a good fit or not, so we opted to do it ourselves.

  • At max we had some 400-ish resumes come in per day [that's roughly 12000 a month though we ran ads in batches, so probably half or so is realistic].
  • We're a small business, so one admin had to review them all to get rid of all the ones that at a glance were not going to fit the position. For this example we'll just talk about Developer positions.
  • Did you know construction workers apply for "developer" positions without reading the descriptions?
  • Did you know that someone with zero coding experience, 5 years of waitressing and an associates in communication will sometimes apply for a developer position?

Anyway, once our admin filtered those out and got to the ones with actual dev info we had a secondary set of filters. eg. Look for those with these languages [languages we used at the time PHP/HTML/CSS/JS] and experience with certain platforms and what not, but still keep some if they have many years of experience, and could potentially be lead devs on a team or a project lead [teaching someone to filter for those is damn hard] or any PM experience, etc. These things make good developers too.

THEN, we get to the first calls and have to deal with questions like "Do you adhere to these specific standards? no, i'm not interested" and "I have ten years experience doing web dev, but i only know dreamweaver and html/css" => note: that makes you practically useless today as a frontend dev for any company, let alone a small one.

How about the "You guys don't pay for conferences, i'm not interested" Sorry, a conference on mobile tech we never use just because you're interested in it is not in our budget when we don't even know if you can code yet.
The best ones are when we ask what's their skill level is with language X and the response is "I'm a 10, I know it inside out" and we look at their portfolio and it's rubbish. People often don't know what they do not know.

THEN we get past that first round and have maybe 20 candidates who seem like a decent fit [note, this is probably per week, so like 2800ish resumes, this is a little exagerated, but i'm on a roll]

We get them on that 2nd call with a Project Manager.
The PM will ask more specific questions related to technical skills and experience and then decide if we would like them to come into the office.

If the first call was immediately impressive and their portfolio was immediately impressive we may request they come in for an in-person interview right away. Gotta act fast, people move on quick, especially if they are good.

We may also request they do a 2-4 hour developer test on their own time. If you're interested in working somewhere, this is hardly a massive request, we think and everyone we've hired never thought it was too much to ask for either.

So say 2nd call and in person go well, then we're competing with companies like amazon and google when offering a job to the interviewee who is also looking at other companies and may be receiving offers from others at the same time especially if they're good.

For frontend this can lead to a hire directly, for backend devs we often have a second harder test to see their skills in action. We generally pay for these additional tests because it's only fair to do so.

We pursue the ones we think would work out, but even then we are still gambling on finding a good developer, because we will not know if they can actually do the job until they start working.

Let that sink in when you're asking why interviews can be such a long process.

Also, imagine companies like google and amazon who probably get 100,000+ applications every day.

Collapse
 
char_bone profile image
Charlotte

Also I just had a quick look at your company website and noticed that you don't have any women on the development side. I cannot believe that with that many resumes, not one woman would be a fit for the job.

It's important to remember that candidates have a right to ask questions about career development, conferences, etc to see if it's even worth working for your company. If you answer in the way you have in this response I'm not surprised that some walk away.

Collapse
 
ravavyr profile image
Ravavyr

Hey Charlotte, [as with the others, sorry for the late response, didn't realize i get notifications on here]

You're right, at this time we have no female devs on the team. We have in the past extended invitations to join us and we've had some great female devs apply, but it just didn't work out for one reason or another.

Anyone who applies has the same chances at the job.
I think a lot of applicants do assume all tech companies are like apple/google/amazon/facebook and expect to get the same perks. We just can't afford them all, is all. And it's fair that some people would walk away from that.

The one thing I know we offer a ton more of is experience on the job. We dive into a large number of platforms and codebases on a daily basis so all our devs learn a lot continuously. With larger companies you tend to get shoe-horned into a position and you end up doing the same type of work on the same platform day to day with not as much variety so you learn less.
At the same time it's also higher stress and faster paced than most dev jobs and that is sometimes an attractant or a repellent depending on the person.

I would recommend newbies work for small agencies because they will learn a lot more in a lot less time than if they go straight into a corporate job. Corporate will probably pay more though. Again, it depends on the person and what they want.

There are a lot of variables in play, so yea it extends the interview process because of that. We can't afford to just hire 50 people and fire half of them in six months like a lot of large companies do. We try to find the right person in one go or in batches, which may or may not be the best approach either. I don't know, i'm not in hiring anymore. I get to focus on the work now :)

Collapse
 
zooloo2014 profile image
Brent Engelbrecht • Edited

From your response, I can hear that you are frustrated with the candidates you see.

However, there should be a better way for you to phrase something like this (for example):
"and we look at their portfolio and it's rubbish"

Please don't take this as criticism.
If you are open to feedback: the way you respond to something is just as important as the content of your response. (If not, just ignore this)

Hopefully this is not generally representative of your company.

Collapse
 
ravavyr profile image
Ravavyr

Let me rephrase [sorry for the late response], I have my opinion when i see people's resumes and code. I might sugarcoat it and go "That looks unpolished" or as i do in my head "it's rubbish, it's crap, it sucks" and so on.

I NEVER say that to an applicant. I know words can hurt. I also know how fickle everyone is these days and how insecure and how nerve-wracking interviews can be. Saying that to someone could really break them and make them feel like crap. I don't do that.

I have however said to applicants "Your code just isn't at the skill level we require at this time". And I've had further discussions with some who then said "Well, can you tell me what I need to improve on". And i do wish them well and better luck at their next interview, but the general thing is that they need to practice more before they apply to the next one.

Some portfolios ARE utter rubbish though. eg. Missing any useful urls to ANY work at all. Any dev should at least have something online you can look at. Or how about not having an email or phone number, so we have no way to contact them? There are worse examples, and these are completely unrelated to their actual dev skills. Some people just don't take the time to make a good resume, and if they're not doing that, i don't think they'll take the time to do good work either. Perhaps that's just a horrible assumption on my part.

Collapse
 
char_bone profile image
Charlotte • Edited

Thank you for your response. I have actually been involved from an interviewer side too, so I do know that there are issues on that side of things and especially for smaller companies, hiring the wrong person can be very expensive.

I'm not at all saying to cut out tests, but that there should be some flexibility with the types of tests.

It's great that you're paying for people to do the longer process, I think things like this make a big difference in the interview experience. If you imagine a developer might have to go through a good amount of tests, for multiple companies then that's a huge time investment. At the end of the day, people looking for a job will be making you lots of money if they get the job.

Large corporations also have many people involved in the hiring process and I do not believe that they cannot do more to make it more inclusive just due to the amount of applications.

Collapse
 
alohci profile image
Nicholas Stimpson

"... everyone we've hired never thought it was too much to ask for either." Well, that's a self selecting sample set. What about those who walked away because they were good enough to choose who they work for, and thought you were just wasting their time?

"when we ask what's their skill level is with language X ... People often don't know what they do not know." So don't ask that question then. It's a stupid question. It's the ones with the most knowledge who are most aware of what they don't know. Instead, ask about what they've done using that language. Within two to three well chosen follow-up questions you should be able to tell whether they really understood what they were doing and the level they're at.

Collapse
 
ravavyr profile image
Ravavyr

Sorry, i am apparently really bad at checking notifications on dev.

To address the two items you noted.

  1. Yes, it's a self-selecting sample set. If they felt we were wasting their time, then they don't understand our needs, so it's ok that they walked away. Those that decided to do the tests, well they seem more in line with how we think and will probably be a better fit. If you're applying for a job, it's up to you how much you are willing to do to show you can do the work. If you walk away, it tells me you weren't that interested in the first place, i don't have time to waste pursuing you further. And that's ok too.

  2. Stop and think. I ask that question because I want to know their answer. Our industry is full of hubris [i can't say i'm not overly cocky about things some times and it's damn hard to not be when you have more experience than someone else, but it's good to learn to restrain that]
    So back to what i said in the original comment. If someone claims to be a 10, is nearly immediately dismiss them for A. Lying [literally no one is a 10], and B. being too damn arrogant. C. I then look at the work samples they provided to confirm A and B before deciding for sure.
    If they are experienced, you're right, they'll know how to answer that question far better.

Collapse
 
saurabhdaware profile image
Saurabh Daware 🌻

Hi, Great post! I've noticed this as well.

To add up to this, I've seen companies not telling candidates exactly when the results for the interview will be out. This can be very disturbing since every day you'll just be thinking about the results.

Also, I've been in the interview where the interviewer referred to a particular problem as "Easy", 10 minutes in and this made me extremely anxious thinking that I can't even solve the easy problem.

Why don't we give people the choice in technical test?

I loved this point and great post 🦄

Collapse
 
char_bone profile image
Charlotte

Thank you so much :)

Oh yes, very good points! That second point is very bad interviewer behaviour, very belittling!

Collapse
 
axelledrouge profile image
AxelleDRouge • Edited

Indeed I have the same critics. I had to search intensively for a job last year, and I remember getting really stressed and depressed by the end of the month.
Nearly every interviews were algorithms supposedly "easy" to do in a few minutes... I panicked and got stressed and unable to do anything.
But I also experienced a great process once, mostly involving pair programming with three differents developers with framework and languages of my choice. They were really helpful and ready to let the candidates feel more relaxed. Even if eventually I didn't get the job, I learned a lot and I felt great after this time. I keep a great feeling from this afternoon.

Thread Thread
 
char_bone profile image
Charlotte

Yes, that's how I feel great interview processes should be. Even if you weren't a fit for the role, you're left with a positive feeling.

Thread Thread
 
axelledrouge profile image
AxelleDRouge

And it is a great way to insure that the candidates, even if they fail, will feel great about the company and want to learn and to their best

Collapse
 
s_aitchison profile image
Suzanne Aitchison

Thanks for this article. Your point about time investment is totally key. I've recently applied for a few roles, but ultimately didn't have the time to take more than two interview/phone call offers forward - people don't have infinite annual leave to take from work to attend interviews or take long phone calls during the work day!

I really valued the places which offered to work around my schedule, including meeting before or after normal work hours. Little considerations like that extend opportunity to a broader range of applicants.

Collapse
 
char_bone profile image
Charlotte

Hi Suzanne, you're so right, being able to attend so many interviews whilst already in a role is often really difficult. I believe that really thinking about candidates and being flexible really shows a lot about a company.

Good luck with finding a new role :)

Collapse
 
attkinsonjakob profile image
Jakob Attkinson

May I ask something I don't really follow or understand?
Let's say I get so far to have my technical skill tested. Whatever the test itself is, what should I do to have the necessary environment set up?
What I mean by this is that.... For the past 5 years (so at the only job I have), I joined as a newbie, was thrown in the company's environment and learned languages and frameworks as they were already setted up by seniors. So, somehow while I feel I know my way in the current setup to take on any kind of challenge (even if I don't succeed), I I wouldn't know where to start outside this.

P. S. No, I haven't worked on other projects or home stuff. As I was the newest in the team, I had a lot to catch up on... So I kinda invested all my time in the company (10+ hours a day mostly).
I'm considering looking for another opportunity now, but I'm afraid to go to interviews because of this...

Collapse
 
char_bone profile image
Charlotte

I think that this is where it's important to have the initial phone conversations with companies and to be honest about your experience. Do not be afraid to go to interviews though, as long as you're honest then you shouldn't be put in a situation where you get a job that you can't do. It's also important to stress that you are looking to move into a role that will give you the skills to do these things on your own though, this is what will enable you to move to a senior level in the future.

Your experienced shouldn't be dismissed though. It sounds as though you work on a large application? that's a different type of experience to someone who has worked on many smaller ones but not less important. If you think of large corporations then the developers there are less likely to have to setup a whole new project on their own.

Collapse
 
stevematdavies profile image
Stephen Matthew Davies • Edited

Excellent post, entirely relevant to todays competitive market. Firms need to take note of this.

I have had varied and similar experiences here in Finland in the past with jumping through hoops with staged interview processes taking up to 10 weeks in some cases (as if a jobseeker has such a time to wait)

Thankfully some firms see the advantage in an initial interview with a technical aspect and discussion in one, followed by a trial period between 4 and 6 months, this to me is far better, placing the onus on one to actually proove the skills they claim, rather than just show they are good at interviews!

Thank you!

Collapse
 
char_bone profile image
Charlotte

Hi Stephen,

Thank you so much!

Yes, exactly! Although I could see a trial period that long could be abused by companies and would lead to less security for staff. I think that most companies here do have a couple of months probation period though so I guess that is the same thing, you still have to jump through all the hoops beforehand though which is silly!

Collapse
 
mvrs profile image
Marlon Johnson

You know those multiple rounds of interviews?

Only one of them has the jurisdiction to decide whether you get the job or not. Everyone else can say no but if you impress that one guy who holds the power then the job is yours (I was told this by a friend who conducts these).

Collapse
 
char_bone profile image
Charlotte

I've heard the opposite for big corporations too. That you can have many people say yes but one no will mean a rejection.

Collapse
 
mvrs profile image
Marlon Johnson

This was speaking of a big corporation. I can’t say the name 😅. Yes multiple people can say yes but that was major no is a no. Sad times

Collapse
 
evieskinner18 profile image
Evie

Thanks so much for writing this Charlotte! One thing that really irks me is when a company is prepared to put candidates through a rigorous multi-stage interview day when the benefits they're offering are below average. Bit cheeky really!

Collapse
 
char_bone profile image
Charlotte

Thank you Evie! That's so true! I've seen so many companies like that.

Collapse
 
scroung3d profile image
Scroung3D

Hey Charlotte. I saw your comment 'I cannot believe that with that many resumes, not one woman would be a fit for the job.' I have an story about that.

I was working for a company with a team of software developers all of them men. The CEO was worry about that situation in an all-hands with all the company (300~ employees). He said that we were looking actively to integrate women to the engineering department. He invited all the assistants to share our job ads for devs with any women who could be interested. Besides that we found some interesting facts 75% of the women applicants receive the online technical test and they don't even tried to do it. The test was 10 exercises about algorithms and programming stuff the platform we use suggested to complete the test in 2 hours. However we give them 2 days (for men/women equally). From the other 25% who presented the online test. Only 10% passed the test and the majority of them for some reason dropped the process. After a couple of months and 2 call interviews for each candidate. We only had 2 women visiting our office. We realized one of them was lying about their experience and the other one was not as good as other applicants(men). BTW we were looking for real senior developers, no mid senior, no juniors.

I do not know what is wrong with the industry I wish it could change soon. I truly believe that we tried.

Greeting from Mexico.

Collapse
 
char_bone profile image
Charlotte

Hi! I think that this is really interesting because you'd get some people who'd look at this and take it as proof that women aren't as skilled when the reality is that the technical test was obviously putting of the applicants. As this was for a senior developer role, I would bet that many of them were annoyed by the fact that they're being made to do a test before anything else, basically having all of their prior experience dismissed. Another point is that was the technical test relevant? I've found that often those online technical tests are just annoying and a waste of everyone's time, that's probably why quite a few tried it and then gave up too!

We also have to be really careful with interviews too because people naturally judge the competence on others based on their own skills. So saying the woman was not as good as the other applicants who were men is not necessarily true. They may not have been as good fit for the role for sure but also there may have been biases there.

I hope that it changes too. I can't think of any other industry that has this sort of process!

Collapse
 
torianne02 profile image
Tori Crawford

An interview should be to try and get the best out of someone, not to put them on the spot and catch them out.

This really speaks to me as someone who often gets high anxiety during interviews and my mind just crashes. I feel like Spongebob in the episode where he can't even remember his own name.

Mini Spongebobs in his head deleting all memories and knowledge

I feel much more comfortable when I'm given a take home that eventually is discussed in detail during the on-site. I can talk about my code no problem, but being put on the spot in a high stress situation makes me crumble for some reason.

Collapse
 
char_bone profile image
Charlotte

Oh this is so me too! My mind sometimes just goes blank in an interview situation when I'm put on the spot. It doesn't help that the anxiety beforehand means you quite often don't get a good night's sleep too!

Collapse
 
char_bone profile image
Charlotte

Hi Sam! wow that is crazy! As someone who doesn't even play games I'd really struggle with those.

I had one today where I had to create an app, work on it for a few hours at home and then code with 2 interviewers to build upon it even more. I actually really enjoyed that part and have accepted the job :)

Collapse
 
arkocal profile image
Ali Rasim Koçal

I strongly disagree with most of this. A single unfit colleague can significantly lower the efficiency of a whole team and bring down the morale. For everyone who is in, and who is going to join in the future, it is very important to pick the right candidate, so it is fair to take trade-off that make the process more uncomfortable as long as they make it better. As in this article.

One process does not fit all

This is absolutely true, but it important to figure out how a candidate handles uncomfortable situations. In real life you do not always get to pick the circumstances, neither should you be able to in the interview. However, which type of tests fits a candidate is relatively unimportant, therefore it is important to go through couple of different tests.

Test for things that are actually needed in the role

This is the point I disagree the most with. Ecosystems change fast, projects change fast, basics stay. It is good to know your tools, but I would prefer a sharp and fast learning candidate with a firm grasp of the fundamentals. If a candidate cannot provide a good approach to a reasonably chosen algorithmic problem, s/he is a bad developer, period. Actually getting to a solution involves a bit of luck, but the interviewer can see someone is good at problem solving in general even if the candidate does not manage to solve the problem at hand.

Important is to leave out stuff that is whether directly relevant to the task, nor useful in general. Citing the steps of an algorithm by name is such a skill.

Expecting multiple rounds of interviews from a candidate

This just makes sense. A team works when (ideally) every pair in the team work well together. Everyone that a candidate is expected to work together with closely is relevant and, as long as the total number stays manageable, should interview the candidate. It sucks to be eliminated at the last round, but assuming the process eliminates at least half of the candidates at any given stage, the average candidate is going to have less than two interviews. As other people in the comments suggested, it is good to be flexible with timing or pay for later rounds.

Plus, more rounds means actual measured skill will have more impact on the decision process than the CV, more people will be involved, and the candidate will have more chances to shine and will be less affected by random variations in interviews.

Ignoring previous experience

It is very hard to assess previous experience, especially in a large company, where it is easy to get by doing so little. Can the candidate show a product and a clear way to see which contributions were his? (open source projects, solo projects etc.), perfect, this is better than any other interview. Otherwise, it is better to ignore previous experience, as it can be "faked" much more easily than faking skill in an interview. It is not about picking the best resume, it is about picking the best developer.

Relying on personality tests

I completely agree on this, and also with most of the "what you can do" section.

Collapse
 
lakincoder profile image
Lakin Mohapatra

Nice post !!

Collapse
 
char_bone profile image
Charlotte

Thank you :)