How to Write a Developer Job Description
I. Tell Them Who You Are
Describe your business in two to four sentences. Give your business name, industry, and any notable achievements. e.g. “XYZCorp is a SaaS provider that specializes in developing widgets for the Foobar industry. Founded three years ago, we’ve already become the 2nd-largest Foobar widget provider and we’re looking to expand our team!”
II. Tell Them What You Need
Describe in one to two paragraphs who you’re looking for and why.
III. List Requirements
Describe must-haves for the job. This includes minimum experience level, required technical expertise, and any other skills required. Avoid merely creating a laundry-list of technologies you employ. Instead, describe your needs the way you would when talking to a friend. e.g. “We’re looking for a Python developer with experience developing web applications with the Flask framework.” Where possible, be flexible with specifics. For instance, if you’re more concerned that a developer have experience with Python web frameworks in general than the Flask framework specifically, you could update your requirements to “We’re looking for a Python developer with experience developing web applications with a modern framework.”
It’s also fine if you’re not certain of which specific technologies you need a developer to be familiar with. Instead of trying to guess, provide as much detail as possible while allowing developers to tell you which technologies are best-suited for the job. For example “We’re looking for a web developer who can write a widget SaaS platform.”
After the main requirements, it’s good to state preferences or nice-to-haves. This is where you talk about your specific technological stack or the experience a candidate could have that would make your ears perk up. For example “Candidates with experience in the Foobar industry preferred.”
IV. Tell Them Why They Want to Work for You
This is your chance to entice candidates with any perks, benefits, or opportunities your business provides. Don’t be worried if your business is a startup or a very small business with few benefits: You can highlight that as an opportunity to wear many hats and grow with the company, as well as avoiding the bureaucracy that comes with larger companies. Keep it to one paragraph. If your budget is constrained, be up front about the salary range you’re able to provide. Don’t be afraid to talk numbers here: You don’t want to waste your time on a candidate you can’t afford, nor do you want to miss out on an inexpensive candidate because they assumed the pay would be lower than you had planned to offer.
V. Give Them Directions
Tell the candidate what to do in order to apply. This is also a good time to ask the candidate initial questions and give them their first tests. For example “Send a resume and cover leter to hiring@example.com. Include with your application a link to your portfolio, your salary expectations, favorite code editor, and a brief description of what things you read to stay current in the industry.”
If you ask candidates four questions, 80 to 90% of them will answer at most three. That makes this a great way to screen applicants up-front without having to speak with them first. Being a developer requires a great amount of attention to detail, since a single mistyped character could cause a program to fail or behave unexpectedly. The people who pay the most attention to your job description will be more likely to be those who are more attentive in other areas of their lives. They’ll also tend to be people who don’t have to be reminded repeatedly to do things. Additionally, you will get to know the candidate better and be more assured of a potentially good fit for strong applicants. Just remember that even excellent developers have brain-farts now and then: omitting a single answer shouldn’t necessarily be a dealbreaker, especially when it comes to the salary question, which often intimidates people.