The problem with hiring new software development talent is that the person you are looking for does not exist or if they do exist they have just left your employment. Software development is too vast a field for anyone to be versed in all the technologies which are currently in use so unless your stack is very limited or you are looking for someone to work on one specific aspect of your system it will be difficult or impossible to find an exact fit.
Here are four strategies for you to find and retain talent you need to maintain and grow your business.
Don’t Hire Anyone
The first option in a successful hiring strategy is to not hire anyone to begin with. Employees are the highest expense of any business so unless you have no other choice hiring another employee should be a last resort. There are several options which a business has which helps to avoid hiring new employees.
Pay a service company
Software as a service companies are everywhere and can provide services and technology which in the past had to be implemented directly into a business platform. Today there are many services including e-commerce platforms, database management and code analysis companies.
Information technology companies are available which can be hired to develop,maintain and upgrade the technology of most businesses from small to large. They can provide the hardware, software and technicians to support the system once it is in place.
Buy a software product
Before you hire someone to develop a new software product ensure it has not already been implemented as a software product already. There are many examples of software products which are available for purchase from accounting software, database management, voice activated systems and even robotic control systems.
If your business has a need for a specific software solution others will also in most cases. This means that someone may have developed a software product which can be integrated into your system without you needing to develop it yourself.
Use open source code
Open source code can be found in a wide variety of places from Github to JQuery and include operating systems like Linux. Open source software is software where the code is provided as source code rather than compiled programs. This gives the user the ability to change the code, use certain sections of code or add functions to the code to suit it for their purposes.
Although there are some problems with open source code such as security issues and buggy code in some cases for most of the open source solutions available today have been improved by a wide variety of volunteers making it much more robust than their commercial counterparts.
If none of these solutions meet your requirements then it may be time to hire a professional to provide you with the needed programming assistance.
Hire a Freelancer
Hiring a freelancer has many benefits which can be taken advantage of depending on your business. If you own a small business with a limited budget, hiring a permanent employee may give you a sense of pride but in the long run it may cost you more than you can afford.
Before you hire a permanent employee consider using a freelancer to develop and implement your business concept for you. Freelancers can be expensive in the short term but are often a cheaper solution to your programming needs long term.
Benefits of using a freelancer
- Known cost
- Not responsible for freelancers taxes, healthcare or other governmental costs
- Final payment can be withheld until project is complete to your satisfaction
- Access to specialized talent
Drawbacks of using a freelancer
- Harder to maintain added features
- Unknown programming quality
- Hard to maintain code quality and company standards
- Inconsistent access to particular talent
There are many options for hiring freelance talent. You could use one of the many freelancer companies which are designed to connect business owners with available talent where freelancers post their profiles. Profiles include talents, jobs they have completed and a rating provided by companies which they have worked for in the past along with their rates and how they want to be paid.
The freelancer company will act as a go between matching freelancers with possible employers, facilitate payment and provide mediation if there is a dispute. This makes it a good option for smaller companies to access specialized talent without having to make a long term commitment.
Other options include advertising for a short term contract or for the specific work you want completed. This provides you with the option of paying for only the work you want completed without the need to maintain the employment after the work is complete.
Ask Current Employees For Leads
With the advent of online job boards, social media platforms and government websites the idea of using referrals to find new employees almost seems archaic but it is still the best way to find and hire quality personnel which fit well within your company.
The cost of hiring, training and developing new employees in the tech industry can cost 50-150% of their yearly wages https://scholarworks.waldenu.edu/cgi/viewcontent.cgi?article=4255&context=dissertations&httpsredir=1&referer= . This is a substantial amount for any business and can be crushing for small and medium sized businesses, especially if the employee does not work out. Referrals are a great way to mitigate this problem.
There are many reasons why a software developer will be unsuccessful at a particular company and only a few have to do with the technical ability of the developer. This is why many companies have a multi-step process in hiring new developers.
The first is to ensure they meet the basic criteria for the position. This is where the resume and cover letter or CV come in handy. Secondly they are given a coding challenge which is meant to check the developers knowledge and coding ability. Finally they are given one or two interviews with the people they are going to be working with. This is to see if they will fit in with the group.
When you get your prospects from referrals the third stage of the process is much more likely to be successful, the applicant will more likely be accepted by the group and become a productive employee much faster than otherwise.
Another aspect of asking for referrals is the sense of responsibility the referrer has to the new employee. They are more likely to provide help and direction, give advice and generally assist the new employee settle in and succeed.
When asking for referrals it is best to ask the group the new employee will be working with first. This provides them with the opportunity to be part of the process and shows that their opinions matter as well as acquiring applicants which already have a relationship with your current team.
Advertise Online
According to companies like Indeed and Glassdoor this is the way of the future but really it is a poor way of finding new talent. Although you will have access to a large number of potential applicants, the truth is that few of the searchers will meet the criteria you need to fill a position.
First they will have to have the qualifications you need for the position which is getting harder and harder to find as the technology industry continues to grow. Just like there are electrical engineers, civil engineers and mechanical engineers (along with a host of others) there are front end developers, backend developers, AI specialists, robotics and application developers.
Once an applicant has the qualifications you need there are the problems with location of the applicant, compensation they require and years of experience. Most of the thousands of applicants searching for a new position will fail in one or more of these conditions.
If your business is forced to use this method of acquiring new talent ask yourself the following questions before you begin the search.
- Why do I need additional help which can’t be found through my current sphere of influence?
This is one of the hardest but most important questions to answer. There are many possibilities including:
- Your sphere of influence is small
A small sphere of influence can be a result of being a small firm, operating in a small niche or just starting out. To expand your sphere of influence you can learn how to network for real (not the weak social media version) by becoming active in your industry. Providing value through the sharing of ideas and information which can gain some attention.
- Your sphere of influence is tapped out
This can happen when a company is growing fast, where the need for new employees seems to outpace the available manpower but more often it is a result of employee turnover.
Be honest with yourself to find why your influence is exhausted. Is your turnover higher than others in the same industry? If it is then find out why. It could be your wages are low (the least likely case), the environment is toxic or your hiring process is broken.
- Your employees have little incentive to help
Incentives are great for influencing your employees to help your business grow. Most business people link incentives with money. This is not always the case and in some situations could be detrimental to finding valuable employees.
Let’s face it you don’t want your employees recommending someone solely because they get a bonus! Instead, if they get a chance to work with someone they like, can help someone they know find valuable employment or get a chance to mentor someone they believe in, their motivation will be more valuable to your business and their relationship with the applicant.
- Your employees don’t want to help
Worst of all is if your employees are resistant to helping the company to succeed. Again, as painful as it is, you need to ask yourself some searching questions. Are they embaroused of the company, do they not enjoy the culture or do they feel threatened from new employees coming into the company?
By answering these questions you may not only improve your chances of finding and maintaining employees but you may also improve your company culture (which can translate into better profitability).
- What qualifications are essential for the applicant to have?
If you read most online job postings you will soon discover that the posting is written either as a wishlist (a collection of requirements which the company wants to add to their pool of expertise) or a list of certificates or technologies the outgoing employee had. Both of these strategies lead to a long hiring process and poor results.
Instead take a serious look at what skills and knowledge your business needs to move forward. This is a bare bones list. If you are looking for a frontend developer what is the stack you are using for development? Do you need the fast processing power of a C or C++ developer or do you use Python for your base language? Whatever it is, make the list. Talk to your other developers and see what they use the most, what is less important and what is just a bonus.
The goal is to pare this list down to only the most important things which an applicant needs to have to be successful in the position you need filled. This way you will get the most applicants to choose from and allows applicants to have a good understanding of your needs.
- What qualifications are nice to have but not essential?
This is where you can add in all the things you wish your new employee has. This can include anything your outgoing employee had but is not essential to doing the job they are vacating or could include technologies you want your company to move to.
Keep this list as short as possible as a long list here also intimidates candidates which otherwise would fill the needed requirements easily. It is important to remember the more experience and knowledge a candidate has, the higher their wage expectations will be.
- Are there any additional duties you would like attended to by your new hire?
Hiring new talent to your workforce is a good opportunity to alter the work duties of the position which would otherwise be resisted by current staff. Now is the time to consider what duties you would like to change if you are replacing an outgoing employee. If it is a new position, what else do you need assistance in?
Once you have this list you will have to determine the remuneration. Pay Rate is not the main factor for employees decisions to move on but it is a big consideration when deciding to accept a position. Most online job boards have a salary filter which enables applicants to filter out any positions under (or over) a certain salary be eliminated from search results.
When determining salary scale consider the cost of hiring, training and long term costs. Look at the current rate developers in the industry are paid and compare it to your current rate. To be successful in the hiring process the pay needs to match the expectations of the job.
Finally you need to write the posting. Provide the relevant facts which the applicant needs, some company history and what they will be doing on a daily basis. Provide the list of needed technologies and the list of additional wishlist things. Some postings title this with nice to have or consideration will be given for. Add in anything you feel is important to why an applicant should consider working with you such as health benefits, time off or social events (if that is your culture).
Title the job posting with a simple title which both search engines and humans can understand. If you are creative in the title you will limit your exposure to qualified candidates because they are searching for a software development position not a “Human-Binary interface engineer”. Look at your must have list and title it with the main language your applicant will be using or what they will be doing. Titles like “C++ software engineer” or “Full stack software engineer” are clear, easily searchable and prevent wasting your time and job searchers.
Add the posting to your careers page and/or your chosen job board. Update it by removing it when the position is filled, needs altering due to lack of success or if the job duties have changed.