Obvious and non-obvious ways to write great job ads
Jun 27, 2024
On this page
- But first, an example
- Obvious ways to write a good job ad
- Really tight requirements
- What the actual hiring process is
- Time zones
- Salary
- Benefits
- Non-obvious ways to write a great job ad
- Get the hiring manager to write it, and then a good writer to edit it
- Be genuine, or even weird
- 'Who this role is not for'
- If you are open source, link to your repo
- Pulling it all together
- Moar reading
At PostHog, we've written job ads that have received 9,000 applicants in the last 12 months. One thing we've noticed in 2024 is that the quality of the average applicant has gone way, way up.
We think this is due to a couple of things:
- We've started putting a lot more effort into making our job ads more interesting and differentiated.
- We've stopped advertising anywhere except on our own website (of course we still pop up on a few scraper sites).
Given the number of people I've interviewed recently who have said 'I loved your job ad', we figure some of this stuff must be working! Here is a super-quick tactical guide which will hopefully help you get more applicants.
But first, an example
Here is a job ad from Apple, a reasonably well-known tech company. At first glance this seems totally fine. Ok. Meh, even.
However, there are a bunch of things that are actually kinda annoying and unhelpful about this job at which could put great candidates off applying. See if any stick out to you, we'll come back to this at the end!
I'm not saying 'PostHog is better at job ads than Apple' – the point is that startups do not have the incredible brand recognition that Apple does, so you need to put in extra effort to stand out.
Obvious ways to write a good job ad
These are table stakes. If you're not doing these, it's probably not even worth looking at the non-obvious stuff. Yes I am going to mention salary transparency again, like every other nano-influencer on LinkedIn.
Really tight requirements
Keep your list of requirements as short as possible. I like to do:
- Must have
- Nice to have
Each should be three or four items long – that's it. You will know anyway when you see a great resume. Candidates don't read this stuff super carefully anyway, or will ignore the stuff they can't do. You need to remember that you are just one of potentially dozens of applications that a candidate is making, so you shouldn't assume that they will read your beautifully crafted ad anywhere near as closely as you did.
Fun fact - you do not need to write out literally every single thing the person will be doing.
What the actual hiring process is
This is nice for the candidate, but more importantly it forces you to figure out how you are going to decide whether a candidate is great or not. A series of random chats with the team is not going to give you the signal you need.
Even if you are a tiny team, you can still take 15 minutes to figure this out and save yourself a lot of pain improvising the next step and getting stressed you haven't got back to a candidate.
It's also worth noting that a big advantage startups have over bigger companies is speed – you can potentially go from initial interview to offer in the time it takes a much larger company to even schedule in the first call. Being able to do this gives you a huge advantage, but it's impossible unless you nail down your process first.
(And by the way, if you follow your process and are still not sure if you have enough signal about whether a candidate is great, it probably means that you want to say 'no'!)
Time zones
All-remote doesn't necessarily mean hiring from literally anywhere. Please specify time zones before people waste a bunch of time only to find out you don't hire in Australia. This also forces you to clarify your own thinking.
Salary
Stick a range in there if you really don't know. You may be based somewhere that this is legally mandated anyway. The point here is to avoid wasting a ton of your own time getting someone through your process, only to find you are miles apart on how much the role pays.
You are not that great a negotiator, and you might as well screen out the people who reeeeally care about the money first and foremost. If your excuse is that you don't know how you should be benchmarking a particular role, look at other comparable ads in your area or use a tool like Pave. There is a lot of compensation out there these days.
If you want to go the extra mile, feel free to copy our compensation calculator.
Role
Location
(based on market rates)Level
Step
Salary calculator
- Benchmark (United States - San Francisco, California) $236,000
- Level modifier 1
- Step modifier 0.95 - 1.04
Benefits
I get it – you want to make this list look as long as possible.
Perhaps a bit unorthodox, but I think that if you don't have great benefits to offer (which is totally ok, especially if you are super early stage), then it is much better to just not include anything beyond salary at all rather than making something up.
The following are not actually benefits, they are basically your legal obligations or incredibly generic:
- Competitive salary. Ooh let's pay money in exchange for work, how brave.
- The legal minimum number of days holiday or pension contributions.
- A fast-paced/dynamic/exciting environment with potential for growth/learning/flexibility.
- An opportunity to work with great people. Please find me the company offering an opportunity to work with extremely average people.
- Describing any kind of policy as 'generous' without specifying how.
Instead, be specific for the standard stuff, or be unusual. It is better to have a list of five cool things than ten generic ones.
Non-obvious ways to write a great job ad
Get the hiring manager to write it, and then a good writer to edit it
Classic process is hiring manager comes up with a list of bullets -> passes to recruiter to write the ad -> publish. This is a great way to ensure that you have a weird Frankenstein's monster of an ad written by two people, neither of whom are professional writers.
I'm a big believer that a well-written job ad is just as important to your company as a great blog post or homepage copy. Especially if you advertise on LinkedIn, your ad will be seen by thousands of people – potentially more than visit your website every week.
Instead, do this:
- Hiring manager write the entire job spec. They can copy previous ads. It's ok if they are not a great writer, they just need to write down as much as possible.
- Get a good writer to edit the ad and make it a good piece of written content. If your hiring manager is already a good writer, you can skip this step.
- Recruiter does a hygiene check for dumb stuff or anything obviously missing.
Be genuine, or even weird
Job applicants are sometimes reading dozens of ads in the course of their search, so cutting through the noise is really important. This is assuming you don't already have some incredibly well-known brand like Google.
Ideally, write in the tone of voice of your company. Tell a story. Your ads don't have to follow the exact same structure every time – engineers care about different things to designers. Sometimes you will want to get super specific about exactly what you want the person to do. Other times you may have a vague sense, but you need help figuring out the role – both of these are ok, but the ads should be written differently.
I think it's actually ok to write quite a lot here. 'Best practice' is to make job specs as short as possible because the internet has wrecked our attention spans, but I think that just optimizes for total application volume over quality. The right candidate will spend lots of time reading and re-reading your spec because it's full of all the things they care about, and in turn you'll probably get fewer, but higher quality, applications.
'Who this role is not for'
This has been incredibly helpful for us. We basically outline the kind of person we are not looking for. The point here is to screen out people who on paper might look like a great fit, but because of some specific reason, this particular role wouldn't be good for them.
This isn't where you put, 'We are not looking for lazy people who are bad at their jobs.' More like 'This role isn't a great fit if you are looking to eventually manage a large team.'
You can also do a version of this list under a 'what you'll be doing' type section – it's super helpful to make explicit what the candidate won't be doing. Again, this helps candidates to screen themselves out. If you hire someone and force them to do something they don't want to do, they will quit in six months and you'll have to repeat this all again.
If you are open source, link to your repo
This is more niche, but if your product is open source then linking to good examples of recent PRs/Issues is a great way to give candidates an insight into exactly the kind of thing they will be working on. Instead of promising them, 'Hey you'll work on something really cool, trust me bro' you can actually point them to real code. Neat!
Pulling it all together
Let's come back to our Apple job ad. If this was a role I was hiring for at PostHog, this is what I'd change:
- Be a lot more genuine and weird in the Summary – my generic corporate bingo card is off the charts here (talented! passion x2! lively! dedication!)
- Way too many qualifications needed
- Basic information totally missing – I have no idea what the hiring process looks like, how much you will pay
- This feels like it was written by a recruiter – I don't get any sense of the personality of the team I'd be working with
- Not all SREs are the same – who should not apply for this role?
And just to reiterate – Apple can get away with this because they are one of the best-known companies in the entire world. The rest of us can't – well, not yet at least...
Moar reading
- What startup recruiters actually see when people apply for a job
- Literally everything we've learned about hiring at PostHog
- A bunch of myths and truths I've learned about startup hiring in the last 10 years
- How do you make your first ops hire?
Subscribe to our newsletter
Product for Engineers
Read by 25,000+ founders and builders.
We'll share your email with Substack