Hacker News new | ask | show | jobs
by bitL 3034 days ago
> All the large ones (Google, Apple, Amazon, Microsoft, etc.) give coding puzzles as part of their interview process.

They are considered the best and give above average compensation. Is your company considered the best, properly paying top talent, to employ the same schema? Those tests were done to distill the top end performers with the accepted risk of huge number of false negatives. Now every mom-and-dad shop is trying to use it. That's why I call it insanity, getting extreme practices into mainstream in our industry.

2 comments

> Is your company considered the best, properly paying top talent, to employ the same schema?

Yes, this was true of every job I've ever had. Maybe I've been lucky.

I don't really understand why asking someone to do a small amount of programming for a programming job interview, when they claim to be an experienced programmer, is any sort of "extreme" practice.

You've expressed a lot of complaints about coding quizzes, some that many people here share, and some that I agree with.

I would urge you to spend your energy making a specific alternative proposal that companies can actually use. The OP's proposal isn't something companies can actually use for all candidates, even if they could use it for him.

I'm very interested in how to better screen and interview devs. I want to improve my process. But no process I've ever been exposed to is even close to perfect.

Make sure your proposal considers the company's perspective. The ideal process will benefit both the candidate and the company, but something that's pleasant for the candidate and unpleasant for the company will never get adopted no matter how good it sounds.

Because if you have in your CV verifiable statements that you worked on some super tough engineering challenges, including advanced snippets of code/projects on GitHub demonstrating your dominance in that area, doing silly low-end coding quizzes seems like a total waste of time. Can't you really see that? It's literally like if I asked you if you ever ran a company and if you could handle preparing a budget, despite knowing you are a serial entrepreneur that sold multiple companies already. It's just super arrogant.
> Because if you have in your CV verifiable statements that you worked on some super tough engineering challenges

If it takes longer to verify than it does to test your coding ability directly, why shouldn't I just ask you to do some coding? The challenges you took might be less impressive or well known than you think. The challenges you took might not say much about you if they were team challenges.

> including advanced snippets of code/projects on GitHub demonstrating your dominance in that area

That doesn't help me compare one candidate to another at all. Nor does your github demonstrate dominance in anything, unless your project is React or something like that. Github is a vast wasteland of barely used code.

> doing silly low-end coding quizzes seems like a total waste of time

It's going to take about as long to get through job interviews no matter how the interview is conducted. You can spend it programming, or you can spend it talking. The time spent is an investment in getting the job. If you don't actually want the job, then you're right, it's a waste of your time.

What's not going to happen, ever, is someone will take the initiative to read through all your work, verify the things on your CV, and offer you a great high paying job without going through the interview process.

> Can't you really see that?

To be very frank and honest, given all the reasoning and experience I've shared with you, this question gives me the impression that you might be very inexperienced.

> It's just super arrogant.

What, precisely, is arrogant? What are you talking about specifically? Using Hackerrank in an interview? Having an interview at all? Not noticing that you're a rockstar before talking to you?

Please take some time to articulate what the right interview process is, rather than spend any more time passing blanket judgements.

I think you are completely missing the point I am trying to make.

Imagine you have strong interest from Google, FB, Uber, Amazon etc. Google wants to waive their interview process as you are an open source contributor (they actually read your CV and clicked on the links). FB wants you to lead some ML team they have doing cool things etc. Other companies beg you to work for them even if you don't consider them interesting, willing to overpay you and pamper you.

Now comes your unknown company/startup. In order to even talk, you require passing some HackerRank coding test. I look at your Glassdoor reviews, you either have none, or few, or your compensation seems to be low etc. You might be working in interesting area, maybe I should give you a shot? Or I just want to see what current crop of interviews in your industry looks like, maybe I agree on going through the process? Maybe I even visit some interesting city you are located in and scratch it off my bucket list?

In the end I won't work for you. I won't consider anything you offer. I've gotten from you what I wanted - glimpse of the area you are working on for more ideas, keeping my brain up to date to interview requirements, visiting city I've never been before. You wasted time and money on me. You didn't get anything. I puzzled your head because you thought you'd have a shot at getting me. And that is the best outcome you'd get from this; most likely I wouldn't even talk to you after your initial requirements and go with other choices available to me.

Please propose a better process!

> Google wants to waive their interview process as you are an open source contributor. Other companies beg you to work for them even if you don't consider them interesting, willing to overpay you and pamper you.

That's not a realistic scenario, your point seems contrived. Google doesn't waive their interview process, as the @mxcl example demonstrates. Companies only beg to throw money at you and overpay you if you're famous or have a niche skill. If that's true for you, this conversation is irrelevant to you.

> Now comes your unknown company/startup. In order to even talk, you require passing some HackerRank coding test.

As I said above, I'm assuming this process only starts when you express interest in the company. If you're complaining about having to respond to recruiter spam, I can't help you. Nobody is forcing you to take any tests. You should only do it when it's for a job you want.

> In the end I won't work for you. I won't consider anything you offer.

What you're doing is avoiding false positives by screening for something you care about. The same thing Google does. Except Google has statistics on how well their screens work.

> You wasted time and money on me.

Or, more accurately, they saved time and money by not doing lengthy and involved interviews or researching you heavily before discovering it's not a good fit.

> Google doesn't waive their interview process

They actually do. What they told me is that if you are an open source contributor for important open source, or you have 3 people within company that want you, you can skip the whole process. There are surely more ways to skip it. Not sure why they didn't do it for that Homebrew guy.

> when you express interest in the company.

I was mentioning that these days often HackerRank is step 0 of interviewing process, like what used to be technical phone screen. And that holds even for recruiting agencies if you want to have your CV featured there, even for underwhelming jobs. TopTal IIRC also does that.

> they saved time and money by not doing lengthy and involved interviews

I wouldn't be so sure here. You can be easily played, i.e. you are in Seattle, somebody wants to visit friends there, schedules an interview with you, you pay flights + hotels because you are happy to talk to them, they use you and extract whatever information they wanted to acquire from you and then tell you they decided for another alternative, but went there mostly to visit friends/relatives/handle some administrative business. It happens.

> Please propose a better process!

It's tricky. The deficiency in your approach I see is that you expect candidate to spend time in convincing you without you spending time on researching them, pushing all externalities to the candidate. With this you IMO cut the people you want/need the most as they usually value their time. Maybe if you offered compensated initial interviews to people you spent some time researching, that could help? That would be a signal you did your research already as you wouldn't want to waste money on random people, and that you appreciate them dedicating time talking to you?

I'll bite on your suggestion of a different process.

Bring the candidate on site for a 4 hour coding session. Provide a standard list of questions the scale in difficulty. Think:

1) Fizzbuzz

2) Reverse a string

3) Write a calculator class/script

...

100) Write an algorithm that can search compressed text without decompressing it

So you see how far and correct they can get with an IDE ... and maybe no internet connection.

Noon - Hiring Manager lunch Afternoon - 1 or 2 design interviews on the white board.

So you have done a few things here that I want to outline.

A) You got rid of the stupid whiteboard

B) You have one process that scales for experience levels!

C) You can tailor the problem set at a certain of difficulty to specific languages

This interview style ensures the developer/engineer knows how to code, and can be weighted appropriately to certain skill levels.

>I don't really understand why asking someone to do a small amount of programming for a programming job interview, when they claim to be an experienced programmer, is any sort of "extreme" practice.

It isn't and that's exactly what you should expect.

Nonetheless it shouldn't be too much to ask that the test and interview ask relevant questions and that the company puts skin in the game that is commensurate with the sacrifice being asked of the candidate.

In other words, 5 minute screener tests are cool but if you make me do a weekend project you put me up in a 5 star hotel.

Those "mom-and-dad shops" are the ones who have the most to lose by hiring the wrong person. A sufficiently poor performing person could cripple them.
They also have a lot to lose by leaving the position unfilled for months on end. If you aren't Googlefaceapplezon, then false negatives could be as costly as false positives given time is money.