Writing a Good Job Description

Hiring great people is often hard for most employers. Finding the right person, with the right skill set, a good attitude, and at the right price can be a lot like searching for a needle (or perhaps a small to medium sized stick) in a haystack.

There are lots of options for sourcing candidates: using a professional recruiter, tapping your personal network, or perhaps the most common method–placing an ad. As an employer it is imperative that you write a compelling job description that will appeal to the top talent you are trying to attract (btw, besides just being an ad, this can also be sent out to your network too). So what are the key elements of a good job description? And how do you stand out among the sea of other jobs? Here are some tips that I have used in the past that have been successful:

Have a catchy title. Like a newspaper headline you need to both summarize and standout. You need to catch a candidate’s attention by being different, but still being clear about the position. A title like “Software Manager” or “Software Development Engineer” does a great job summarizing the position but is hardly interesting. Whereas “Do you want to work on the bleeding edge of technology?” sounds interesting, but doesn’t really convey the position (this could be anything from a tester to a biotechnologist). Try to pick something that clearly describes the position and is interesting — for example “Rockstar Software Engineer Wanted for Newly Funded Alternative Energy Start-up”. This title is much more appealing; it describes the field (alternative energy), the company (newly funded startup), the position (software engineer), and it adds some character with the word rockstar (and what candidate doesn’t want to think of themselves as a rockstar?).

Clearly spell out the “must haves”. Are there any facets of the position that are non-negotiable? Clearly spell out what is required and what is desired. Also seriously think about if it is really “necessary”. If a candidate had 5 years of great coding experience and hosts their own website, is it really necessary they also have extensive experience deploying to the cloud? If it isn’t necessary then don’t make it a requirement. You could end up missing great candidates that could easily learn the skills you desire. You want to encourage these people to send their resume, so if something isn’t absolutely 100% a “must have” then list it as a desired skill (I typically separate out candidate skills into required/desired and use bullet points so the job description is easier to read).

Add some information about the company. What is it about your company that makes it special? Is it the hard problems? The great people? A fabulous office space? Do you contribute to open source? List out some information about the actual organization and why you think people should want to work there. Make sure you include: a link to your website, any great articles or recent press mentions, and anything else that makes you stand out (for example, I worked at a company that won awards and was featured in high profile publications and I always included links to this info in the job post).

What is the actual job? Sometimes this is obvious. Other times it isn’t. Sometimes you actually may not need to include this information since you could be hiring multiple people for more than one position, have too many projects, or your priorities might change–but you should try to give a clear idea of the job responsibilities. Of course sometimes being specific can help you target people, other times this can be a detriment since most jobs can’t be summarized in the 200 words or less devoted to this, so I tend to outline top level descriptions. Some examples might be: to write code, to help with releases and deployments, to write test plans, to collaborate on product design, to write technical specifications, to create infrastructure diagrams, to help support a 24/7 high traffic web application, etc.

Why should someone want this job? When you think you are finished, read you posting and ask yourself this question. It should be obvious. If it isn’t totally clear then you need to add this information. You can even put this info in bullet points at the very top–you want to work here because…..(and hopefully you have good reasons, but some examples could be: challenging problems, lots of responsibility and opportunity for career growth, the chance to be part of the next big thing in [fill in the blank], great company culture, etc.)

Add some character! One of my favorite things is to put pictures of our team at the bottom of the job posting–and candidates would constantly tell us it helped us stand out from the other job listings. We also would add little requirements and desired qualifications that were somewhat unrelated to what might be in normal job description like: “must be able to wash your own dishes” or “must like working around adorable dogs” (it was a pet friendly space). Each company is different (no matter how big or small you are) so use that to your advantage and make yourself stand out.

These are just a few tips that can help you write (or improve) a job description and that is usually the first step to attracting fabulous talent–I am sure there are lots more though! Do you have any other ideas or tips for writing your job descriptions that have worked well? If so, please include them in the comments!

Comments

It’s a good idea to make your job description stand out from the bland “professional” morass of job listings out there. But there’s a fine line here.

Astute job seekers will weed out overly pretentious job descriptions that are too bubbly, promise “the next Google”, recite the alma maters of the team members, or state that “only the best need apply”. My all-time pet peeve of job descriptions is using the term “rockstar”. It’s a horrible cliche that’s now become an anti-pattern. A job description is a form of marketing – do you really want to sound like every other employer on the block?

Very true, Adam. The trick is to make your company and job stand out for what it is– unique and special. A year or two ago no one used “rockstar” now tons of people use it.
Regardless of who you are trying to hire, taking steps to stand out will help you attract more candidates.

A little late in my comment, but I HAD to put in my 2 cents… I have a software developer for 10+ years…
Job descriptions that tend to require “the best”, “rockstar” etc., tend to attract candidates that are not necessarily the best team players and possibly not even that good. Sure, everyone likes to think of themselves as good, but there really is no such thing as the best. There is always something new to learn and someone is always smarter than you. If I was looking for candidates I’d steer clear of the supposed rockstar types. Team playing is a hard earned skill and why would anyone want to work with someone who is so arrogant as to bill themselves as such ?
More useful would be to be specific in the technologies your company is looking for and not make your job and alphabet soup. If you want the developer to hit the ground running state it clearly otherwise

topics

search this site

follow along via RSS

about me

Kate is known as one of the top technology leaders and CTOs. Her technical background is in creating and operating large-scale web applications. Her focus has primarily rested on SaaS applications and big data. She has extensive experience building and managing high-performance teams, and considers herself a fan of agile development practices and the lean startup movement. She is currently founding her own startup, popforms, but has held roles as developer, project manager, product manager, and people manager at great companies including Amazon and Microsoft. The last seven years she has been a VP of Engineering/CTO for companies like Moz, Decide (acquired by eBay), and Delve Networks (acquired by Limelight).
Kate is a keynote speaker, and she is also the curator of the Technology and Leadership Newsletter (TLN - www.techleadershipnews.com) and has a personal blog at katemats.com.