Why Most Companies Get Hiring Developers Wrong
In my software development career, I’ve been hired and I have hired. Now, in my job of running a talent assessment company, I’ve been observing our customers dealing with the precarious nature of hiring developers. As a result, I want to share my observations about the challenges in hiring developers as well as some solutions.
1. Talent Shortage?
In 2019, 126,066 new Computer Science graduates (at both the B.S. and M.S. level) joined the U.S. workforce, yet vacancies in software development persist. As of May 2020, there were 258,607 Software Developer vacancies in the U.S. So, is it hard to source applicants for a software development job? No. If you post a software development job today you will have plenty of applicants in your candidate pool. After the most basic screening, however, you’ll be left with few viable choices and the overwhelming impression of a talent shortage. Due to this impression in part, roughly 240,000 H1B visas are issued annually to immigrants coming to the U.S. for software development jobs.
2. Compensation
When you make an offer to your ideal candidate, you will be faced with the twin challenges of extending a “competitive enough” offer and hoping that your already generous offer is not used by the applicant as a jumping-off point to negotiate even better compensation with another employer. Ultimately, your software development employees’ salaries may reach the level of senior management salaries, and they keep rising. Oh, and you’re still on the hook for those cool perks.
3. Retention
If you were able to successfully hire developers, it doesn’t mean you can now sit back and relax. Since the demand for qualified developers is so high, staffing agencies and other companies who may be offering higher salaries and better perks will compete for those same developers even after you’ve made the hire. All that contributes to Software jobs continuous topping of the highest Turnover Rates list.
4. Diversity
This topic deserves more attention. If you look at the employee demographics of major software companies, it’s not hard to see that mostly Caucasian and Asian men compose the “guild” in the software development field.
Source: https://hackerlife.co/
It is safe to say that the responsibility for such disparity does not lie solely with employers. Similarly, the candidate pools are far from the perfect picture of diversity.
Computer Science majors are not even close to reflecting the demographics of the general population. Here are CS major demographics from Stanford University (the Mecca of STEM higher education in US):
Source: https://medium.com/@jcueto/race-and-gender-among-computer-science-majors-at-stanford-3824c4062e3a
Why are women, Blacks, and Latinos so underrepresented in software development compared to the population?
According to the data compiled by Gallup, there doesn’t seem to be a dramatic difference in the technology interest in early education for any of these groups. What is happening, however, is a “Catch 22” situation in which women and minorities are not feeling a sense of belonging to the world of Software Development because it doesn’t look anything like them. Companies and universities are failing to change this picture due to the lack of diversity culture.
What Are We Doing Wrong?
It might seem like the challenges with hiring developers are unique and each requires a unique solution. I would argue that they all stem from one fundamental misconception: Software Developers must be hired based on hard skills.
Skills Are King?
Every Hiring Manager of a software development team I’ve ever seen focuses on finding people with the right skills. These are hard skills including programming languages, frameworks, environments, etc. ZipRecruiter even compiled the top 10 Software Development required skills based on over 9,000,000 job postings. Today’s software development landscape offers a huge variety of tools. As a result, you have a fairly low likelihood of hiring a developer with the exact skill set that fits your specific needs.
With this in mind, it’s now easy to see why your relatively large applicant pools are so quickly reduced to only a few options. As a result, what you are actually screening for is job experience focused on the very specific skills that you need right now. The very few people that you are left with are likely overpaid, not the best performers, and lack diversity.
Skills are learnable and perishable. One coding language is easily replaced for another, and software developers who are good will pick up a new language without any trouble. Lastly, skills are linked to job experience but not to job performance.
Here is what a typical hiring process for a Software Developer looks like today:
The R-sq number in each level of the hiring funnel is the predictive validity this method has on its own of workplace success.
What’s the problem with this developer hiring funnel setup? Typically, recruiters and hiring managers use methods with lower predictive validity (and higher bias) earlier on in the hiring process. By the time you get to the end of the process, you’ve already severely restricted who you have in your pool.
How do we fix hiring developers?
1. Start Hiring Developers Using Soft Skills
The strongest predictor of workplace success is not hard skills — it’s soft skills. With soft skills, you can achieve predictive validity (R-sq) levels as high as 70-75% (roughly 10x the efficacy of resume screening). There are multiple ways in which Cangrade helps you predict success using soft skills:
Pick & Choose.
If you are running a small startup company, you must have a pretty good idea about the kind of people you would like to work with. It’s particularly important because you are still in the process of shaping your company’s unique culture. So you alone get to define the type of people who fit into your vision. Cangrade gives you a choice of 50 personality attributes. Go ahead and choose around 20 that are important to you.
Use Big Data.
If you don’t know what you are looking for (let’s say you’ve never hired developers before) — no problem. Big Data will come to your rescue. It will allow you to take advantage of crowd wisdom and use a Success Model that may not be as specific to your vision but will be able to identify people that generally have the right soft skills for a developer.
Leverage Your Data.
If you are a big company, intuition is no longer your best guide. Therefore, you need to inform all your decisions with data and hiring developers is no exception. What Cangrade does best is use AI and Machine Learning techniques in order to create a Success Model. This model most accurately predicts employee success based on whatever metrics that you see as important. The metrics can be anything from performance ranking to the number of bugs fixed or the number of patents filed.
No matter which option you choose, Cangrade guarantees that your Success Models will have no built-in biases. This is great news for your diversity initiative and removes any artificial barriers towards traditionally non-represented groups having a fair shot at landing the job.
2. Think About Hard Skills Differently When Hiring Developers
Let’s suppose that your main development language is Python. Does it mean that you have to test your candidates for Python knowledge? No.
Hiring developers is a long-term investment. What you want is not specific language knowledge but the ability to write good code, debug, attend to details, etc. Any programming language requires these competencies. If an applicant doesn’t know Python but does know JavaScript (and can perform really well in it), it’s highly likely that they will be able to learn and become proficient in the languages that you need.
Will it take longer to ramp up this person? Maybe. But on the upside, you are opening up your pool to a much wider and more diverse range of candidates. These applicants are likely to have lower compensation expectations and will be excited about the professional development opportunities. They also will probably stay longer.
Cangrade has a generic task-based hard skills assessment that organizations can deploy in a variety of languages to give each candidate a fair shot at success:
3. Use Structured Interviews for Hiring Developers
Conducting interviews consistently across candidates will create a standardized process that ensures objectivity and keeps bias at bay.
Each applicant’s strongest and weakest professional competencies drive Cangrade’s auto-generated personalized Structured Interview Guide. Consequently, the guide allows you to take a deep dive into both and to make sure strengths and weaknesses receive equal time across developer candidates.
Additionally, each question allows for a simple rating. This creates an instant scoring system that recognizes differences of opinion among interviewers and prevents any one recruiter’s opinion from necessarily taking precedence.
Short on time? Or candidates in a different time zone that make them tough to schedule? There is also the additional option for an applicant to video-record their response.
How will these efforts help my company when we are hiring developers?
You will see three main positive impacts of these efforts:
- To start, your recruiters can consider a larger and more diverse candidate pool by focusing on soft skills first and changing the way you think about hard skills.
- Later on, your hiring managers can increase the retention rate of those hires by focusing on personality fit and professional development of hard skills.
- Finally, your organization will ultimately hire developers who produce more value long-term by making your assessment tailored to performance metrics.
Here is what your process should look like:
Click here to schedule a call with a member of the Cangrade team to learn more.