In the third decade of the XXI century, the IT job market is like a jungle, in which many different predators compete to hire software developers. Unfortunately, just like in a real jungle, the “tasty bits” usually go to the strongest – Tech Forecast 2017 Computerworld report shows that over 80% of companies with the highest IT employment rate are huge, global players. These corporations attract talent with money and additional benefits. If you’re an IT Director (CTO, Delivery Manager, etc.) in a company that’s not as big as Google and you want to know how to hire software developers in 2021 – here are a couple of indicators for you, based on our experience at Pretius and that of our clients.
Defining greatness in a software developer
Okay, so you want to know how to hire software developers? Let’s start with defining what the term “great developer” really means. Answering this question isn’t an easy task, because the particulars can differ wildly between companies and CTOs. According to the TIOBE Index, the most popular programming languages are C, Python, Java, and C++. There are also other skills that can’t be discounted, especially in the field of Cloud Computing – AWS, Azure, Google Cloud Platform. The IT world is constantly changing, however.
One thing that isn’t always apparent when it comes to hiring a software developer, is that often soft skills (communication skills) are nearly as important as technical know-how or the ability to code. IT specialists have to work with people from different fields and backgrounds so being able to communicate their progress effectively can be paramount. A great developer should be able to talk with the business people and understand their needs – ideally, even better than the business folks themselves.
Some of these skills can be taught, assuming the employee has the right attitude for that. Many of them simply come with experience. That is why, while most companies can hire junior software developers without problems, the competition for seasoned, senior employees is really fierce. The problem is visible in data gathered in Hays Index. A statistic called Talent Mismatch score shows the gap between skills needed by employers and those available on the market. The number continues to be high and rose again in the latest report, reaching 6.7 on a 10-point scale.
Big companies also have additional challenges here, stemming from the fact that they often need people to carry out boring, repetitive tasks, create tools that are only used inside and never see the light of day, or deal with ongoing maintenance. At the same time, they usually can’t promise candidates access to new technologies or offer as much money as huge, global players – like Google, Microsoft, etc. – which successfully enter local talent markets.
Competitive salary and honest communication
Let’s be blunt here – people work for money. If you can’t offer a potential employee a competitive salary, forget about hiring the best. It’s a simple truth and there really is no way around it. However, do mind that “competitive” doesn’t have to mean “the best there is”. People simply need to feel appreciated and be able to live on the level afforded by their experience and education. Rule of thumb: you don’t have to offer more than everyone else, but you can’t propose less than most.
Another really important factor is honesty in communication from the very beginning. Start by writing the ad well. Be open when it comes to salary range – it can be rather wide, but even a wide range is more specific than nothing at all. A study conducted by LinkedIn showed that over 70% of professionals want to see the information about money in the first message from the recruiter, which means ideally it should be included in the job ad. This sentiment is mirrored in research done by Glassdoor – 67% respondents mentioned money as the number 1. motivator for candidates.
Write about responsibilities and tasks, as precisely as you can. Don’t forget to mention the benefits you can offer, but that doesn’t necessarily mean “fruit Thursdays”, and Multisport cards – things like that aren’t that important to people with high enough salaries (and software development certainly is a very lucrative business). If you want to offer such benefits, flexible cafeteria systems are a more compelling alternative. However, tools, bonuses, business trips, training courses – these can matter quite a bit, even for high earners.
Why is openness so important? You know you really don’t like to waste your time, so don’t assume the people you want to hire are any different in this regard. A well-written ad is a win-win for both parties – software developers will instantly know whether they’re interested in the job or not, and you get to concentrate on candidates you want (and can) get.
Don’t be afraid to go off the beaten track
The hiring process doesn’t always have to follow standard rules and it doesn’t have to happen in the office. Nowadays, many companies organize events with the purpose of attracting the attention of possible candidates. They can take many different forms: webinars, hackathons, gamification contests or even survival trips into the wild. All of these things can work, as long as you remember to:
- show your company in a good light (possible candidates should see it as original, a fun place to be and work in);
- make sure the candidates get something out of it, even if they aren’t interested in working for you (it can be knowledge or just fun).
During the pandemic, most of such events either didn’t happen or moved entirely to the Internet. But we already know many of them will come back in their traditional form in the upcoming months.
And then there’s also scouting – the practice of looking for possible employees in places you know they frequent, leaving the contact information and some details about the opportunity you can offer. Speaking from our experience, performing a one-hour research on LinkedIn or even your local Facebook groups and speaking directly to the software engineers that seem a nice fit for your company is more productive than running costly ad campaigns which are targeted at a broad audience. It may seem simple, banal even, but quite often it’s a surprisingly effective recruitment tool.
Let them loose on the world
The everyday work in the office can get tiring and a little bit too mundane and/or repetitive. From time to time, everyone wants to stretch their limbs, do something else, go somewhere different. If on occasion, they can do that as part of their work, instead of wasting precious vacation days, it’s even better. Letting your employees represent the company at conferences and events is a good way to offer them something valuable without really losing anything (sure, it costs, but everything does). In fact, you can even gain something – by enhancing their knowledge, you enhance your company’s capabilities. And, finally, including the information about such a conference budget in your job ad can make it more attractive for potential hirees – especially for ambitious senior developers.
Give them something and someone interesting to work with
Money isn’t the only thing that matters for people when they look for a job. We spend roughly half the time we’re conscious working, which means work is a huge part of our lives. Because of that, oftentimes being able to do something interesting, using cool new technologies and tools, is more important to people than financial benefits (within reasonable margins, of course).
Make sure potential employees know that in between more mundane tasks, they’ll be able to spend time on some side projects – develop software they’re passionate about, and work with technologies they really want to get their hands on. To minimize costs, you can allow them to do this mainly when they wait for major projects to move ahead and don’t have anything important to do anyway. Provide them with cutting-edge tools (many of them are free), instead of forcing them to use stuff that’s already outdated. Give them room to grow, help them do it, and remove constraints, when possible. Software developers tend to be pretty individualistic and sometimes they have to be treated more like artists than craftsmen. They value a workplace that understands that.
Another important factor is the team. As an employer, you should strive to show that you have cool and interesting people on staff. There are several ways to do that. For example, you can ask your employees to write blog posts about the latest technologies that have fallen into their hands. Also, your marketing team can interview them – talking not just about work, but also about their hobbies and passions – and then put this stuff on social media, where possible hires can see them. Friendly employees equal friendly company.
Show them they can stay for longer
When people grow older and more experienced, their priorities change, so ideally, their workplace should change along with them. Some software developers start families and want to spend more time with them. Some have to take care of children because they either raise them alone, or their better half can’t do it. Others just want to work a little bit less, but are still very valuable to their companies.
There are several ways an employer can accommodate employees in such situations. Some of them – like working from home – started being the norm during the last year and a half. These changes probably are here to stay, in one form or another. Other things and ideas are still somewhat new, though they slowly gain ground in the industry. For example, some companies give bonuses to people with children or even let them bring their toddlers to work with them (ideally in a way that doesn’t disturb other employees – for example by providing childcare in a separate room). Other employers provide experienced, long-term employees with the option to go on a long paid vacation. These ideas aren’t foolproof and may not be right for every company out there, but they’re an option.
Another great way to attract talent is to offer a one-time relocation bonus to someone abroad (or just allow them to work 100% remotely, if that’s possible). Sometimes it’s a purely financial incentive, but in other cases, it can get substantially more complex – including help with finding / renting a house, a school for children, or even work for a husband or a wife. In the grand scheme of things, these things aren’t very expensive and they can really weigh the scales for many potential employees.
There are two really important things you should be able to offer your potential and current employees – stability and peace of mind. You need to assure candidates of your strong position in the market. And when you hire them, provide them with a long-term strategy and a clear work pipeline. They need to know they’ll have a job to do tomorrow, in 3 months or in 3 years. You can also offer them additional incentives, like retirement funds, pension plans or stock in the company – all of these will make their ties to you stronger.
Last but not least, provide your employees with clear rules and a stable framework to work within. Don’t change things on a whim and don’t put pressure on your people when you don’t have to. For example, it isn’t the developer’s fault, when a project that was finished according to specification, in the end, didn’t meet the client’s needs or didn’t allow him to accomplish his business goals. Software development is complex and can be fairly stressful. Having a fair work environment can go a really long way when it comes to hiring new employees and keeping people you have on staff.
You can always train software developers…
If you are dealing with an extremely problematic job market and just can’t get the specialists you need, there’s always another way – you can train them yourself. “Educate & Employ” initiatives won’t provide you with the needed workforce in the short term, but long term they are a very good option for both the employee and the employer. The first can acquire skills for free or at a fraction of the cost, the second gets a well-trained and often grateful software developer, who also knows the company from the inside out.
One of the great things about this approach is that you can train your employees in precisely what your company needs in a given moment – programming languages, tools, technological know-how – instead of just hoping your recruits will have the right knowledge and trying again from scratch if it turns out they don’t. At Pretius we do this with cloud technologies such as AWS and GCP, with UX/UI design skills and with software testing automation.
Aside from time constraints, the one serious downside is also that operating this way can get quite costly. You also need the right people on your staff, especially senior developers with the soft skills necessary to teach others. There’s also an inherent risk associated with “Educate & Employ”. Depending on your situation, there are ways to incentivize people you educate to ensure they’ll try their best and stay with you – for example by only offering a really well-paid job to the absolute top of the class – but there’s always a possibility they’ll run away from your company or simply waste the opportunity.
…and if you don’t want to, just outsource!
Finally, there’s one more way to get access to talented software developers – outsourcing. The simple truth is that not every company needs an in-house development team for every IT task there is. In many cases, the better, less expensive, and problematic approach is to just find a vendor that can do the work for you. By going this route you can be sure you get people with the right knowledge and tools since acquiring both of these things is a software house’s bread and butter. You can also skip the recruitment process, which is often lengthy, costly, and sometimes has to be repeated because after a couple of months it turns out the person you hired doesn’t meet the standards you expected.
Of course, outsourcing brings new challenges and problems along with it. The main issue has to do with trust – many IT directors are reluctant to show their private data outside or fear someone will steal their ideas. There are also worries about potential security risks – when you design your IT infrastructure and tools yourself, at least you know where you left potential holes and that knowledge stays with you. Some CTOs are also worried about getting too dependent on a software house and possibly losing money because of this – change can be hard and costly when all your systems were created by the same people. Finally, in some cases, investors aren’t too fond of outsourcing IT projects, because an in-house IT team makes the company more valuable.
However, there’s one way to meet all these challenges. If you decide to outsource, just choose your software development partner wisely. Check out reviews on third-party portals like Clutch, find out if they have worked with companies from your market and if they have enterprise-grade projects in their portfolio. If you’re an IT director, it may even come useful, to get in touch with the vendor and ask if you can talk with their developers (all in all, those may be the people that you’ll work closely with for the upcoming months). Also, it’s worth mentioning that collaboration with a software house doesn’t have to be a one-time thing. Some companies, like us at Pretius, offer long-term support and maintenance for the technologies they deliver. So, yeah – if you’re looking for a true technological partner, that’s possible.
How to hire software developers (and keep them later) – a checklist for IT directors
Instead of coming up with some boring summary of the article above, here’s just a handy checklist for you. Think which ideas might work for your company – and start pushing them forward!
- Offer competitive salary and – even more importantly – include salary ranges in your job ads
- Use non-standard recruitment methods – hackathons, webinars, contests, trips
- Offer your employees the option to travel and take part in conferences and events (and don’t forget to inform candidates about this conference budget)
- Give developers some side projects so they can get to know new technologies and have something interesting to work with apart from the day-to-day development
- Show the candidates that you have a friendly and skilled development team and clear rules in the work environment
- Think long-term – offer developers incentives to stay, like additional benefits, including family-oriented ones, pension plans, stock options
- If you can’t hire senior devs, consider training whoever you need yourself
- Try outsourcing but choose business partners wisely
Do you need great software developers for your new project?
Drop us a line at firstname.lastname@example.org. We’ll answer in 48 hours and tell you how we can help.