The worst part of hiring

We ask a lot of job applicants at Basecamp. First, they have to make it through a long, detailed description of the opening. Then we request a dedicated cover letter that’s unique to Basecamp. And then there’s the polishing of a CV. It can easily take hours to apply to a job at Basecamp.

It used to be even worse too! For programmers, for example, we’d ask everyone upfront to submit code samples as part of their first application. Finding a good piece of code, either through open source, learning apps, or whatever, takes time. (Thankfully we don’t do that any more. You have to make it to the second round for us to talk code.)

So it’s not an unreasonable expectation to hope for some detailed feedback if the application isn’t successful. It’s entirely human to wish for feedback on “why didn’t I progress in process?”, “what could I have done better?”, “what else were y’all looking for?”.

And yet the math simply makes that impossible for us. A recent opening for a senior programmer drew over 400 applications (for customer support, we’ve seen over 1,000 applications per opening!). For that programmer role, someone spending just 20 minutes giving diligent feedback per application would keep them busy for almost 7 weeks, if they worked on that for 4 hours per day, 5 days a week!

That really sucks! It’s easily the worst part of hiring to reject hundreds of applicants who’ve put in a lot of their time with a generic “thank you for applying, but unfortunately we’ve moved forward with other candidates!”. Ugh.

So the least we can do is to be honest that this is the process. And, evidenced by the feedback from several applicants in the last hiring thaw, we clearly failed at that. So apologies to everyone who had reasonable expectations of some actionable feedback, and were left cold with a generic rejection.

Next time we’ll spell it out in the post. And applicants can make a more informed decision as to whether it’s worth their time given the risk that the sum of a response might well boil down to “thank you so much, but sorry!”.

Hiring is hard.

36 thoughts on “The worst part of hiring

  1. As someone who spent 20+ hours working on my cover letter for the open CS positions, I don’t feel entitled to a response or any feedback on my application. I quite enjoyed the experience and it reinvigorated my love for writing. It would be unreasonable for anyone to expect feedback in this situation, especially when the company makes it very clear on the obscenely large number of applicants in the pool. Just the mere fact that y’all read every single application is an impressive feat in itself.

    1. I whole-heartedly agree on this. I spent time polishing my documents and thinking through, writing and editing (multiple times) what I would hope to be a great cover letter. As enthusiastic as I was to apply to work someplace as great as Basecamp, I am not surprised there were hundreds of others. As a hiring manager myself, I know that it can be overwhelming just to have dozens of applicants for a position. It’s impossible to give directed, personal feedback, especially just based on some documents coming in when no kind of interview has taken place.

  2. You can keep it generic, while also making it more human. Mention that you appreciate the time they took to prepare it, explain why it is a short response, etc.

  3. Maybe hiring really is hard – but as an advocate for remote work, I’d expect more vision than apology from basecamp. This is obviously a problem lots of companies face at scale and is in fact a side-effect of hiring remote workers. It’s also a great opportunity for you guys to paint a path forward for other companies to follow and to pick a new fight / scratch a new itch. Hiring is broken in tech and there is a vacuum of vision on how to address it. I’ve spent 3+ years trying to find a new dev job after being laid off and my experience is not unique.

    1. All ears for ideas on how to make the process better! I don’t know if it’s a matter of remote or not. If we had 400 applications for a position in Chicago, we still would have to reject hundreds of applicants.

    2. Aside from automating the process as much as possible, I can’t find any other option to speed this up. The key is how to automate it so it won’t become worse experience for applicants and employer, than it is now.

    3. I think it is a problem that most companies with traction has. It doesn’t matter if you are remote or not. What we did during the last hiring round was to provide more detailed, and genuine feedback to people who ask for it.

      In our case, most people didn’t respond to the general answer, and only some of them wanted to know more.

      It takes time, although. But I also believe that it is exactly the thing that speaks a lot about your real company values.

    4. Well how are you rejecting people? Just randomly because you have too many applicants? (Surely not.) When I was in charge of hiring I wrote a lot of generic rejection responses that fit into different categories. In this way, you don’t have to send any generic rejections and leave the applicant completely in the dark. You’ve given them a reason for the rejection, but have only spent time writing the original 10 or so responses. Upon rejection, you choose one of the generic reasons.

  4. Thanks for sharing this DHH. As a couple other commenters mentioned, overall I enjoyed the process and though the terse denial stung a bit I know how much effort it takes to provide real feedback so I didn’t expect much more.

    However, you mentioned that you no longer ask programmers for code samples in the first stage. I may be misunderstanding but my experience was that this first stage did in fact require a code sample and I know that I submitted one. Is that right?

    1. The application form for the Senior Programmer role did require a code sample, and doing that definitely took the overall time spent on my submission into days rather than hours 🙂

      The job specification did make it seem that the code review would be part of a second round, so perhaps it was just an incorrect submission form.

    2. Ugh, really sorry about that, Jonathan. That’s definitely a mistake on our part. We discussed in advance of this opening how asking everyone up front for code really puts an undue burden on people, if their cover letter/CV isn’t going to carry them to the next round anyway. I’ll make absolutely sure that this does not happen again 🙈❤️

    3. I wouldn’t call what the application asked for a “code sample”, they asked for a little code snippet that was special to me and its story, the one I submitted wasn’t even written by me.

  5. All of Basecamp’s updates recently point to reading all of the applications, and that is really nice to know. I’ll say that as a hopeful, I feel very heard and respected by Basecamp’s approach to be considered, and that made the time I spent on the application worth it. I’m sure there were other candidates that had more elaborate approaches than I did, but I’m proud of my application and I’m so glad and full of gratitude that your team took the time to read it.

  6. DHH, thanks for your honesty and sincere concern for others. It’s one reason why I like reading your books and blog posts!

    Firstly, I’ll say it’s totally acceptable to receive a canned response after applying for a highly sought after position. Obviously, the sheer volume of candidates makes it impractical to respond to everyone personally. But SOMETHING, anything is good.

    Secondly, I believe a personalized response is appropriate when a candidate has been selected to interview and has had personal interactions with members of the team.

    One of my worst experiences ever was going through a very LONG hiring process involving multiple interviews, code-writing challenges, white-boarding sessions, meeting the VP, etc. and then one day all communication ended. I thought everything was going great! What happened!? To this day, I’ll never know. I felt like a Dixie cup that had been used and tossed aside. That HURT and the experience left me feeling sick inside.

    Chances of me doing business with that company in the future? Slim to none.

    1. Oh yes! I’ve had this experience in marketing. Early in my career, I really thought [Bad Company] was going to hire me. I drove four hours multiple times, slept on a friend’s couch, wrote this big campaign for free, I even learned how to animate some ads over the weekend to show off how things would look. Instead, after a month of projects and interviews, I got ghosted, and on top of all that, [Bad Company] used my very specific campaign about a month later.

      THAT is bad hiring. 🙂

    2. Yes. Exactly. If one is willing to take the legal risks of giving feedback (which I’m sure your lawyers would *strongly* advise against ;-> ), then I think it makes the most sense to give the most in-depth and meaningful feedback to those who you’ve spent the most time with. That would be the “short list” of final candidates.

      I’ve flown half way across the country to spend hours, or even a whole grueling day in interviews, to be dropped with nothing but a completely generic “Sorry; no.” message. It’s hard to improve without feedback. :-/

  7. Anyone with half a minute to think it through would see that it is impossible to give personalised feedback for over 1000 applications, so I don’t think I would say I was disappointed.
    In fact, in the UK it is quite usual to receive not a single sausage – not so much as an acknowledgement of receipt, let alone a rejection. Over here, if they aren’t interested they simply don’t get back to you so I was quite happy to at least have the closure of a ‘no’!
    That said, I hope we’ll see some EU jobs opening up so I have a chance to apply again – I really enjoyed doing the last application!

  8. Is it possible or appropriate to have auto reply on my application with info such as how many applicants are in total for this position and how many people does company want to hire on this position (some companies have always opened some hot positions)? Probably it would bring some daylight to the hiring situation in company. For example if you want one senior software engineer but over 400 people have applied, it seems that I have just small chance to get in, and would not wait for detailed response though。

  9. Technology companies constantly complain that they can’t find qualified applicants. I find it interesting that BaseCamp has so many applicants to choose from. Perhaps if the technology companies that claim they can’t find qualified applicants supported remote work they would not have this problem. Or maybe it’s just that they don’t have DHH 🙂

    1. Many companies get hundreds of applications on IT positions. Unfortunately nearly all applicants are waste of time. When we had a position open for systems administrator I went literally through hundreds of people claiming to be a senior level who were not able to write a simple json parsing script as a home work. Some of them came through recruiting agency. Our rep complained once that he was able to find work for all my rejects without problems and sometimes at even higher paycheck levels. I answered that it is probably true because we have many clients with IT departments struggling at very basic requests like ‘create dns record’. Somebody gave those people jobs…
      It is very hard to hire the right person, or even somebody who is still able to learn.

  10. Just a suggestion that could be helpful, I’m sure you all have automatic disqualifiers. The first round could be used to gather all the pieces of information that would let you know whether someone is automatically disqualified or someone you want to hear more from then go from there.

  11. Thanks for the update to keep us in the loop with your hiring process. Thank you also for the “Hire when it hurts” Rework podcast.

    If possible, may be you could publish a blog that outlines how applications were filtered. For example, applications were filtered out in the following order:
    1) Misspelt their own name or spelt Basecamp with lowercase ‘b’
    2) Living in unsuitable timezone (judged by City and Country provided on the application form)
    3) Applicant is not a good writer or does not have a blog or does not read poetry
    4) Answers to customer queries were not in suitable tone/style
    5) …and so on.

    This will help us self-assess our applications for future openings.

  12. So, half this advice I’m going to give could be good or bad depending on how you’ve hired in the past. You might not need the first to keep people from depending on your history and staff composition, but the second is a must:

    1. If you’ve never hired somebody for a position without one of or both a college/university degree or significant experience in the field, you should say so. You may think you are egalitarian, but if your history proves that you aren’t, this is something that should be said up front.

    2. You and others associated with this hiring process said something to the effect of “Our team is built a certain way. We are looking for a new kind of person this time”. I don’t know what this new kind of person was, but you and your team did; this means everyone who applied who wasn’t in the range of whatever this was was wasting their time, and you let them by not disclosing your job requirement.

    Maybe you wanted a professional drywaller, or maybe you wanted a Harvard business school grad. Maybe you wanted a member of a preferred disadvantaged group. You might have wanted a robot from space, or an earthworm rancher. It doesn’t matter – you knew you wanted something specific, and you played it close to the vest. This made hundreds or thousands of people waste their time. That was incorrect to do.

    2.

    Even if you believe your history is coincidental, if it overwhelming points one direction you should still say “Hey, we really, really don’t think we discriminate based on these factors.

    1. That posted weird. Fixed here:

      So, half this advice I’m going to give could be good or bad depending on how you’ve hired in the past. You might not need the first to keep people from depending on your history and staff composition, but the second is a must:

      1. If you’ve never hired somebody for a position without one of or both a college/university degree or significant experience in the field, you should say so. You may think you are egalitarian, but if your history proves that you aren’t, this is something that should be said up front.

      Even if you believe your history is coincidental, if it overwhelming points one direction you should still say “Hey, we really, really don’t think we discriminate based on these factors, but you should know our history: We’ve never hired someone who doesn’t like tiny purple hats”.

      2. You and others associated with this hiring process said something to the effect of “Our team is built a certain way. We are looking for a new kind of person this time”. I don’t know what this new kind of person was, but you and your team did; this means everyone who applied who wasn’t in the range of whatever this was was wasting their time, and you let them by not disclosing your job requirement.

      Maybe you wanted a professional drywaller, or maybe you wanted a Harvard business school grad. Maybe you wanted a member of a preferred disadvantaged group. You might have wanted a robot from space, or an earthworm rancher. It doesn’t matter – you knew you wanted something specific, and you played it close to the vest. This made hundreds or thousands of people waste their time. That was incorrect to do.

  13. @dhh

    Sounds like you need to create a better recruiting & feedback tool than what’s available on the market today.

    Hint hint

    🙂

  14. This is a great post, and shows the honesty that you guys always work with.

    Would there be any aid to applicants if you made a post about the top5 reasons people were rejected? While it might not be correct for everyone it might allow some people to understand where they might be able to improve?

  15. I wanted to take a minute to thank you for posting this. I was one of the many applicants to the CS position.

    Having been part of hiring teams, I see this from both sides. For most companies, applications aren’t even screened the first time through by a person. Anyone who KNOWS Basecamp & how you work also knows that a person or group of people actually do look at all of the applications.

    I can’t say that I expected feedback at the first stage of the process. Anyone who follows Basecamp would have seen the tweets from team members along the way- for the CS position, the numbers continued to go up- first it was 1,000 applicants, then 1,400, then the final coming in around 2,200.

    Anyone truly paying attention to the company after applying would have seen these numbers & been able to gauge their chances along the way.

    Like many applicants, I also spent more hours than I had to give to this application. But I wasn’t actively job searching, so needed to update my résumé before even doing the rest of the application. It wasn’t about finding ANY job for me, it was about wanting to get THIS job- specifically with Basecamp.

    Did it sting that I didn’t make it through to the next round? Heck yeah! That doesn’t mean that it was necessarily wasted time- my résumé is up to date now. I’m also proud of the work that I put into the application as well as how much I was willing to put my personality into it- most companies don’t ASK candidates to do that. Plus, it gave a friend who is an artist a little confidence boost when I asked him to help me create my avatar so I could insert myself into the team graphic from the support page at the bottom of my cover letter.

    I agree with what one other commenter said about maybe putting a clear time frame for hearing back in the post- but I was expecting to wait a month to hear back & heard back in about a week.

    I think the process was as good as it could be, given the volume of applicants.

    I’m still a huge fan of the company, will continue to read the blog posts, listen to the podcast & read the books as they come out.

    And I’m far more prepared for applying to Basecamp the next time, even if it isn’t until another 2-3 years from now.

  16. Hiring is not much different than dating…sometimes, you’re just not compatible. There’s only so much information you can convey in a cover letter and resume as an applicant. I don’t think Basecamp has any responsibility to convey a reason as to why an individual didn’t get past the first round. With that being said, if you make it deeper into the hiring process, you should get more feedback. However, it’s an impossible burden to give feedback to every single person that gets denied. I hire freelancers on Upwork all of the time and I don’t have time to message back the 8 or so other people that didn’t get a particular job. I need to spend my time focused on the people that make it past the initial stage.

    The best thing Basecamp can do is write the job posting in a way that automatically eliminates 90% of the people that would apply for a position. I’m not privy to the internal workings there at Basecamp, but there’s gotta be some sort of common reason why people get denied. So, iterating on ways to decrease the initial deluge of applicants would help. They also need to make it very clear that you may not get any feedback at all.

  17. @DHH

    It would be really helpful to see the application of the person who was hired for each position — with their permission and any necessary redactions.

    Everyone who was rejected could then do their own self-evaluation using that as a model.

    Plus, this would fit right in with Basecamp’s openness with the employee handbook, salary, benefits, books, presentations, and blog posts.

  18. If giving some kind of reason why an application was rejected is not feasible, due to the high number of them, maybe a middle ground could be the reasons why the final candidate ended up getting the job?

    Publishing the CV/CL is probably too privacy invasive but a short description of the person would help the other candidates in knowing what they were up against.

  19. “I’m sorry, but you didn’t get picked” is already better than the radio silence the majority of applicants get from the majority of companies using enterprise HR and hiring algorithms.

    I’m sure your generic response could stand to include the perspective you’ve given here, but other than that I don’t think you should feel too bad. As you said, the math doesn’t really work and there’s no way around that.

    And as Dan and Jason indicated in their comments above, working really hard on a job application is beneficial whether you get the job or not.

    For all the folks on the other side of this, if you’d like directed, personal feedback on your application, ask for it (just not from Basecamp). Send it to friends, old coworkers, old bosses, mentors, or people you’ve met at conferences. Post [the parts without identifying information] to Hacker News or Reddit (such as https://www.reddit.com/r/resumes/).

  20. Applying for a position at Basecamp was a little like… Trying out for the cheerleader’s squad in high school. Granted, I’d bounce around in the spirit of punk before I’d be caught dead doing so for (horfing) school spirit. But the experience certainly shot me back in time. I’m not sure many of us have the opportunity to give all of ourselves in hopes of achieving something “so awesome” in adulthood. It’s all necessity and responsibility, and then it’s settling and reminding yourself to be grateful for the steady paycheck. Despite not having the feedback to know where we may have been lacking in our presentations, many of us were stoked to find we could still dream beyond the grateful mantra lifestyle we’ve become accustomed to living; I know what I’m capable of when I really, really, really want something. So, ya… Thanks, Basecamp! You jerks! (jk)

Comments are closed.