I'm a terrible coder. I can hack something that works (I built Bandzoogle v1.0 by reading "Coldfusion MX for Dummies"). But it won't be pretty.
Luckily, I realized this early on, and have surrounded myself with a great team of developers that built our app to where it is today.
In doing so, I've learned the art of creating a developer job post. It's a fine line between attracting top talent and weeding out the unqualified. Here are some tips:
Post where the smart folks are.
Generic job sites (Monster, Hotjobs, etc) suck. It takes just a couple clicks to apply to a job, so you'll get a lot of unqualified applicants. Focus instead on job boards on targeted dev and startup blogs. This filters those devs that are actively learning and honing their craft. I've had a lot of success on the 37signals job board, and closer to home at Startupnorth (thanks David) and Nextmontreal.
Want a dev that can create awesome back end code, manage your servers, and create a beautiful UIs? Fat chance. As the saying goes, jack of all trades, master of none. A great back end programmer won't be able to design pretty buttons for your UI, and a UX guy probably isn't right to be refactoring your slow-running database queries. Think hard about what your real needs are, and get a specialist in that area. If you must hire a generalist, know that you'll likely end up refactoring code or redesigning your UIs down the road, so your cost savings will be short term.
Sell the perks.
Lets face it, we can't all be a buzzworthy startup. That doesn't mean you can't get great devs to work with you. Every startup is unique, and each presents a unique opportunity for developers. You need to distill that down into a few paragraphs that will grab their attention.
If you're in a freshly minted startup, sell the excitement, the vision, the upside.
On the other hand, if you're an established company (like ours), you can sell the stability, the track record, the happy users. Not everyone wants the startup roller coaster.
Excite the inner geek.
A good developer wants to hear about your technical challenges and respect for quality code.
Answer: What is a typical day like? What projects to you have in the pipeline? What hard stuff are you working on? Why do you care about code quality (writing tests, doing Agile Development, etc). This is easily overlooked, but is probably the most important thing in your job post.
More than education, more than great work experience, seeing code is the best way to judge a prospective developer. Every great dev I've met has contributed to an open source project, or has their own project on the side. Now with sites like Github, it's easier than ever to share code. If an applicant doesn't have something you can see, that should be a red flag.
Want to see all of the above in action? You're in luck, we're hiring! Check out our job post for a Rails developer.