Hacker News new | ask | show | jobs
by sai_c 1460 days ago
I'm honestly curios, so please bear with me.

All the HN threads about recruiting mention this. I get the argument, and yes, there seems to be no better way than to test the candidate (no matter if it is a take home test, online, or onsite). As I see it, most of these tests are about algorithms and data structures, not real, practical problems the company has/had.

What I do not get is the following. Most companies (especially FAANG) demand a CS degree and then give you those coding tests about algorithms and data structures your degree actually proves you know about. If the candidate got the degree thirty years ago, then (maybe) fine. But even candidates fresh out of university? And even if you do not recall them in an instant, your degree should prove you can successfully research and understand them. Is a CS degree actually anything worth then, if I still have to prove this knowledge every time I apply for a job? And if it's not about theoretical things, why demand a degree and test for theoretical knowledge instead of practical problem solving skills?

3 comments

I live and work in germany so the environment might be way different then in the us or other countries. What I do is a small programming task that candidates can do in there own time frame at home. For the task you have to implement one interface consisting of 2 methods. Its nothing special in terms of computer science. What do I look for in the solutions I get? - Is the code readable? - Does it compile - Are there any unit tests - The implementation needs to work with the filesystem, how is that solved and how is it tested (if it is tested)? - Is there some kind of error handling? I check these points and in the next interview with the candidate I discuss the solution with him or her.
As someone who is 98% done with my CS degree, at a decent school, I think that 50% of fellow graduate cheated or had enough help from roommates to the point where a CS degree doesn't mean anything.

I once found myself in a small friendship that I found was fake (recognized someone from a large group project in my algorithms class) and he asked me for help on a problem so I went to meet him with the intention of helping while still following the academic policy. It then turned out to be 8-10 people all around a giant table passing a laptop around giving different problems a try. I subtly asked how they didn't get caught and they said they would complete a pset, distribute it to everyone at the table and on their own time would change things around.

Actually, if you get stuck on any problem you can just go to office hours and I've even seen TAs just typing code on a student's laptop.

My roommate TA'd a 4000-level class once and said that a lot of assignments looked similar to each other but no one went after anybody for honor code violations.

I absolutely believe it's possible to graduate without knowing much about CS or programming.

The whole "demanding a CS degree" thing is just another filter. FAANG can afford to apply a ton of arbitrary filters and still get enough good candidates to fill their ranks.

OTOH, I am hiring for the startup I work for, and I explicitly don't require a CS degree, or any degree whatsoever in my job descriptions. It's not just because I don't have a CS degree myself (my degrees are in math), but because nobody gives a shit what degrees anybody has here as long as they can do the job. Conversely, you can have a CS degree from the #1 school in the world, and I don't give a damn if you can't do the job.