
The key is to stop thinking about what you want and start thinking about what the candidate needs to see. A great job posting is not a legal document or a wish list. It is a marketing pitch designed to attract the right person while naturally filtering out the wrong ones.
First, nail the job title. Avoid internal jargon or clever puns. Use a standard, searchable title like "Senior Software Engineer" instead of "Code Ninja." This ensures your posting appears in algorithm searches and is understood by passive candidates.
Next, lead with the "Why." The first paragraph of your job description should answer the candidate’s unspoken question: "Why should I leave my current job for this?" Focus on the impact of the role, the team culture, or a specific project challenge. Do not start with a generic "We are looking for a highly motivated individual."
Structure the "Must-Haves" vs. "Nice-to-Haves." This is where you demonstrate professionalism and credibility. Be honest about the required skills. If you overstate requirements, you will scare off qualified candidates. If you understate them, you will waste time screening unqualified applicants. I recommend using a simple table to separate these clearly:
| Requirement Category | Example | Why It Matters |
|---|---|---|
| Must-Have | 5+ years experience in Python | Non-negotiable for daily tasks |
| Nice-to-Have | Experience with Docker | Can be learned within 90 days |
| Culture Add | Experience mentoring juniors | Aligns with team growth goals |
Finally, define the salary range and the interview process. According to recent industry surveys, postings with a clear salary range receive 40% more applications and significantly reduce early-stage drop-offs. State the number of interview rounds and the format (e.g., "a 45-minute technical screen, then a 1-hour virtual panel"). This builds trust and shows you respect the candidate’s time.
A good posting is accessible on mobile devices. Many candidates scan on their phones. Keep paragraphs short, use bullet points for responsibilities, and avoid walls of text. Remember, the goal is not just to fill a vacancy but to attract talent that will stay.

I always start with the salary. Not a vague range, but a real number based on market data. It saves everyone time. Then, I write the first three bullet points as benefits to the candidate, not the company. If the role offers remote flexibility, lead with that. If the team has a low turnover rate, mention that stability. I keep the tone direct and friendly, like I am talking to a peer. No corporate fluff. Just the facts about what the job is and what success looks like in the first 90 days.

Focus on the candidate experience from the first sentence. I use a tool to check if the posting is mobile-friendly. If it is too long, I cut it down. I also avoid using "we" too much. Instead, I use "you" to make it feel personal. For example, "You will be responsible for..." is better than "We need someone to..." I also add a short line about company values and link to a real employee testimonial. That adds credibility without being salesy.

My approach is data-driven. I look at the time-to-fill for similar roles and adjust the requirements. If a posting has been open for 30 days, I reduce the "nice-to-haves" list. I also use the structured interview format to outline the skills test in the posting itself. For example, "During the interview, you will complete a 20-minute case study." This signals that the process is fair and objective. It also naturally filters out candidates who dislike structured assessments.

Keep it short and honest. I hate reading postings that list 15 requirements for an entry-level role. I focus on three core responsibilities and one key personality trait. For example, "You will manage the weekly social media calendar, analyze engagement data, and you must be comfortable with public speaking." I also explicitly state that we do not require a degree, focusing instead on portfolio work. This attracts a more diverse and often more skilled applicant pool. Honesty builds trust faster than any fancy company description.


