How to write an effective job description

When you are hiring a developer, you enter a highly competitive market. A standout job listing is the very first step to attract standout candidates. With any good job description, HR specialists might want to get inside the mind of potential candidates. They might want to know what matters the most to those who are the perfect fit to the position. Crafting a good piece of job description, therefore, is not going to be a one-minute task. It, in fact, requires a lot of effort in understanding your potential candidates. But…where to start?

This blog articles will list out essential details in a job description together with questions you need to ask yourself before giving out your job description.

Job title

You can simply put your vacancy here but remember to be specific. You don’t want a javascript developer to apply for a PHP developer position. Be sure your job title can answer the following:

  • What position are you hiring?
  • What programming language and/or level of experience are required with the job?

Company overview

Most of the job description includes a few lines summarizing which industry the hiring company is in, their vision and mission. I don’t do that for a reason. If the candidates are interested in the position, they will explore more in the company website where all those information are located. I’d rather fill the space with something that is not obvious to find in the website, which can increase the performance of the job ad by 5 times, such as

  • What is the working culture of the company?
  • What the office’s favorite treat is?
  • What is the company specialty that candidates cannot find anywhere else?


Just like you want a good fit to the vacancy, job seekers are looking for a suitable position for them. They will have the answer not by looking into the challenges, the opportunities and the responsibility of the job. Instead, better clues lies in the position’s day-to-day tasks. Besides the big picture, be sure to have the details relating to their daily duties.

Questions that this section should be able to answer are

  • What is the position all about?
  • What will the candidate be responsible for?
  • What are the challenges and opportunities?
  • What is the career path?
  • Who do they work with?
  • What tools/ coding language will be using?
  • What kind of tasks do they handle on a daily basis?


Now it comes to the sections candidates will never miss, the requirement for the jobs. You should only list qualifications that are really desired. The concern of having too many unqualified candidates is tempting to put in lots of skills. However, including everything as requirement may cause job seekers to skip over the posting, even though they are missing only one item. That way, you potentially miss out on candidates who otherwise have been considered. Don’t worry about unqualified candidates applying, websites like provide free assessment tests to eliminate all of them.

The wording in this section should be very specific. Buzzwords like “guru” or “ninja” are fancy to marketing people, just not the same to tech professionals. Developers speak a different language. They would like to be genuine and straight to the point.

Ideally, someone from your tech team should proofread your posting and be able to answer the following question:

  • Which skills are absolutely required?

If a person does not possess this one (or two) skill, can they still do the job? If so, is there any secondary skills required?


I can’t describe how much it surprised me when I see a job listing with no sign of benefits. As this section emphasizes how much you care for your employees, excluding it would give a bad signal to the viewers.

It is worth to learn from your recent hires to know what benefits are worthy to a developer and mention the benefits that candidates can’t find anywhere else:

  • What benefits my recent hire love the most?
  • What benefits that are unique to the recruiting company?

There is no rule to an amazing job description. However, a clear language, not too vague nor descriptive is expected. Last but not least, it is more about picking what matters to developers you are hoping to attract so doing the homework is required, starting by answering all the above questions.

Happy recruiting!