A job description is a fairly modular document which, for every job opening that you have, you must abide by. They are different for every company, but the core components should not change that much. Here are some recommendations of the main components that are extremely important to properly transmit your ideas:
The main components are:
Tell about your company in a sentence or two and especially focus on what makes you unique. This is imperative to make sense and should not be specific to a niche that no one knows.
Bad: We are implementing a BaFin compliant CRR
Good: We are implementing a digital banking solution compliant for the German Market.
Title of the position
Sometimes this is a very important standardized title, which I would highly recommend abiding by.
Say that you are looking for a senior developer that will create a core banking BE infrastructure in Java,
Bad: you are not looking for a Senior Banking Developer
Good: Senior Java Developer
Whom do they report to
Which should be another title, or in the case of a brand new startup, you - the one reading this. Some people like hierarchy and don't want to deal with C-level, but some others do.
Think about how this person will spend their time in the company. I know this is not eli5, but you do not have to be fancy here (as you will find in a lot of fancy cases only).
i.e. If you need someone to develop your website's front end in angular, you do not have to say "Utilising a variety of markup languages to write web pages" - just write: you will develop x website in angular
Define how a day would look
A lot of people want to know how a normal day would be when they get into a new position. Make it clear for them.
Skills or Qualifications
Now a lot of people here go nuts and expect x person to be amazing at everything. Be specific here as well, with the things that are dealbreakers for you, especially on the hard skills (skills that you must have i.e. angular developer must know angular)
Note about the perks of working for your company. Perks are important, but they must stay in the end. They should help you get more people and not just get people for the perks.
End with operational details, like location, salary range, or whatever else.
Different companies have different elements that they want to focus on, but whatever you do, you must include the list above so start getting some people in.
Be open to your new candidates. Your Job Description should reflect that.