3 ms·
Ask HN: How to Hire Hackers
JamLegend is about to hire some interns for the summer and we'd like your advice.
We're about to conduct some interviews and are still receiving applications. Honestly, this would be our first time bringing folks in. We don't know how to go about this the right way, so we wanted to seek out HN advice advice about Dos and Don'ts in the world of hiring and share with everyone.
Since we've just begun our process, we've come upon some tips on HN and elsewhere that we thought would be nice to share. See the comments below separated by stage (sorting resumes, interviewing, puzzles, etc.). We'd really appreciate the help because we want to make sure we're bringing on the right people.
Edit: I took off links so I'm not hawking my wares like a Chinese DVD merchant, we're honestly interested in getting advice on how to hire correctly.
- deleted 18y ago[deleted]
- deleted 18y ago[deleted]
- ALee 18y agoFor Fun- Anti-rockstar thread: http://news.ycombinator.com/item?id=255587 http://news.ycombinator.com/item?id=255587 The ultimate secret to hiring: http://www.netjeff.com/humor/item.cgi?file=hire.txt http://www.netjeff.com/humor/item.cgi?file=hire.txt
- ALee 18y agoPuzzles: We've been told to give simple puzzles during the interview (intro CS) and to not make puzzles a requirement to apply. Nevertheless, here were some prominent ones we found - Justin.tv puzzles: http://jtvproblems.weebly.com/ http://jtvproblems.weebly.com/ (problems for flash developers too...) - FB Puzzles: http://www.facebook.com/careers/puzzles.php http://www.facebook.com/careers/puzzles.php - Meebo puzzles: http://www.meebo.com/jobs/#web http://www.meebo.com/jobs/#web - ITA Puzzles: http://www.itasoftware.com/careers/puzzles07.html http://www.itasoftware.com/careers/puzzles07.html - ICFP contests
- RWilson 18y agoThose links are all to companies who have the puzzle sent in with the application, not given in the interview. Also, on that note, Joel Spolsky advises (http://www.joelonsoftware.com/articles/SortingResumes.html http://www.joelonsoftware.com/articles/SortingResumes.html) that this will reduce the number of applicants you get, but not increase the quality. The reasoning is that, since great programmers will have options, including the problems will be equally likely to dissuade good candidates and bad candidates from applying and what you're left with will be desperate candidates that are willing to jump through any hoop. Perhaps just one take. Anybody that has used the with-application puzzles, how did they do for you? As for in-interview questions, Joel also had some good advice (http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html http://www.joelonsoftware.com/articles/GuerrillaInterviewing...), use two types of questions: (1) softballs, and (2) complex questions requiring a grasp of multiple layers of abstraction, like C pointers or recursion. With type 1, he recommends caring more about how quickly they do it than if they eventually get it right. For type 2, the goal is more to see how they think, and you're free to help them along with the trivia that is easy to forget but easy to find on Google in 15 seconds.
- ALee 18y agoInterviews- two resources we found here: http://news.ycombinator.com/item?id=89615 http://news.ycombinator.com/item?id=89615 Joel Spolsky's Guerilla Guide to Interviewing Developers: - Version 3.0: http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html http://www.joelonsoftware.com/articles/GuerrillaInterviewing... We honestly don't know what were great interview questions or were terrible ones. For example, google asks "can you teach us something?" while James Hong of HotorNot said once that he would have loved to asked the question "If you had to rob a bank, how would you do it?"
- ALee 18y agoSelling It- Joel Spolsky's Field Guide to Developers (or what a developer wants) - http://www.joelonsoftware.com/printerFriendly/articles/FieldGuidetoDevelopers.html http://www.joelonsoftware.com/printerFriendly/articles/Field...
- luccastera 18y agoJoel also has a book on the subject: http://tinyurl.com/dx4gyf http://tinyurl.com/dx4gyf
- ALee 18y agoDealing with Resumes: Joel Spolsky's Sorting Resumes - http://www.joelonsoftware.com/articles/SortingResumes.html http://www.joelonsoftware.com/articles/SortingResumes.html
- ALee 18y agoBest places to post- Aside from the HN startups, so far, we've found the biggest pickup to be from Craigslist, Snaptalent, Startuply, Startupers, and JobScore. Others have said we're likely going to work off referrals (our personal networks).
- swombat 18y agoMy old article, still somewhat useful, imho: http://inter-sections.net/2007/11/13/how-to-recognise-a-good-programmer http://inter-sections.net/2007/11/13/how-to-recognise-a-good...
- sr3d 18y agoI like your article a lot. I think passion is what really separates the 9-to-5er from someone who genuinely cares about programming.
- suhail 18y agoMost startups today (those you've actually heard of) generally do 2-4 phone screens which encompass a technical interview. You can utilize Google docs and watch them code. Take the feedback of everyone who interviewed (your team) into consideration and either offer the position because you feel they are motivated and technically sound or you can fly them in for a 3-4 hour person-to-person after a phone screen or two. This is what Slide, Facebook, Google, etc. do. None of them mandate puzzles, seems like they use them as a way to "Wow" them. In the past, I've seen companies give "quizzes" they can do in a limited amount of time. Generally 10-15 question quizzes as a quick way to judge, without wasting your own time, if they are competent enough but hopefully a resume is enough. Disclaimer: This isn't necessarily my opinion of how it should be done, just how companies that have been around the block do it.
- antiismist 18y agoEtherpad is a nice alternative for google docs fwiw (especially if the code sample is in javascript).
- timcederman 18y agoThis is great advice. Incidentally, depending on the position, during the interview Google has questions that are similar to puzzles, but relate more directly with the position. e.g. instead of estimating how many gas stations there are in the US, it will be estimate something to do with a Google product.
- deleted 18y ago[deleted]
- ALee 18y agoAny thoughts on video chat interviews instead of flying people out (ah the startup wallet calls again)? And... what is your opinion of how it should be done?
- suhail 18y agoYou should only fly people out if you are strongly considering them. You're going to pay this person $20-$35/hour all summer, what's $300-400 just to make sure they are exactly what you want? You do not have to fly people out, Google/hi5/Ning don't seem to do this but Slide/Facebook still do. It's clearly how convinced you and your team are of this person. You can try and make video conferencing part of the phone screen process of course. I am no expert on how interviews should be done and it depends on the kind of intern you want: Someone who can learn fast? Someone who is already skilled with your stack? Someone purely motivated? Ideally all, I'd pick one and base your questions accordingly. Companies I mentioned above let potential hires code in any language and simply check that they know the fundamentals: recursion, data structures. Gauging their passion/motivation/drive is done through their resumes and side projects like others have mentioned. My personal opinion, you want to pick someone who is capable of learning most things without asking you otherwise it's going to be a struggle of he/she constantly asking you questions.
- Frocer 18y agoI feel the economic situation didn't make the hiring process easier, but actually much more difficult. We thought it would be easy since there are tons of talents being laid off from top-notch tech companies, and what happened was the exact opposite -- there are THAT many more resumes out on the market, and it takes THAT much more time to find the perfect fit. Keep in mind because we were still a small team, every hire must has the right balance of cultural fit, technical abilities, and entrepreneurial spirits. Finding good guys who can get the job done is easy, but finding the great guy who can take our product to the next level is much more difficult. After going through thousands of resumes, and conducted probably 100 interviews, we finally brought on-board our first couple of team members. Some tips to share from my experience: 1. Don't bother with job boards, such as Craig's list, Dice, etc. In this economy, there are too many resumes floating around, and reviewing them is an incredibly time consuming process when you can spend the time building the product. Negotiate a low rate with a recruiter and outsoruce that process. We wasted over a month using job boards, and got tons and tons of junk resumes. Probably only 1% of the candidates we got from job boards were interview-able. We got fed up, so we engaged about 5 recruiters simultaneously, and within the first week we got the perfect guy. If you really want to use job boards to try your luck, I had the best experience with Startuply though it still didn't result in a hire. 2. Be extremely selective, if there's something that doesn't seem right, it's probably your gut telling you he/she isn't the right person. For hackers -- my favorite question to ask is "when did you first started hacking?". I have found most great hackers started hacking when they were very young (middle school to high school time frame). I found most people who started hacking in college is because they were forced to, not because they are interested in it. Of course this doesn't apply to every case. 3. Do reference checks. In fact, ask the references for additional references. A candidate can master the art of interview, but reference check may tell a totally different story. Also, I don't recommend technical puzzles. I recommend you to just ask a technical challenge you are facing right now. e.g. How would you architect JamLegend? How do you solve so-and-so problem? etc. While puzzles can test brain power, I think it's much more practical to have them solve a real problem that you face on a daily basis specific to your product. Hope that helps, by the way, if you get referrals from personal network you can probably skip a tons of things I mentioned above, and they are usually the best early hires. Good luck with your hiring process!
- arupchak 18y agoIf you are at the point where you are communicating with people (via phone screen or full interviews) make sure to ask about any side projects the candidate might have. I cannot stress enough how many strong candidates I have seen with this being their leading indicator. Do not directly ask "Are you working on any technical side projects?" because they will know immediately what you are asking for and they will give you something that you want to hear. Phrase it more from the standpoint of what they do in their downtime or even what they enjoy doing other than writing code. That is where you should be able to see what kind of drive this candidate potentially has.
- jdileo 18y agoI have hired hundreds of people during the course of my career. In my experience, the most effective way to make solid hires consistently is to a) conduct an analysis of the candidates history of accomplishment and b)evaluate brains. I understand you are currently seeking summer interns, no problem. Today, young people that are proven achievers have much to examine: 1) Projects they've built or been a part of--just because they were curious if they could do it. 2) What are they passionate about: who have they read/studied in the area? 3) Are they aware of market leaders in your sector and can they discuss what they believe is right/wrong in their model. 4) Extra-Curricular's (speaks to buy-in of culture) 5) How do they define providing value/work ethic? The above represent top 5. Be certain that when you find a candidate you'd like to hire that you can articulate the value proposition you offer to them. Be prepared to demonstrate how being a part of your team will benefit them. Don't bullshit, anybody smart enough that you want to hire can smell it a mile away. Be Good. Absolute best of luck.
- DarkShikari 18y agoHere's my advice as a two-time former intern at two different places. As a small startup looking to hire hackers, you obviously want the best. You want experienced hackers who already know how to code and perhaps have experience on a project before (e.g. open-source). Of course, you want the brightest. But this is always a challenge because the smarter, more experienced, and more valuable a hacker is, the rarer they are and--odds are--the less likely they are willing to work for you because they're less desperate for an internship; they can afford to shop around, or may even just decide to do their own projects for a summer. So here's how you can try to attract those people. 1. Pay decently. A lot of companies like to pay interns nearly nothing these days (or in some particularly obnoxious cases, actually pay them nothing). This of course doesn't mean pay them as much as a full employee, but it does mean they should not feel insulted by the amount of money you're offering. If they could earn more than 5x your pay as an independent contractor, you're doing it wrong. While not all hackers do internships for the money, it's definitely a huge plus. And if you don't think you're going to get enough out of your intern to justify the pay, don't hire them; you should not hire an intern unless you have no doubts about their ability to produce significantly more value through their work than you're paying them. 2. Deal with the interns' practical issues with regards to working for you. For example, if they're coming from out of town, deal with their housing and flights. Hackers dislike dealing with bureaucracy--you'll save your intern's time and effort and sanity by dealing with these issues. 3. If your interns' time is so much less valuable than your employees' time that you cannot spare significant employee time to helping the intern with what he is doing (in the same way they would help another employee), don't hire an intern. In terms of picking an intern, often you have to actively seek them out to be successful, especially if you're looking for the kind of hacker that doesn't go around applying to every internship he sees. For example, if your company makes very significant use of open source software, you can look through those open source projects for potential interns.
- ALee 18y agoThat's great advice. What about the type of responsibilities? It seems that what we've heard is just being able to make an impact and being able to show exactly what they've done to future employers.
- eyao 18y agoHere's my personal advice. While there are plenty of companies hiring strategies to look at to get ideas on how to accomplish getting the "best person" I would first take a step back and evaluate on what's important to you and your team and then filter based off that - be creative if you have to in order to get what you want. While Frocer touched upon a majority of what we did, I'll throw in my interviewing experiences. We are partly in the video game industry so my #1 requirement was the applicant MUST have video game playing experience (of the 'core' variety) and the more the better. I just couldn't see anyone who only played Wii Sports or Bejeweled on the iPhone could comprehend what we do and therefore unable to help the team in any sort of discussion beyond the technical. So that was what was most important to me and that was what I filtered on and not surprisingly, I had a good feeling immediately after each interview on whether or not I wanted them. My interview consisted of no stupid puzzles or whatever cause it was of no use to me. Show me you are technically proficient (of which a lot were, otherwise why waste time applying for the job) and then show me you understand video games by carrying an intelligent conversation with me about let's say your favorite xbox 360 game, which smash bros was the best, or why world of warcraft is both the greatest and worst game ever, etc. You'd be surprised on how many people couldn't do that. Also I'm seconding the reference/portfolio thing. The more you can find about their past, the better the idea you will have about their future.
- blahblahblah 18y agoI'm curious. Did you ever try hiring someone who was an occasional gamer (the Wii and Bejeweled gamer) and they didn't work out or did you just assume that they wouldn't be a valuable addition to your team and automatically exclude them? The reason I ask is because I wonder if having some diversity in the level of gameplay ability in your staff might actually produce better games (i.e. ones that mere mortals can play). Of course, I have no idea what your target market is, but its pretty clear to me that occasional gamers are a largely untapped market that the large game companies are mostly ignoring. There's no doubt that Halo, Call of Duty, WoW, etc. sell a lot of units, but there are also a lot of people (I am one of them) who have absolutely no interest in playing those kinds of games for the very simple reason that we have other things to do with our lives. We still play games, but we avoid games that require a significant time investment in order to achieve competency at gameplay. For example, I do not play first-person shooter games at all - the user interfaces are too complex to learn when you're the sort of person who only plays games for a couple of hours on Saturdays and may go for a month or more between sessions of playing any particular game. Battle for Middle Earth II is at the upper limit of interface complexity that I am willing to tolerate before I give up on a game because it seems like I'm spending more time trying to remember the mechanics of the controls than I am just having fun playing. I tend to gravitate towards simple turn-based or mouse-click slash & hack RPGs (Pool of Radiance, Dungeon Siege, Diablo II), sim games (Sid Meier's Civilization, Masters of Orion II, The Sims), and simple arcade or puzzle games (Dig Dug, Arkanoid, Minesweeper). If it takes more than a minute to relearn the controls of a game when a month has passed since the last time I played it, odds are that I'll get frustrated and stop playing that game and avoid others like it. Similarly, if the default game AI is tuned to perform at the level of a hardcore gamer and there's no way to turn it down to a level that a perpetual n00b like me can compete with, I'll ditch the game and never buy another one like it (many real-time strategy games are guilty of this offense).