Define the role clearly and write an inspiring JD

Writing a good job description that inspires the best candidates to apply is the first step to finding the right people for your team. But even before you write a job description, you need to figure out what you are looking for. Job descriptions should give a brief overview of the role, how it relates to your company vision, a list of key responsibilities, requirements and qualifications.

Here's why it is important:

If your job description is poorly written or vague, you run the risk of inviting too many unqualified candidates to apply, which can make the screening process significantly longer and harder for you. Imagine having to read through hundreds of resumes to find only 3 candidates who are qualified!

  1. A job description describes the work a candidate would do, if they get hired. This can help reach candidates who are aligned with the company vision. Clearly outline to applicants their role and responsibilities.
  2. Having a clearly defined role and job description helps you to objectively rank candidates during the hiring process.


  1. Use keywords in the title that relevant candidates might be searching for
  2. Talk about what the company does, and
  3. Keep it gender neutral
  4. Describe your hiring process in brief
  5. Go over the benefits and perks
  6. Mention the must-have and good-to-have requirements clearly
  7. Mention your tech stack
  8. Clearly mention (in the JD itself) when they should be hearing back
  9. End with a strong sentiment, maybe an encouragement to apply?

If your job description ends up looking like a selection criteria, you're probably doing it wrong.

How To Write a Good Job Description

Use keywords in the title that relevant candidates might be searching for

While it might seem cool to call the role "Tech Ninja" that is potentially not what your ideal candidates are searching for when they are looking for a job.

Post the position under a recognizable, keyword-friendly title, as that’s what candidates will be searching.

Talk about what the company does

You don't want to rely on the candidate forming the best first impression of your company by stitching together pieces from what they read on the internet. You want to control the story your candidates hear. This is also an opportunity to show off company culture, and the grand vision of how your company is going to change the world.

If you haven't done it already, write a short piece on what it means to be an engineer/ accountant/ recruiter (whatever role you're hiring for) and publish it on your blog/ Medium.

Keep it gender neutral

It is essential that a job description is written as a pitch to any potential employee regardless of gender. Double check that your job description uses only gender neutral pronouns, and focuses on skills as opposed to a "persona", which is typically the male software engineer.

There are several tools like Textio on the market that help you reveal the gender-coded language.

Describe your hiring process in brief

Job searching is an intimidating process, that has been a blackbox for decades. Any information that you give about the hiring process help alleviate stress, and helps the candidate get a bit more comfortable with the idea of going through your hiring process in advance. Here's what you should specify in your job description.

  • When they can expect to hear back once they apply
  • What the screening process will be like
  • How many interview rounds there will be
  • Who these rounds will be with, and what they will focus on
  • How long the hiring process typically takes

Once you start the interview process, your candidates should always know what to expect and how long it’s going to last. Tell them at the start how many interview steps there are, who they’ll meet with, and when they can expect an offer should you choose to hire them.

The JD is the first point of contact with the candidate, and is an excellent opportunity to explain the complete hiring process. If you've thought through your process, you know exactly what happens at each stage. Ideally, write a short post on the interviewing/ hiring process at your company, host it on your blog/ Medium and link to it from your job description. Hopefully, your interview process is friendly enough for candidates to want to interview with your company.

Go over Benefits and perks

According to Glassdoor's 2015 Employment Survey, 57% of people reported that benefits and perks are a major deciding factor for whether they’ll accept a job offer. Moreover, 4 out of 5 employees value benefits or perks more than a pay raise.

There is no reason to shy away from mentioning and bragging about the benefits and perks your company offers.

In case you provide a more flexible holiday schedule or above the average amount of vacation or paid time off days, that should also go in the perks section of your listing. And most importantly, if your company is a proponent of remote work, don’t forget to list that!

Mention the must-have and good-to-have requirements clearly

This is something a lot of companies get wrong, and they end up mentioning 129 skills on the job description.

Remember, this is a list of must-have skill, so only include the bare minimum you need. One way to think about must-have skills: If a candidate does not possess this skill, you do not want to consider them for the role irrespective of their ability in any other skill.

Separating the must have skills (requirements) and good-to-have skills (brownie points) helps the candidate self-qualify if they would be a good fit for the role.

Mention your tech stack

While it is not critical to include your tech stack on the job description (part of it is already included in the good-to-have and must-have skills), adding your tech stack might help attract candidates who are devoted to certain tech stacks. If a candidate has picked up Scala recently and has gotten really excited about it, and most of your backend is in Scala, that could be a winning pitch.

Clearly mention (in the JD itself) when they should be hearing back

Just most job application portals are essentially black holes, the JD is an amazing opportunity to sell your fast-tracked hiring process, and specify that they should hear back from you in 24/ 48 hours once they apply. If you think it would take you longer than that to review their application, ask yourself why. Maybe you should be using AI tools to automate the initial parts of your hiring process?

End with a strong sentiment

It is always a good point to end on a strong, positive note forcing the right candidate to hit the app

One way to do it would be encouraging the candidate to apply with a personal note, here's what Zoox uses on their JD:

You do not need to match every listed expectation to apply for this position. Here at Zoox, we know that diverse perspectives foster the innovation we need to be successful, and we are committed to building a team that encompasses a variety of backgrounds, experiences, and skills.

Check out the job descriptions marked under #encouragement-to-apply on

If you're hiring for roles in tech, check out the Job Description Generator. It is a set of free templates, inspired by top companies and startup that you can leverage to create better job descriptions.

Another way would be to end with a grand vision, talking about how your company and the candidate's work at your company is going to change the world.

Other offbeat ideas to try out:

  • Writing a cover letter to the candidate.
  • Having an open application.
  • Google hidden puzzle .