How to get a job at Puppet Labs

I’ve been working at Puppet Labs for 4 months. It has been awesome! But, I almost didn’t get a job here. I’m going to tell you the secret to getting a job (or at least in development) at Puppet Labs or any open source company.

The interview process goes like this (and here’s the prep guide):

  • Initial interview with senior developer
  • Interview with VP of Engineering
  • Half day of 1:1 technical interviews
  • 2 technical interviews
  • Cross-functional interview (maybe with UX or QA or Ops, etc)
  • Pair programming
  • Interview with Luke
  • Yes, the CEO still interviews everyone we hire (and many we don’t). I think it’s awesome that Luke makes times for candidates. It makes him more approachable.

    Here’s what it takes to get a job offer:

    1. Be awesome at something
    2. Make us passionate about you

    Both are well within your power.

    We used to have a panel interview in place of some of the 1:1 technical interviews. I had a ho-hum panel interview. I wasn’t mentally prepared for it. I thought I was coming in for a couple pair-programming sessions, not a panel and then pairing. So I was caught a bit off-guard for the panel, and it showed. It wasn’t terrible, just not enough to make them passionate about me. Fortunately, the NEXT day was a Triage-a-thon. I showed up and managed to close a couple tickets. I also continued to submit pull requests for open tickets.

    I didn’t do it to suck up to the interviewers. I did it because I was trying to learn more about the product and the codebase. I had barely used Ruby or RSpec at that point and I had *never* submitted a pull request. I needed to learn them, and I was upfront about being a noob. This is what got me the job, not the interviews. Puppet Labs knew I was capable of doing the job, and the hiring risk was low.

    That’s the key to making us (or any employer, really) passionate about you:

    Show that you can do the job by doing the job.

    We have a couple thousand open tickets. Find something that you think you can do and submit a pull request. Rinse, repeat, apply.

    I look forward to the pull requests…

    Page 1 of 2 | Next page