Your Tech Interview Process Sucks

Filed under industry on October 19, 2022

I’m by no means an expert on this, but I’ve sat through enough interviews to know what the red flags are. This post is spurred on by a couple of things I’ve seen on LinkedIn in the last couple of weeks, the first of which were these posts (by the way, no idea how I connected with her, but Fiona is definitely worth following for some brutally honest takes): Scolding bad interviewers 1 Scolding bad interviewers 2

The next was a company I’d never heard of reaching out to me directly with a breakdown of their interview process with 6 rounds of hour long interviews that looked like it would take at least 2 months to get through. More to the point, there were interviews with people I’d likely only meet once in the interview process and ne’er our paths shall cross again.

What sets off the alarm bells before even talking

A list of required skills that have no relation to each other

I use the list of required skills to know what to expect from the job. If the list looks like

Python developer
---

Required skills:
* Java & Spring boot
* React
* AngularJS
* Amazon Web Services
* Azure Windows domains
* Strong golang background preferred
* Automated infrastructure deployment pipelines using Jenkins

I’m pretty much flying blind, and I’m not going to hook up a time for an interview.

If I see a position looking for a backend developer, scroll down and see a list of requirements including things like React, Kubernetes and multiple backend languages a sign of a few things. One is that there was “the guy” that set everything up then left without telling someone else about how to do it, or that the company is not really looking for a backend developer.

Frontend developers are going to be iffy around backend languages, backend engineers are likely going to balk a little at being expected to know the ins and outs of deployment pipelines, and devops peeps probably have zero interest in learning anything above the minimum amount of browser Javascript.

You can fix this by narrowing your selection criteria down to the essentials and putting anything else in a nice-to-have section. Or just being brutally honest about the whys of these demands.

Overly familiar cold messages

I’m a professional, you’re a professional, we should both act like it. Pretending to be my friend or inserting emojis into your message just makes me feel like I’m on the wrong end of a joke

LinkedIn is not a dating site

This is the same reason I hate companies that claim their employees are “family”. I feel like it’s a bit of a slimy manipulation tactic, and professional distance is always appropriate.

Politics in the Recruiter bio

The only people whose political opinions I care about on social media are the sitting members of parliament I know, since that’s their job. Were we to become friends I wouldn’t mind so much, but again I appreciate professionalism above most other things when it comes to work. It also seems sharing even mainstream political opinions publicly can come back to bite you now as well, so a word of advice is to just take whatever you were going to say and don’t.

You got your foot in the door, but your candidate ghosted

Say you got a reply from someone that sounds interested, so you provide more detail.

The candidate disappears.

I may not know your specific circumstances, but here are a few things that have turned me off interviewing.

Long interview processes

The market for software engineers is quite hot right now, I can have an offer in front of me in a few days of interviewing. If I’m out of work and looking to get back into it ASAP, I’m going to jump on what’s in front of me.

If I’m still working, I don’t really have the ability to take hour long breaks every other day. Multiple interviews might be a bit of a stretch to organise, and if I’m not keen on the role then I’m unlikely to bother trying to make that work.

Vagueness around the role itself

If you can’t tell me about the company or what I’d be working on, I’m not interested. I’ve even had a few back and forths with recruiters that didn’t even seem to know what the companies they were working with actually did.

I like to know what I’m walking into before interviewing, it saves a bunch of awkward questions.

Coding challenges that take more than an hour or two

As more engineers get involved in interviewing candidates, I’ve found this to be a lessening problem. I only have a limited amount of downtime, and while I understand you want to assess whether I can do what I say I can, there’s more interesting uses of my time than obsessing over the toy problem you gave me to complete.

I think the most extreme example I’ve seen of this was something trying to test bizarre algorithm and optimisation knowledge, where you pretty much had to know the language down to the scheduler to be able to drink down a few more CPU cycles efficiently. IIRC, it wasn’t even a modest gain in performance. Unless you’re doing something like HFT, you probably don’t need to quiz people at this level.

I think we should probably give candidates an option to walk people through a GitHub repo they maintain as an alternative to coding challenges. I have plenty of good (if slightly unmaintained) repos I’d be willing to give a rundown of to someone interviewing me, and it would save everyone a lot of time in the long run.

Completely incorrect ads

I had a recruiter send me a job for a role with what I was told was a data development team, sounded like interesting enough work, so I went forward with an interview. Keep in mind, at this point I was using Go, Java, Python and maybe a smidge of frontend JS.

Talked to the internal company rep, she immediately started talking about their Ruby stack. I apologised and told her that I was mistaken, and I was told this was going to be a Python role. Both of us were left feeling a little awkward, but she finished her spiel and I apologised and flat out said I just didn’t have the skills they were looking for. We both walked away feeling a little annoyed.

Failures to negotiate

This isn’t the last place your potential recruit can leave the process, but it’s probably the place where people will feel they’ve wasted the most time.

Like the screenshot above, I’ve outlined my expectations for compensation only to be greeted with an offer well below market rate.

The excuses for this are numerous, but they’re all bullshit.

“We’re doing something meaningful, though”. Yeah, I can work at a bank to make peoples’ everyday lives easier with my software AND get fairly compensated.

“We haven’t secured our second round of funding yet”. Then don’t hire more staff you can’t afford.

“Our stock options are really generous”. They’re not going to pay my mortgage or put food on my table.

Treat your potential new hires with respect, and either come to the table on what their asking or put in a reasonable counter offer, don’t waste everyone’s time pretending you’re special.

Wrapping Up

To give the tl;dr of this rambly post:

  • Be respectful, polite and professional
  • Be humble, and remember it’s not only your time that gets used up in this dance
  • Don’t drag your feet making decisions
  • You want them there as much as they want the job, don’t play unnecessary hardball with a good candidate

Maybe things will continue to improve, but ever the pessimist I feel like we’re heading into some pretty dark times over the next few years. I hope my little rant above helps someone out there snag a good hire, or at the very least helps streamline a recruitment process.

All I know is this: Now that I work at a bank, which had a surprisingly slick and easy recruitment process, everything else I may do in the future will be expected to do better. There’s absolutely no reason a behemoth with over 100 years of bureaucracy should move faster than you.


Stephen Gream

Written by Stephen Gream who lives and works in Melbourne, Australia. You should follow him on Minds