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 • Updated 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, "This person might be a little polarizing"

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 ;)

Collapse
 
stackblock profile image
anthony stachowitz

I read this article with some interest. I come from the "regular non-tech" world. I have started a few companies (never called them start-ups). I've been successful and not so success but I am now changing careers and am about to start the interview process for a tech job. Being on the hiring end of the process, I've always thought the process for tech companies was a bit different but figured it was just their way of "disrupting" that process also... I am pleased to see that things aren't that different after all. I agree with pretty much this entire article (the only group interview I was ever on was because of a uniquely worded job opportunity that turned out to be door to door knife sales when I was just out of high school).

You will get no argument from, how do I say, more traditional business hiring managers and owners. The only process that really hurts people like myself, who are changing careers, is the automatic HR resume process. I am at an age that should come with a lot more tech experience but because this is a career change for myself, my experience is almost always weeded out by automatic algorithms looking at resumes. I really need to get in front of people to sell myself and my unconventional experience but that is almost impossible when you are just sending resumes all over the place...

Collapse
 
jacobherrington profile image
Jacob Herrington (he/him)

Hiring is a human process and automated screening is toxic. Good luck!

Collapse
 
idrisrampurawala profile image
Idris Rampurawala

Written nicely! Just want to add one more point here.

Immediate Joiners

Companies always prefer an immediate joiner even if the candidate is not par enough. And also puts a lot of pressure on selected candidates to join early. Such a bad practice it is!

Collapse
 
codemouse92 profile image
Jason C. McDonald

As a hiring manager, I came into this article thinking "Oh dear, more griping about interview techniques that are in fact very necessary and justified."

Happily, I was altogether mistaken! These are all pretty solidly on the money.

Here's a few thoughts. (Bear in mind, I mostly interview for our internship program, so I deal with a lot of very very very JUNIOR applicants.)

  1. Whiteboard interviews

Yeah, nope. I still want to see coding in the final interview, but it needs to be practical. (What exactly I do for this isn't something I publish, for practical reasons.) Code golfing really doesn't have a place in hiring.

  1. Contract to hire

If we accept an applicant to the internship program, they're under contract for the entire duration of the internship. We expect them to complete it, and we expect to do our part to make that possible.

If you're not able to commit to a new hire, you probably shouldn't be hiring them.

  1. More than 3 interviews

Two interviews here: phone and in-person. I've never needed more. Honestly, I can't even imagine doing three!

  1. Culture fit interviews

Naturally, I want to make sure an applicant is going to be a positive addition to the environment, but our cultural expectations (actually our Code of Conduct) is formalized in writing. Everything else tends to evolve as people come and go, so not much "cultural" stuff comes up in interviews. If you can do the work, you're good.

That said, I do usually bring development team leaders along to the final interview, for a variety of reasons. And yes, one is to catch out discriminatory behavior in advance; we're a diverse company, and on occasion, we've had to turn down an applicant because of overtly bigoted behavior towards certain team members.

  1. Group interviews

You seem to be describing interviews where multiple applicants are present at once...which I wouldn't condone in a million years!

I do believe in having 2-3 interviewers in a final interview, simply because our collective insight allows us both to screen the applicant better and to answer questions more effectively. I've had some top-rate co-interviewers over the years!

  1. Endurance interviews

Um, no. Final interviews are naturally intense enough already, let's not add exhaustion.

As an aside, I completely understand why interviews need to be fairly nerve-wracking experiences: they get the candidate off-script (which we need!) I always account for nerves in terms of responses and coding ability, and I never hold it against someone.

Ironically, the candidates who were the most nervous during final interview invariably proved themselves to be our best developers! They've all moved on to mid-level development positions at other software firms, and several have said that their experience interviewing with us because invaluable experiences.

  1. HR Screens

When you're wading through a mush pile of candidates, you do need to screen. That's the entire point of a resume.

With that said, my criteria are mainly centered around "can they stick with this?" If I'm seeing someone switching fast-food jobs every two months in the same area (seen it), or citing experience from seven jobs but checking "no" on permission for us to contact any of them, huge red flags go up.

Another pet peeve is if someone can't bother to read our simple and clearly delineated job application instructions. I can't tell you how many people don't both to even fill out the required application, and just email a resume to my personal inbox. I'll politely refer them to the instructions once, but I don't lift a finger on considering them until they follow the instructions.

After all, if someone can't follow three simple, clearly-printed steps, how can I expect them to pay attention to specs, workflows, or documentation? (Answer: I can't. I've tested it.)

For the record, I usually phone interview about three quarters of the complete applications I get.

  1. No senior leadership in the interviews

I'm the CEO and Lead Developer, and I'm at every final interview. I also bring along one or two members of development leadership, when I can.

  1. Reluctance to discuss pay or benefits

Up front. Not only is this clearly outlined on the website, but we also cover it in both the phone and final interviews.

  1. Required in-person interviews

I do like in-person interviews when I can arrange them. Video conference interviews can be fraught with technical issues, and you still lose some of that real-person-interaction. (I have a background in communication, and deeply appreciate the entire non-verbal experience...much of which is lost over video chat.)

However, I'm not opposed to remote interviews when necessary! Sometimes that's just what works best for someone, and we're more than willing to oblige.

P.S. We are, in fact, 100% remote, and we're good at it! Our program graduates always remark on that fact. But we also encourage (but don't require) face-to-face interaction when it's possible, such as when two interns go to the same university. We've voluntarily had spec planning meetings in person, and have hosted a number of company get-togethers.

Collapse
 
jacobherrington profile image
Jacob Herrington (he/him)

Glad to hear I wasn't too far off the mark!

Collapse
 
makiten profile image
Donald
  1. I've done whiteboarding once. It wasn't the worst thing ever, but after the last time I did it, I did put that company on my "never work for" list.

  2. C2H here at least is through a staffing company who (for me) have provided benefits on day one. My oldest was born while I was in this arrangement. I think contract (as in benefits or no) in most cases came down to a startup wanting to hire me (the types who thought 48k USD/year was "a lot")

  3. My current job did this, and it was infuriating. The whole process lasted a month with lots of last-minute changes in schedule ("Can you come in like 6 hours for another interview?"). I let it slide since it was an old boss of mine who wanted me to work with him, but I've done some interviews since, and this, #4, and #7 get that company instantly on my blacklist.

  4. I hate these. I'm surprised you didn't mention Amazon's asinine "bar-raiser" interviews that are functionally this (even if they claim it's to do what you suggest). I have to admit though that I don't really believe in "company culture," and in my experience it's used in conjunction with #10 to discriminate.

  5. Surprisingly, I didn't go through these when I interviewed at Amazon. Not self-taught, but not a CS grad and certainly not from an Ivy or "Public Ivy." I've only heard group interviews like these when someone's pitching an MLM/pyramid scheme.

  6. The company from #1 (who tried competing with AWS) and Amazon did this both. Both required out-of-town (driving to another city an hour away and flying to Seattle) travel, and I couldn't tell you anything about the experiences other than how bored I was.

  7. Every company I've mentioned has done this. I purposefully gave the most ridiculous answers (ones that would show I have no plans to stick around) and... still got the job.

  8. This is probably more reasonable to expect in a startup. A corporation you're lucky to get a VP-level executive (I've only had an non-startup executive in an interview at my current job.). These, however, have proven to be very telling. They almost immediately give away the pros/cons unintentionally.

  9. Yep, I don't think this has ever come up beyond maybe the HR screen.

  10. I don't have reluctance to these, but since I'm looking more for remote (or ideally just freelancing) work, the red flags you gave definitely would give me pause.

With that said, that is by and large why I've lost a taste for software. I can do/tolerate it in certain scenarios, but I couldn't be a software engineer ever again, and I think so many companies are on my "never work here" list that the only option is self-employment for me. It has it's challenges, but I at least can control them. As a guy just working somewhere what I lose in exchange for a salary is worse than what I gain from flexible work.

Collapse
 
tisri profile image
Not my circus, not my monkeys

Whiteboards can be a useful way of seeing if the candidate understands some basic concepts, as long as it doesn't turn into the kind of example you mentioned. Years ago I interviewed with an investment bank and they asked me to sketch a couple of things on a whiteboard that did little more than prove I knew how options worked and how a forward rate agreement was priced. The flipside is the kind of coding test that measures how well I know one very specific aspect of coding - I very nearly walked out of one interview because the interviewer expected me to write a piece of code using a very specific control I wasn't familiar with, as if not knowing that specific control meant I didn't know the language. I even told him straight that if he wanted to know whether I knew that control I could save us both a lot of time and say it wasn't one I'd used much before.

Pay and benefits seems to be a big one. Conventional wisdom seems to be that you don't discuss pay and benefits until the third interview and maybe not even then. Let's be frank, if I'm expecting $150,000+ and you're offering up to $100,000 we might as well both save our time and not bother pursuing this. It benefits neither of us to ace the first interview, come back for another, then discuss salary only to find we're so far apart there's no happy medium.

Contract-to-perm may work for some people so I wouldn't say it's a huge non-starter. It has drawbacks but maybe it's the chance that some people need to prove themselves, especially if they come from a non-traditional background. It potentially makes it easier for someone without an IT degree (or with no degree at all), career changers, the self-taught etc to prove themselves without the employer being on the hook if they turn out not to be as good as everyone thought. Obviously it only works if the company follows through and does upgrade the contract to a permanent job.

The HR pre-screen is a real bane, as is dealing with agencies. That said computerised pattern matching seems like it's more about learning to beat the system than doing anything useful. In a past life I knew a guy who was a really good VB programmer who knew nothing about SAP, at the time SAP was a very in-demand skill. His online resume contained the phrase "I have no experience whatsoever with SAP". Of course the agencies he worked with were always searching for "SAP" so his resume kept coming up again, and again, and again. When they were looking for a VB guy he was the first one they thought of. That got him in the door, and he had the skills to ace an interview from there.

It's always funny when you see an ad for a job that requires more experience of a technology than is possible, or an application claiming more experience than is possible. I still remember getting a resume from a guy with five years of C# experience. That was impressive, given C# had been available for two years at that point. Maybe he was one of the engineers who wrote C# but if that were the case I doubt he'd have been interested in the junior position I was looking to fill.

What always annoyed me the most was when a company wanted applications but then couldn't even do the courtesy of a reply. I get it, you've got lots of applicants for this well-paid job but is it really so much to ask to send a response to people you aren't inviting to interview, or the people you interview who you aren't inviting back?

One key point is that interviews have to work for everyone. If your candidate has a job it's no good to just tell them "I need you here at 10am tomorrow" because it's not necessarily easy to just bunk off work. And when your candidate is there, be aware of their time. If it's an interview over lunch or before work, respect where they need to be. Don't expect them to stay with you for 90 minutes, then get back to work with a vague excuse about meeting a friend for lunch and service being really slow, then having their stomach growling all afternoon because they didn't actually get to eat any lunch at all.

Your comment about cultural fit is a good one. Monoculture can be a very damaging thing especially in a technical field but if someone just isn't going to fit in it can be disruptive. How to balance needing someone to fit in while also bringing their own (perhaps quirky) thought processes to the table, while also doing everything possible to eliminate bias based on irrelevant matters (age, race, gender etc) is potentially tricky. To a large extent it depends on whether the position in question is for little more than a code monkey or an analyst/problem solver.