How much to pay a Developer
How do you set a salary?
Most of us in the industry probably know that salary expectations is a minefield, influenced by industry trends, supply+demand, industry verticals, locations and company cash. This all makes it very hard to recruit well in an under-supplied market with some companies pushing the boundaries of sense and making it at least seem harder for the rest of us to recruit without spending our budget.
Here are some thoughts about navigating this as both an Employer and also an Employee.
Understanding the Industry
If you do something like search for “average Developer salary”, you might see an answer but it is unlikely to be very helpful. Why? Because the range is very wide and “average” usually means “mean” which isn’t necessarily useful when there are some outliers. Also most businesses will advertise a range, where the top-end is for those with exceptional skillsets - how do you average that? My experience is that most candidates will fall somewhere between the bottom and middle of a range, which means the average should be something like 25-35% of the range and not 50%.
Salary is based on a number of things and understanding this will help you to understand both whether you should apply for one of these high ranges and whether you should be expected to pay above-average for your particular company.
Industry type/Tech type
These two might be related but there is a world of difference between someone who can produce a web application in any tech they want to and those implementing highly-scalable systems in specific or unusual languages/frameworks or in a specialist industry like Space or AI. If you want something basic, paying over the average might get you someone better but it might also get someone who would be bored since you might not be able to fully utilise their skillset. Think about whether there is scope for the work to be improved/increased and where you might use a highly skilled person, otherwise don’t oversell the role.
Cash rich businesses
Some businesses make enormous amounts of money, much more than most businesses. They can afford to pay more because they want less recruitment hassle and more results. They will pay over the odds for Recruiter fees to get first pickings but you know what, they also expect the employee to perform. A cash-rich business might expect longer hours (not officially of course!), they might expect travel and even the remote positions can easily require a day a week, or a week per month, in the office.
Let us be realistic, they don’t overpay because they love people, they overpay because it works with their business model and it likely won’t work with yours.
Other equivalent roles
A Developer might not care what a Doctor or Solicitor earns but it can be a useful bargaining position to remind Developers how good they have it. Most mid-level Developers get paid more than a mid-level Doctor or Solicitor in the UK, both of who have to train (5-7 years) and pass official exams before they can get the title, and a Developer can have no formal training, no management responsibility and very little risk and get paid more as well as working remotely!
Sure there is demand which pushes prices up but this doesn’t work indefinitely, it often causes other problems. What happens when people realise that some outsourcing models to Developing countries are not only cheaper (they aren’t always) but easier? Imagine being able to ramp up a team by 10 Developers in a few weeks with no risk or Recruiter cost to your business? What happens as AI starts producing better code than an expensive Developer? It’s happened in other industries when people price themselves out of the market - look what happened to Manufacturing in the UK, not necessarily because it was overpriced but it was significantly more expensive than the Far East and 10s of 1000s of people lost their jobs. It also happened with Plumbers in London in the 1990s as EU immigrant Plumbers charged a fair rate, Plumbers lost a lot of work because they had priced themselves out of the market.
Things to remember
Expensive doesn’t mean good
I can’t over-emphasise this enough. I saw a few years back when Just Eat had just done a raise and were trying to fill an office in Bristol, the salaries were 70-80% higher than average. Why? Because they needed to increase their chance of success and with the cash, couldn’t afford to let it drag-out. More money means more choice doesn’t it? Yes but it also means a LOT more applications. More applications usually means more rounds of interviews and screening. Some great people won’t bother, other people who are not so great care more about the money and will cheat, lie and steal to try and convince you to recruit them.
Anyone who has interviewed knows that it is really hard. The Candidate often believes they are really good but can’t necessarily communicate how. The Employer wants to be fair and understanding but also wants to reduce the risk of a bad hire. Imagine that with 1000 applications for 10 jobs!
The other extreme is also likely. Even though you might find a great person, (usually inexperienced - doesn’t know they are good) for not much money but how long will they stay when they see the job averts for 10, 20, 50K more than they get paid? They would have to love the job/company and hate money to stay right?
Sell the company, not the salary
I saw the hotjar website the other day, and their perks are almost unbelieveable. 1,000s of Dollars for your onboarding, holiday money, office equipment etc. and fully remote. I expect their salaries are pretty good but even if they are average, who wouldn’t want to be able to buy a sweet chair and laptop in a new job? Who wouldn’t want to go on company meetups in other countries like skiing, paintballing, whatever?
You probably don’t have hotjar’s cash to do this but ask yourself why someone would want to work at your business and if you can’t answer that, do something about it. Are your offices drab? Out of the way? Is the team small and quiet? Is the Product very niche and not “sexy”? Then ask what you could do for relatively little amounts of money to make it work. I used to buy pizza for my team out of my own pocket (my boss wouldn’t pay!) but £20 per week (small team) was a very small price to pay for people to appreciate getting free pizza.
People might come for money, but they stay for the company and culture.
Do your research - but be careful
We all know the range of salaries for a Developer are extremely wide. You will see Development Manager roles being paid less than a lot of Developers so if you want to know what equivalent Developers are being paid, you need to research equivalent roles. Is the Developer part of a Product Team or are they “IT Support” for a physical product or service? Is the role expected to produce very high quality/high performing/highly scalable/complex architecture or is it just CRUD apps?
Remember as well that althought this gives you an idea, what it won’t show is wether the other business is being realistic, it might not be obvious what their benefits package is, and it might not be obvious if they have received a cash injection and can afford to overpay so comparing a range will be useful. Also, in the current climiate, consider office-based vs remote since if you need someone to be in an office, it will both restrict your local market and might mean you need to pay more than average.
But I can’t afford the market price
If you can’t afford market price then you have a business problem. A Developer could cost anything from £30K to £100K+, that’s a lot of dough but if they are not adding more than that in value, you need to work out a different business model. If you only make enough to pay £20K per year, then you are not making enough.
A wise person once said that if you think it’s expensive to hire a good employee, try hiring a bad one!
Consider efficiency over hiring
There is a “myth” about the 10x Developer who can produce 10x as much as an average Developer. The number might be made up but some Developers are clearly much more productive than others and it will be related to their ability, as well as their attitude and whether their style matches the culture of the company (i.e. a high-detail Dev in a company that wants cheap and fast will not be productive). Therefore, you should consider whether having fewer high quality developers is better since e.g. £45K x 3 means you could get 2 Devs at £60K and have some change left-over.
The interview is crucial
It isn’t just the money that people are worried about, it is knowing that they are getting value for money. This means you need to know before you interview someone how to evaluate them, bearing in mind the more hoops you make them jump through, the more chance someone will go somewhere easier. You are competing with businesses that might have more cash and less discernment so even though a Candidate might have a terrible time elsewhere, they might still get hooked on a better salary and you might lose out on them.
So what should you be looking for?
Technical ability
This is really hard to judge but depending on the level, you should do a minimum of a screening test or a code exercise that you can discuss (during and/or afterwards) so you can see what they are like. Make it realistic by allowing them to use Google etc. but you might wonder why they searched for something that you think should be obvious. They will be under some pressure due to the Interview but my opinion is that they will be under pressure in the workplace too and should be able to confidently discuss what they did even if they didn’t do well.
It goes without saying that you need to be technical enough to interview their technical ability. If you are not, rent somebody to come and help you with it. Without experience, you won’t be able to call BS on a BS answer to a question.
Culture fit
You must be able to describe your company culture to evaluate if someone is a good fit or not. Being a bad fit is not about how much you should pay them but you need to think about it. Ask about experiences they have had and how they dealt with them to see whether they are quick and dirty or slow and careful - either is OK if that is what you need.
Fit for the product/business
We sometimes skip this part but I always ask Candidates what they enjoy about a role (or not) to work out whether they will stay. Many Candidates come to an interview, partly because they don’t actually have to come anywhere any more (e.g. no cost for them to have the call) and because the Recruiter told them about a role, in many cases they know little about the job and might not really care for it. If they are looking to work with the latest and greatest stuff, is that your business? Do they enjoy SaaS? Or “boring” business web applications? Do they enjoy a fast-changing environment or do they just prefer a large backlog that they can get on and work through?
Some of these things are go/no-go but sometimes, particularly with the technical test, it might drive you towards deciding they are not worth what they are asking for. Be very careful since Recruiters will often use the dark pattern of asking for a lot more than they should and then trying to bargain downwards if you reject the amount. I don’t usually play that game, my line is that if somebody thinks they are worth something and I don’t, they won’t stay around long if they find somewhere that will pay them what they think. I also make it clear to the Recruiter not to inflate the asking amount - I have sometimes offered more than someone asked for because we felt they were better than they thought.
So?
Well, it was more of a brain dump than a process but there are hopefully some helpful ideas about recruitment that can increase the odds of a good hire because that is all we can do at the end of the day.