DEV Community

Cover image for 10 Hiring Practices That Will Keep Me From Working for You
Jacob Herrington (he/him)
Jacob Herrington (he/him)

Posted on • Edited on

10 Hiring Practices That Will Keep Me From Working for You

Different variations of this conversation have been in my Twitter feed all day, and I chose to weigh-in a few times on this thread:

After having a handful of discussions with some great people, I decided to write down my thoughts in a more long-form format. I understand that I'm not offering a ton of solutions here, but this is how I feel as a member of this industry. Specifically, one that is fed up with how we hire people.

This is a list of interviewing practices that really hurt the image of a company in my eyes. A lot of them are specifically frustrating because they are opposed to inclusivity and diversity.

I'm not saying that all of these rules will end my relationship with a company permanently, but there needs to be an excellent explanation in support of one of these practices. Otherwise, I'm probably not interested.

As a disclaimer, the person who reviewed this article for me said, "This might be a little polarizing." I told him I was thinking about making this shirt:

A t-shirt that reads,

I'm sure people will disagree with me, but that's what the comments are for 😉 Hopefully, if this spurs a discussion, we'll all walk away a bit more informed.

1. Whiteboard interviews

One of the most sure-fire ways to get me to drop out of your interview process is a coderpad link. I 👏 do 👏 not 👏 whiteboard.

For those unfamiliar with whiteboarding, it is a practice that took off at tech giants in recent history. The name comes from the worst form of whiteboarding, in which an interviewer gives you a dry erase marker and expects you to write a code solution to a brain teaser on a whiteboard.

The most famous example is FizzBuzz, and while FizzBuzz isn't a particularly hard brain teaser, it's still stupid and insulting.

In FizzBuzz, the interviewer gives you this prompt:

Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”.

A correct answer might look something like this:

Array(100).fill().forEach((v, i) => console.log(`${( ++i%3 ? '' : 'Fizz' ) + ( i%5 ? '' : 'Buzz' )}` || i));
Enter fullscreen mode Exit fullscreen mode

But no one writes code like that... I hope. So it's a stupid interview question.

If you're someone who understands best via metaphor: You wouldn't ask a plumber to solve a riddle about the ocean before hiring them to fix your pipes.

Whiteboarding isn't very helpful. If you're anxious about someone's coding ability, offer to do a pair programming interview instead. Work on an applied problem or Open Source for 45 minutes instead of a dumb brain teaser.

2. Contract to hire

This sounds like a really good idea. You're not sure about a potential new hire, so you decide to give them a trial run.

That's cool and all, but how does this impact your candidate?

Well, for starters, they've got to work without benefits. What if they're a single parent and their kid gets sick (in the US)? That's on you for being a bad employer.

The standard solution to that problem sounds like, "Well, we'll just have them work part-time for us; that way, they can work another job still."

WTF? So now you're going to measure someone based on how they perform when juggling two jobs? Do you expect your employees to work two jobs? If not, then this isn't a very accurate method of gauging how successful they will be on your team.

Admittedly, the part-time thing is better than just hiring someone on contract with the promise of maybe hiring them full-time down the road.

The final solution to this is more palatable, giving the candidate a single week-to-month long project with no strict timeline and paying them market rate for the work.

If you're really this anxious about a new hire's ability to ship software, the only thing that I'd agree to is a small paid project. I'm talking about a 10-20 hour maximum investment for my usual freelance fee (and no, that's not $30 an hour).

3. More than 3 interviews

To be frank, I actually think three interviews is too many.

If you're making a judgment on someone in two hours (assuming hour-long interviews), a third hour isn't going to change your knowledge of them radically.

Most interviewing is based on useless pseudoscience anyway. More of that pseudoscience isn't going to decrease your odds of making a poor hiring decision.

In reality, there is an element of luck in hiring because some employees just aren't going to be a great addition to your team. There is no silver bullet to avoid those dangers.

One counter-argument I've heard is the idea of an open invitation interview, that is an invitation to anyone on the hiring team to interview a potential hire. This screams possible discrimination to me. All it takes is one person with a bit of conscious or unconscious prejudice to do something awful.

In short, don't waste my time with useless interviews because it's not going to help you. Best case scenario, you still don't know if I'm going to pan out; worst-case scenario, you're enabling discrimination.

Get to know me, do some pair programming with me, then make a choice.

4. Culture fit interviews

This also sounds like a really good idea, but it's absolutely not a good idea.

A culture fit interview is supposed to help hiring managers decide if you will mesh well with the existing team. Usually, it's a panel of four or five current team members.

I've gone through my fair share of these and been on the interviewing panel more than once. What I've come to realize is that culture fit interviews result in a monoculture.

We already struggle with diversity and inclusion as an industry; there is no reason to add an extra hurdle for those who come from non-traditional backgrounds.

Instead of hiring for culture fit, hire for culture addition. Your team will perform better if it is more diverse, and you can build more diversity with a more inclusive and developed culture. If you create a homogeneous team, you are going to think up uninspired, brittle solutions.

In our first interview, talk to me about your team's culture and ask me how I'll help grow it.

5. Group interviews

This is a toxic tactic. If you do this, I'm out.

When I was newer to this industry, I interviewed at Amazon for an AI-related position.

It was a group interview with about ten candidates. Meaning two interviewers sat down a group of us in a semi-circle and asked the group questions.

In that interview, I was singled out because I was the ONLY candidate without a degree. To make it even more uncomfortable, I was one of three candidates who did not graduate from Cornell or Duke (the other two graduated from UCLA and Berkley).

Even though I performed well in that interview, I thought it was one of the most toxic, exclusionary interviews I've ever been involved with. I can't imagine how I would have felt in that room if I wasn't born privileged and with a completely-unjustified wealth of arrogance.

Do not do group interviews. I won't work for you. Period.

6. Endurance interviews

I'm not sure this is a real term, but I've decided to call this concept: endurance interviewing. The idea is basically a circuit of back-to-back interviews.

I had a single day of interviews that went like this:

2:00 AM: arrive at hotel room after multiple connecting flights
7:00 AM: show up for interviews, mingle with other candidates
8:30 AM - 3:00 PM: interview (group lunch interview)
4:00 PM: fly home

(this was also @Amazon 😤)

Asking someone to interview for almost 8 hours is absolutely insane. Not only does it give a considerable advantage to extroverts, but it's also indicative of an extremely demanding (read: immature) culture.

If you expect me to sit through a day of stressful interrogation to get a job, what are going to expect of me when there is a crunch?

7. HR Screens

There are few things more insulting than being vetted as a good enough candidate to be interviewed.

Instead of tasking someone (who doesn't know tech) with rating people on a scale of "Waste of Oxygen" to "Might Be Smart Enough to Talk With," give your senior tech staff the resources to review candidates. Then build a human-friendly interview process around the people your technical folks find interesting.

Some recruiters do not fit into this bucket. For example, I enjoyed the "Life Story" interview when I thought about working at Shopify, which was essentially a corporate, more-scaled version of getting coffee with the interviewer (who in this case, was non-technical).

However, the second someone asks me if I have 5 or more years of experience with a framework, I'm pretty much tuned out.

8. No senior leadership in the interviews

I have a series of questions I ask in nearly every interview. Some of them are pretty pointed, and a few are prying. It is part of my responsibility as a candidate to feel out the health and culture of the company. That means asking tough questions.

If I ask a question that requires an SVP or CTO in the room and that person isn't present, I get pretty frustrated. An interview needs to be a two-way street, and if the company isn't providing that two-way street, I'm not going to enjoy working there anyway.

Furthermore, if you respect the people you're hiring, you owe it to them to meet them!

Now, this doesn't mean the CEO needs to be in the first interview, but they need to know my name, and preferably, we've met.

9. Reluctance to discuss pay or benefits

If you dodge the question of pay, I have to assume it's not very good.

This is pretty straight-forward: If you aren't willing to pay market rate and provide adequate benefits, I can infer that you don't really care too much about your employees (or your business is terrible, and you shouldn't be hiring).

If you don't meet the minimum requirement of paying your employees a median salary, then I'm afraid to imagine how you treat them in an unpleasant meeting. No thanks.

Not to mention, if you're going to do the pay-scale-tango with me and try to negotiate me into a lower salary, you must not really care if you hire me or not. That means it probably isn't the best fit.

10. Required in-person interviews

This is a personal pet-peeve, and it doesn't always apply.

I get very frustrated when a company has a strict requirement for in-person interviews. That is because the only real reason (in my opinion) is that you want to weigh the candidate, without a filter, against your prejudices.

This also tells me that if you have remote employees on your staff, you probably aren't super good at communicating with them. If you were honestly good at facilitating remote work, you could make this decision with someone remote.

In the modern tech-verse, there is no reason to be bad at remote work. If you don't want to support remote employees then don't, but don't do it poorly. Indicating to me that you can't have a serious conversation over a webcam tells me that you probably aren't supporting your current remote employees. I can tell you from experience, that can cause a huge culture crisis.

Now, I understand that this isn't a comprehensive list and that plenty of brilliant people are going to disagree with me, but I've put this together after a lot of tech interviewing experience (on both sides of the table), and this is a good compass for me.

I'd love to hear if you agree or disagree with me, and I'd also like to hear about more hiring red flags. I hope this is useful for those of you considering new workplaces! 🤠

There's more...

I'm writing a lot of articles these days, I run a podcast, and I've started sending out a newsletter digest about all of the awesome stories I'm hearing.

You can also follow me on Twitter, where I make silly memes and talk about being a developer.

Latest comments (39)

Collapse
 
anasauce profile image
anasauce

I always get a pit in my stomach when someone mentions a coderpad link in the interview process. Unfortunately we are in the middle of a recession and I (only) have about three years of experience when right now everyone can be picky enough to say they only want 5+ years of experience, SO I don't feel comfortable turning down an interview. But if the circumstances were different I most certainly would.

Tech screens that I think are productive:

1) Take home assignment: This should be something that is applicable to a task that would be required on the job (not a timed algo test). Also, the assignment should take no more than 3-4 hours to finish (four hours is pushing it) but allow the candidate a few days to complete. Don't give me a project where I'm actually doing unpaid work for your company but something that allows me to show off my ability to complete a ticket and then follow up with a code review in the final interview. I think this type of technical assessment makes the most sense for mid-junior candidates (I'm not senior level yet so no suggestion on that)

2) A project review/ code walk through. Have the candidate find a project they have worked on/contributed to. Just be mindful that many of our former/current companies won't just let us share proprietary code in an interview but sometimes I can show a redacted version of a project I worked on or my contributions to open source work. I have talked about the overall architecture of the project and show my specific contributions and how I made certain decisions with code.

3) Live coding/pair coding on an APPLIED logic problem. What do I mean by "applied logic"? Something that I might actually do if I worked for you. For example I'm interviewing for a frontend dev position: "build a form in react with form validation", "pull from this API and render a list in dropdown menu." For backend: "here's our database schema, write an SQL query that returns X" or "heres a model for 'users' of an application, write an endpoint in x framework that returns all users with x properties"

Even better? Make this a pair-coding exercise...and when I mean pair I actually mean PAIRING. Not someone creepily breathing into a the video chat and watching me code, only to audibly sigh and jump in when they don't like a choice I've made. Actually pairing to solve a problem together, talking through the approach to tackle the problem can double as a "culture fit" because it shows how someone works with someone else.

Collapse
 
martha_alisia profile image
Martha Westman • Edited

Thanks for sharing your thoughts on these hiring methods. You mentioned that you have a set of questions that always ask. Could you share those or how you would come up with them?

Collapse
 
jacobherrington profile image
Jacob Herrington (he/him)

Sure. My questions are usually geared towards startups because I tend to work for those kinds of companies.

Generally, I ask things like:

What is your vision for this team/company?

How long is your runway/what is your budget?

When was the last time you talked with a user?

How many users do you have/what is your revenue?

Who has equity? How much?

What's missing from your team?

Why do you think hiring now is the right call?

What does work/life balance mean to you?

Where does your roadmap live?

Variations of those, usually.

Collapse
 
martha_alisia profile image
Martha Westman

Thanks, Jacob. I appreciate the reply. 😁

Collapse
 
figspville profile image
Salli Figler

Very interesting and strong opinion on when you would walk away from a potential employer. When reading your article I felt a strong sense of negativity that I can’t help wonder if it carries with you when you interview. All of these practices can make the candidate feel undervalued. No one wants that, especially when you are looking for a new job. I take a little offense to wanting to keep HR out of the process- we can often keep the process rolling forward or put an end to it when it makes sense based on talking with our Tech Interviewers. Thanks for your thoughts- it is ALWAYS good to hear others points of view and relate it to our own circumstances

Collapse
 
nilsmeyer profile image
Nils Meyer

This is very much a sellers market. Being able to turn down companies that are unsuitable due to their broken hiring process is a huge benefit. You can waste a lot of time being surprised / suckered into an interview with all the anti-patterns because companies and HR people are often not very upfront about their expectations or they very poorly adjust their hiring process to the actual requirements of the job. Part of the issue is of course that people who actually know the requirements of the jobs and what is required from a candidate are often not involved in the process until a very late stage. And too many people just take this sort of mistreatment and see it as the price of admission, much like hazing in fraternities or the military.

Collapse
 
jacobherrington profile image
Jacob Herrington (he/him)

I'm actually a super positive person 80% of the time. However, I am really picky about who I want to work with, and I feel strongly that tech hiring is broken.

The thing about these hiring practices is that, for me, they indicate that the employer isn't a good fit for my values. Obviously, other people might enjoy working at those companies, but I'm not going to work somewhere I don't like unless I have no other options.

Fortunately for me, the market is in such a position that I have a lot of power when it comes to job opportunities, so I don't have to compromise much.

Collapse
 
ferricoxide profile image
Thomas H Jones II

You forgot:

"Ringing my phone two times in succession and only leaving a vmail on the second call". Makes me want to tell them, "look: I have my phone rules set up the way they are for a specific reason (I get a lot of calls from random – usually low-quality – recruiters). You calling twice in succession in an effort to defeat some call-systems' screening features is what's commonly referred to as a 'dick-move'. As such, it tells me you have zero respect for me and, by extension, me dealing with you would be a mistake."

It's right up there with the body-shops that attempt to contact you via email and their very first email to you has a subject that starts "Re:". It's just a big, fat, red flag.

Collapse
 
adamhelton profile image
Adam Helton

These all sound great to me, unfortunately it also seems to be that if you're like me and are looking for an entry level job you have to do pretty much anything they want you to do.
Any advice on how to approach this for first time developers?

Collapse
 
jacobherrington profile image
Jacob Herrington (he/him)

Sometimes you have to compromise.

I would advise trying to find a company that has a reputation for investing in the juniors they hire.

If you do take a job you don't like, work hard to build up your skills and go somewhere that appreciates you. 😉

Collapse
 
adamhelton profile image
Adam Helton

Thanks, and I've been trying to compromise, it just seems like half the positions I apply for send me an automated test that takes 30 + minutes to do. I have no problem taking tests, but this doesn't really seem like a good use of my time because I'm pretty sure they send out thousands of those.

I found an internship that I'm in now and I really enjoy it. Maybe I'm just being too impatient but I really want to get my first job.

Thanks for the advice though!

Collapse
 
zakwillis profile image
zakwillis

Yeah - I can't disagree with this. Have seen a few of these. A pet hate for me is knowing that a company is asking for loads of skills (which would challenge all but Zen Masters) but doesn't even have the software or any intention of moving towards it.

Collapse
 
smith288 profile image
Erick • Edited

I disagree a bit about the culture fit tactic. We are a small outfit. We need people in our small group to be able to work with us and vice versa. Race doesn't factor into such a thing unless you have a bunch of racists on staff...

Collapse
 
jacobherrington profile image
Jacob Herrington (he/him)

That's not true, unconscious bias is super powerful.

Not to mention that the idea of culture fit in-and-of-itself is rooted in, "we should only hire people like us."

Collapse
 
smith288 profile image
Erick

I didn't say unconscious bias isn't a thing. But if you seriously think our company will not hire a QUALITY candidate who happens to be a minority or gay or of a certain religion simply because a team member has a bad feeling about him they're going to need a better reason.

A small company has too much to lose to spend 3 months ramping someone up on a platform to find out later they refuse to ask questions out of pride or some other reason.

Also, culture fit is ALWAYS part of the interview process whether you want to admit it to yourself or not. If the person was a rock star developer (resume screams fantastic candidate) who has developed an iOS game and has made a successful personal career, but shows up and refuses to answer the females there, or they casually bring up how annoying they think team-building exercises are? Perhaps that wouldn't have been caught if you didn't bring in some team members to gauge how they respond to varying personalities.

Collapse
 
perigk profile image
Periklis Gkolias • Edited

HR questions are so annoying, inaccurate and ineffective. I was once was asked if I had ever fought with a client. Even if I had, do they think that I would say so? Or someone who has done so will not be trained enough to cover themselves?

Collapse
 
rossdrew profile image
Ross • Edited

I find whiteboarding useful on the hiring end and fun on the hiree end. I can tell if a candidate can think on their feet (literally), if they can think without an IDE and a little about how they present themselves.

It allows smooth panel interviews and interactive "coding". It's not about testing what you do day-to-day, it's about how you think and collaborate dynamically outside your comfort zone.

The rest of your stuff I am in complete agreement with with one addition, companies which don't publish their technologies because they "want people who can adapt". Just tells me they want contractors and not experts.

Collapse
 
jacobherrington profile image
Jacob Herrington (he/him)

My problem with whiteboarding is that many people struggle with that skill, but are wonderful programmers. I think it's an arbitrary test, and there isn't any real science or data behind the practice.

Collapse
 
rossdrew profile image
Ross

If employers were excluding candidates based on it, I'd agree. I don't have any tests which are supposed to be exclusionary in and of themselves. I prefer to look at the interview as a whole and it's just as important to understand where someone is weak as where they are strong. I like my programming challenge to be a little more than the candidate can handle and I like to know how strong they are if they are required to present their work.

If they ace the programming challenge, I like them as a person then how they do in the whiteboard makes little difference. If their programming challenge is average then the whiteboard session may well save it.

Judging developers purely on their ability to ace technical challenges leaves you little room for growth when you need team leaders, client facing devs, integration engineers which imho are all better promoted from within your ranks than hired.

Collapse
 
realtoughcandy profile image
RealToughCandy.io

I love that you "went public" with this list! Whiteboard interviews in particular come across as elitist and counterproductive.

Unless the candidates are whiteboard-ing for hours a day as part of their job, there are much better ways to gauge their capabilities and problem solving process.

Collapse
 
jacobherrington profile image
Jacob Herrington (he/him)

If someone sees this list and doesn't wanna hire me, I wouldn't want to work with them anyway ;)