Recruit Great Software Developers with These Useful Tips
Align on Your Hiring Needs
As often true in other parts of life, the “pre-work” is probably the most important part of the work here. Prioritize your immediate needs, certainly (they are why you’re hiring!), but take a step back and consider weaknesses in your team’s skill set as well as future capacities you’d like the company to have. Make sure your team agrees on the must-haves and nice-to-haves for this hire.
1. Know Your Budget
It’s important to set a realistic budget for hires within your department. Like your needs, your budget will help determine whether to hire regular full time or on a contract or contingent basis. Further, it will inform the parameters or your search: if you are considering an offshore, rural, or nearshore hire, knowing your budget will help determine what regions should be part of your search, so you can offer rates competitive enough to draw the most qualified candidates.
Sites such as GlassDoor, PayScale, LinkedIn, and AngelList can help you determine an appropriate wage range. And if you are working with a specialized staffing agency such as SalsaMobi, they’ll be able to advise you on compensation.
2. Identify the Short-Term and Long-Term Impacts on the Company
Something few people consider: How will your recruiting efforts affect the following, in both the short and long term:
- Department budget
- Company culture
- Project output
- Client retention
- Expansion opportunities
Hiring is a resource- and time-intensive process, especially if you are handling the whole process, rather than using a staffing agency. Most hiring managers drastically underestimate the amount of effort hiring will require as well as the time to make and onboard the hire. Make sure you have the resources in place to avoid dropping other balls during the hiring process.
3. Crystalize the Job Description
Once you have your ducks in a row, create a clear, fluff-free job description.Speak to what candidates care most about. According to a Stack Overflow survey of developers, candidates care most about the following, in this order:
- Languages, frameworks, technologies, and skills required
- Company culture and environment
- Availability of flexible/remote work
- Opportunities for professional development
- Significance/impact of work/project
- The industry they’ll be working in
If your company offers benefits and perks, be sure to mention those, as well as any accolades your workplace has received.
Be Transparent About Your Hiring Process
Applying for jobs is nerve-wracking, and candidates often radically underestimate how long it will take for a company to get back to them with news and updates. Manage expectations for candidates so that they don’t make incorrect assumptions about a perceived lack of interest on your part and go elsewhere.
If you decide not to move forward with a candidate, let them know. Ghosting a candidate midway through the process is ungracious and unkind. Feedback is entirely optional, but a simple notification, at least, should be sent.
4. Communicate Your Interviewing Activities
Set expectations for the number of interviews and how each one will be conducted, as well as for any other screening/vetting activities (Hackerrank tests, work samples, etc.).
Let candidates know who will be interviewing them and for how long. (It’s rude to surprise candidates who are expecting one-on-ones with group interviews.)
If possible, lay out the process and timeframe clearly for them, and reinforce both at each step of the process (e.g., “We are moving to in-person interviews next week; expect an email from [name] by [day] to arrange a convenient time”). Stick to your promises.
5. Specify If a Test Project will be Paid or Unpaid
When possible, use GitHub contributions, personal websites, or portfolios to evaluate candidates’ work. If you expect candidates to complete a test project or work sample, let them know whether they will be compensated for their time and whether compensation is contingent on their being hired.The best developers have busy schedules. Be respectful of their time. Test projects should be as brief as reasonably possible and narrowly targeted to the skills required
6. Be Honest About Time to Hire
According to SmartRecruiters, “time to hire” is the amount of time between when a candidate is recruited or applies to a job listing and when they accept the job offer. “Time to fill” is the total time a position is open and unfilled—usually a much longer period of time.
A study published on Glassdoor gives 35 days as the average time to hire for software engineers. And according to talent-acquisition company ICIMS, in 2019 the average time to fill a position was 66 days for highly skilled tech positions.
Manage candidate expectations by being up front about your company’s time to hire and onboarding process. How soon can they expect to get to work (and get paid), if they get the job?
Note that if you are working with a specialized staffing agency, the time to fill and time to hire should be considerably less.
Make the Offer Enticing
If you want a topline hire, make a topline offer. It’s not just about compensation (though that’s the most salient feature of the offer)—make sure candidates know about any offered perks, benefits, and flexibility available to them in the position.
Describe the offered role, including any products or responsibilities the hire will own, and the project(s) they will work on. It’s well worth taking the time to explain how and why the work will matter to the company or the larger world.
7. Epitomize Your Brand and Company Culture
In your interactions with the candidate, strive to exemplify the best of your company, and be passionate in your description of the company.
Answer these questions in a direct, compelling, un-buzzwordy way:
- What is your mission?
- What are your company’s core values?
- Why would your candidate want to work there?
- What makes the work enjoyable or rewarding?
8. Think Long Term
Chances are that you’re hiring because your company is experiencing a pain point: not enough people to do the work. It’s tempting to make a short-term hire based solely on immediate needs, but you should consider how the new hire can or will fit into the company long term. Ideally, you wouldn’t hire anyone, even on a contract or contingent basis, that you can’t see yourself working with in the long run.
Where will your department or company be in a year, 3 years? 5? 10? Be sure your hires are personable people who enjoy learning new tech and new skills, in case you wind up together for the long haul.
9. Illustrate the Bigger Picture
When recruiting, interviewing, and offering, talk about:
- Where your company is headed
- The importance of the project(s)
- Where the work may lead
Great candidates want to see more of the mountain, beyond the next ridge. If there are opportunities for development and advancement, make sure your potential hire knows about them. (Be honest, though. If you really just need a warm body to output code widgets for the next three months and have no possibility of keeping them on, don’t paint a rosy, false picture.)
The big picture can inspire new hires to invest themselves in the long-term success of your company. Share it!
10. Be Competitive with Your Rates
Software developers are in huge demand (for example, according to Careercast, the need for app developers is expected to grow a whopping 31% between 2019 and 2024), and they can afford to be choosy about where they work. And while the pandemic resulted in the loss of some jobs, it has created a huge demand for remote, online alternatives to in-person interaction, meaning that skilled tech employees are in extremely high demand.
So you need to understand the going rate for software developers in the regions you are targeting. Even if you are looking to save money by hiring offshore, rural, or nearshore workers, stinginess is likely to backfire—costing money through poor hires or attrition, rather than saving money.
A specialized staffing agency will negotiate with prospective candidates and advise on you on what it takes to be competitive and attract the right people.
Know Where to Look
OK, so you’re primed to get going… but where to start? The usual suspects, such as LinkedIn, of course. Also, developer communities, such as GitHub, Gitlab, Code Project, and Stack Overflow, where you are likely to find enthusiasts in the field for which you’re hiring.
Make sure your job posting is highly visible, so the right candidates can find you. And know which parts of the world are great stomping grounds for highly skilled tech workers eager to find a good gig; if possible, advertise in their countries and in their first languages.
11. Work with a Remote Staffing Agency
If the processes described in tips 1–10 sound like a lot of work, that’s because hiring IS a lot of work. And it’s a headache that you can avoid by working with a specialized remote staffing agency. A specialized staffing agency has an existing database of screened and vetted software engineers. (SalsaMobi has 10,000+ developers in their talent pool!)
- You can drastically reduce both time to fill and time to hire. SalsaMobi usually can send you profiles of 3–5 engineers in a matter of days.
- They offer flexible hiring options (contract or in-house, project-based or long term)
- You get the benefit of their hiring expertise: Recruiting and hiring ARE WHAT THEY DO.
Ready to learn more? Get connected with a specialized recruiter today, and find the right fit as fast as possible.