back

by rvzΒ·7y agoΒ·view on hn β†—
> Coding challenges are a useless metric IMO. They also waste time.

I agree to some extent, here are some that don't do these interviews [0]. But unfortunately, I find that all tech companies and strangely non-tech companies are trying to normalize the coding interview tests. Pre-interview challenges are useless, since a candidate can easily cheat them by searching-copypaste-refactor the optimal solution from another computer into their own editor and submit it as their own. Doing this easily fools many assessment tools all the time, despite their 'machine learning detection' claims.

But nowadays, it is the on-site interviews which is the new normal. But depending on the sort of company you are applying to, I would ask questions on where they actually apply them or use them in their so called 'engineering challenges'. FAANG, large banks and several fintech companies is certainly justified. 10-15 employee startups based on a mobile app? Hardly. I would expect that larger companies that have their own technologies, programming languages or libraries will ask these coding challenges and if an interviewer cannot justify the use of these questions other than 'to see how you program' then I just end the interview gracefully.

I would instead ask the candidate to send a link to some relevant open-source projects or significant contributions that meet the technologies I am using. No silly hello-world/git-flow/test projects. I can easily eliminate 90% of candidates by checking that you have a patch and are mentioned in the AUTHORS file of an open-source project, which is more quicker than these programming tests designed to hopelessly find 𝔢𝔒 π”žπ”«π” π”¦π”’π”«π”± 𝔩𝔒𝔀𝔒𝔫𝔑 𝔬𝔣 𝔢𝔒 աօ𝔡 𝔑𝔒𝔳𝔒𝔩𝔬𝔭𝔒𝔯.

[0] - https://github.com/poteto/hiring-without-whiteboards

1 comments
What's wrong with 'to see how you program', though? Why is FAANG, large banks, and several fintech companies are justified to use coding challenge and on-site interview, but not 10-15 employees startups> Considering those 10-15 employees startups need good programmers who can act as cofounders while mature companies already have mature filtering mechanism for recently people joining.

Also, about the open-source projects, not all candidate do open-source projects. Most of them write proprietary codes all day and don't have a chance to contribute to open-source projects. (Disclaimer: I'm one of those unfortunate people, as much as I want to contribute)

> What's wrong with 'to see how you program', though?

* Dear dentist, can you please show me how you fill cavities?

* Dear lawyer, can you please show me how you law?

* Dear surgeon, can you please show me how you operate?

* Dear accountant, can you please show me how you do taxes?

* Dear architect, can you please show me how you design?

Dentists, lawyers, surgeons and accountants have professional bodies issuing licenses or certifications. Those licenses verify that the candidate in question has at least met some arbitrary skill level in their respective field.

The software industry, for better or worse, have collectively rejected having such a professional body, which means companies looking for software engineers wind up having to evaluate programming skills individually.

I think the more important factor is those professions consider themselves high status and wouldn’t put up with incompetent-until-proven-otherwise interviews.

Programmers as a group don’t stand up for themselves.

* Dear writer, can you please show me some writing samples?

* Dear graphic designer, can you please show me your portfolio?

* Dear welder, can you please weld these test coupons?

* Dear actor, can you please audition for the role?

There are plenty of professions where a demonstration of relevant work ability is a normal part of the hiring process.

The problem with many "coding challenges" is that they take a long time to do - basically, are unpaid paid work. Writing samples and artist portfolios are compiled from work the candidate has already done; the closest we have in software is "looking at someone's GitHub" which has its own set of problems. Welding tests and actor's auditions are distinct because they don't take that much of the candidate's time, and quickly demonstrate if they are suitable for the role or not.

What's wrong with those?