6 ms·
I know that "homeworks" aren't very popular on HN or Reddit. However, when job-hunting I have infinitely greater respect for companies who use them, rather tha
by StevePerkins 10y ago
I know that "homeworks" aren't very popular on HN or Reddit. However, when job-hunting I have infinitely greater respect for companies who use them, rather than sophomore C.S. whiteboard exercises.
As imperfect as ALL technical recruiting styles may be, at least a short coding assignment (i.e. < 4 hrs) is halfway-related to the real world. I have written code against a set of requirements nearly every day of my professional career. Outside of the interview context, I haven't balanced a red-black tree since I was in undergrad over 15 years ago. Frankly, whenever I hear people favoring the latter over the former, I always assume that it's just because they're fresh out of school themselves.
Yeah, doing dozens of homework assignments for multiple companies could be a massive time sink. However, I've almost universally felt like I wasted my time when going through the interview process with companies who don't use them.
Perhaps my perspective is a bit colored, as I'm far enough along in my career that I can be choosy about which companies I invest time in. I only talk with a dozen or fewer companies in each job search, and so I won't do a 4-hour homework assignment unless I'm already interested in working for you. If I were closer to entry level, and therefore had to go through the process with a hundred companies to land an offer, maybe I'd have a different opinion.
Regardless, the original post here is some entrepreneur, writing a small novel about his lengthy process of figuring out which job title to seek at a real company ("CTO"? "VP"? "Architect"? "Principal"?) Of course it took him 200+ hours to get a clue.
- colechristensen 10y agoIf you're not willing to pay me on the order of $100/hr to do your homework, I'm not willing to play your recruitment game. My time is valuable and if an employer isn't willing to give equal effort in the interview process, I'm not interested. Also I'm not particularly interested in a workplace – especially a startup – that insists on this in a recruitment process. It leads to only hiring employees who are willing to play the game which is much more likely to exclude people who want to live lives outside of their job and fosters a culture of obsessive overwork as well as not having the diversity of opinion/demeanor/background/etc. which is valuable in a healthy workplace. If you want to bring me in and spend a day with me talking and working in your office, fine. I won't, however, spend 4-10 hours working on a problem for you while working at the job I already have and doing the rest of life.
- bit_logic 10y agoAnd so playing the game of spending weeks studying CS problems and doing leetcode.com is somehow better?
- wahnfrieden 10y agoSenior candidates may have already ingrained this experience, so you will lose out on senior candidates if you require take-home assignments.
- bit_logic 10y agoSenior candidates are in the worst position for the typical algorithm/data structures interview. College is a distant memory and they need the weeks of study more than fresh graduates.
- StevePerkins 10y agoExactly. As a 15+ year vet, I love coding homeworks because: 1) I've been coding forever, and have faced code reviews in multiple professional environments. So your "6-8 hours" will probably only take me less than two, and my code will probably look better than yours to a reviewer. 2) I get tired of having to re-read "Cracking the Code Interview", because almost none of that is frequently used outside of academia. And dealing with smug 5-year journeymen interviewers, who are accustomed to asking 1-year juniors to traverse binary search trees and name all of the design patterns that they've memorized from books. No matter what process your company uses, there will always be people trash-talking it on the Internet. "I refuse to interview at those places", "I insist on being paid an hourly rate to deal with them", etc. I'm sure that 99% of this is chest-thumping bullshit. But regardless, if you're going to filter out part of the candidate pool no matter which path you take... I'd much rather filter those 25-year olds who feel too entitled to write some code, and legitimately believe that companies should just glance at their GitHub page and then hurl them a giant sack of money.
- throw_away_777 10y ago
- digler999 10y agowhat's to prevent someone from outsourcing the "homework" to programmers on the internet ? I interviewed someone on skype 2 weeks ago and the applicant clearly had someone off-camera in the room feeding them answers. People like money, and they will go great and nefarious lengths to obtain it.
- pm90 10y agoWow this is really disturbing. I imagine this is why a final round of in-person technical interviews are considered necessary.
- lj3 10y ago> As imperfect as ALL technical recruiting styles may be, at least a short coding assignment (i.e. < 4 hrs) is halfway-related to the real world. Yes, but what it is not is economical. There's a huge dropoff in the interview funnel at this step because it's largely not worth the effort for the interviewee. The choice is between spending 5-10 hours per take home test per company or spending 5-10 hours a week studying silly whiteboard exercises that apply to dozens of companies. It's also just as uneconomical for the interviewer. I've completed about a dozen of these tests over the last year and only one company bothered to look at the test after I sent it in. Which makes sense; it takes time to look at a lot of code, figure out which of it is boilerplate and which of it was written fresh for the test. And even then, there's no guarantee somebody else didn't write it. And while you may not be interviewing with hundreds of companies, most companies easily get hundreds of applicants per position these days. For whatever reason, it doesn't seem to be worth anybody's time to do these tests. This bums me out because I'm terrible at live coding tests. But, this is the reality of the situation, so I have to adapt.
- donovanm 10y agoThe way I see it a lot of the best people would probably never bother going through a take home test. A company with a simpler, quicker interview process would have already snatched them up.
- bit_logic 10y agoThere is no simpler quicker process, the current popular process is spending weeks studying CS and leetcode.com. That's a lot worse in many ways.
- lj3 10y agoSure, there is. Have you seen this approach? https://www.youtube.com/watch?v=cfyWvJdsDRI https://www.youtube.com/watch?v=cfyWvJdsDRI
- ThrustVectoring 10y agoMarginal cost to get some sort of commitment/investment out of a company is lower, though. With 4-8 hour coding assignments, that's ~10 companies per two-week period to consider you for the on-site portion. With all the other process stuff, you'd wind up maybe being able to get 1 or 2 concurrent job offers.
- ryandrake 10y ago> Perhaps my perspective is a bit colored, as I'm far enough along in my career that I can be choosy about which companies I invest time in. I only talk with a dozen or fewer companies in each job search, and so I won't do a 4-hour homework assignment unless I'm already interested in working for you. Interesting. I've found the opposite. The farther I get in my career (and the older I get--not going to say the "A" word), the more difficult it is to get through the interview gauntlet. Companies looking to fill Junior "5th engineer from the left" roles tend to be fine with a warm body and a brain. Companies looking for super-senior-staff engineers, engineering managers or even more senior folks are extremely picky and probably reject almost everyone they meet. Even when I'm not actively looking for work, I try to answer every recruiter E-mail try to reach out to 1-2 companies a week just to keep irons hot and be able to act on the off chance that something spectacular pops up. The older you get the MORE shoe rubber you need to go through pounding pavement.
- bmay 10y ago> Outside of the interview context, I haven't balanced a red-black tree since I was in undergrad over 15 years ago. Which company asked you to balance a red-black tree in an interview context? Name-and-shame them. Seriously. I've heard many whiteboard interview polemicists use this example, but have never seen any evidence for it actually happening.
- re-space 10y agoIn the programmingzen blog, Antonio Cangiano, a ruby programmer and author of several ruby books, there is a post about an interview for a job at IBM in which the question is to explain how the red-black tree algorithm works. Hey, I googled for it, here it is: http://programmingzen.com/things-ive-learned-from-hiring-interns-for-ibm/ http://programmingzen.com/things-ive-learned-from-hiring-int...
- bmay 10y agoYour comment: > the question is to explain how the red-black tree algorithm works. From your link: > Sample questions included: What’s a Red-Black Tree and what would you use it for? I don't see how those are equivalent. I also don't see how the latter two questions are equivalent to asking an interviewee to "balance a red-black tree".