The Indian Tech Recruitment Conundrum
I have started 2 companies in the recruitment space and launched close to 3 products catering to recruitment. But most importantly I have had the opportunity to dabble in technology recruitment quite closely. Technology recruitment has been quite close to my heart and there isn't any literature that I haven't read around it. Technology recruitment has always been a challenge for companies in India. Predominantly because as much as we can be proud of producing the largest number of engineering graduates in the world, most of our graduates are devoid of the basic skills required in computation. I wrote an entire blog on the state of computer science students in India and a lot of tabloids are now coming out on record to talk about how a vast majority of our technology graduates are unemployable. Under these circumstances finding a rockstar programmer is finding a needle in a haystack.
Lets first see the reasons why its close to impossible to find the next best coder for your company. I have been a huge fan of Joel Spolsky and every part of what he has written on hiring a developer makes total sense. Joel actually divides the interview process into various phases-the first phase being sorting resumes, the next being the phone screen which is followed by the in person interview/s. Even with all this ,there is merely a 30% chance someone will crack all the rounds and be hired. Let's first talk a bit about the resume sorting process. Some of the criterion that they followed at Fogcreek were as follows:
Passion-Waxing rhapsodic in their cover letter on how they were moved to tears on reading 'Structure and Interpretation of Computer Programs'. That's Joel's sense of humour. Forgive him for that :)
Pickiness-Fogcreek spends a lot of time in understanding if the candidate really wants to work with them or is merely faking it. Its quite apparent from their cover letter and from their resume.
English- Although English is not the most important criterion when it comes to evaluating candidates, it surely doesn't hurt if an engineer can clearly communicate his ideas.
Brains- This is where Fogcreek looks for evidence that can prove the candidate is real smart.
Selectivity- They also look for proof that the candidate has been subjected to other rigorous methods of evaluation and how they fared. Win or loss is irrelevant but how they took to problem solving could be interesting for them.
Hard Core- Some technologies are inherently more complex than others and Fog Creek wants to know if the candidate has gotten his hands dirty doing stuff and creating stuff out of it. For example very few people seem to have used LISP these days or can build a compiler which requires one to have a thorough understanding of Theory of Computation.
Diversity- Fogcreek believes in hiring people from different cultures, different social circles and different communities.
If one gets past this screening then the phone screen happens. The phone screen is to understand how a candidate is in person. Its also an effort to market the company to the candidate by showing its work culture, its ethos and its innovation pipeline. These things help spread the word out faster than any other marketing tool. Joel has written an entire blog in his epic blog 'Guerrilla Guide to Interviewing'. Essentially its a mix of whiteboard coding, behavioural and case based questions, scenario based questions and business questions to understand more about the candidate. These in person rounds happen over a period of several days with several people and then finally after much rigorous discussion , an offer is made to the candidate. The exoskeleton of the tech selection process is typically the same but the way it is implemented varies from company to company. I'll come to how Google picks up its engineers in a jiffy but before that let's discuss a bit more about the process.
Aline Lerner a prominent tech recruiter in the valley talks about in her blog how difficult it is for engineers to gauge their own performance. If you see the graph between the actual performance vs perceived performance, you'd find that there is a very high probability that a candidate might not join a company if the perceived interview according to him went bad as opposed to the actual interview. In most cases an imposter syndrome kicks in thereby stopping them completely from joining a company. Take a look
So with all these types of biases and such intense filters , tech recruitment is indeed one of the most challenging tasks on the planet. Now lets talks a bit about India. We've had a large yet unorganised market when it came to tech recruitment. In tech recruitment ever since the boom started we have had a lot of recruiters or recruitment consultants as they like to call themselves. These are guys who have started small firms and hooked up with service based companies to provide them with manpower namely engineering talent. They also worked with the existing product based companies helping them with their recruitment needs. Post 2010 when the startup boom really caught up and things started improving from the subprime crisis that hit Indian IT shores in 2008, the entrepreneurial ecosystem came up with recruitment needs of their own. That is when a lot of these recruitment consultants mushroomed across the length and breadth of the subcontinent. Today if you see the TAM of the tech recruitment industry , close to 70% would be occupied by the search industry comprising of recruiters or tech recruiters across the country.
Let's talk about the online counterparts. Naukri, Monster, Timesjobs and Shine handle the majority of online queries. The problem is that a vast majority of profiles they have are active job seekers who are always looking. Although their database is significantly large , the profiles aren't that qualitatively high. LinkedIn too have started their own jobs service where recruiters can post premium jobs but again its the new age version of job portals like Naukri without any significant upper edge save a huge database of individuals with some extra details. One can call it the justdial for hiring. The there are new age tools that have popped up over the last one decade that claim to solve the problem of tech recruiting by using Artificial Intelligence or Machine Learning. The problem is, as much as good a marketing punchline it is, in reality you can't really rank programmers on the basis of few inputs like their resumes or social media profiles or their competitive programming(which is abysmally missing in India). One needs significant number of variables to understand more about an individual and his performance. In fact the entire search industry is extremely abstract in nature. The underlying hypothesis is faulty.
Let me explain why? I have worked closely with a lot of recruiters who bank solely on resumes that they receive from job portal databases or from LinkedIn. As Robert Hughes once remarked,“The greater the artist, the greater the doubt. Perfect confidence is granted to the less talented as a consolation prize." Narcissism is an inbuilt characteristic found in a majority of human beings. Our self evaluation methodology is flawed. It tends to create what psychologists call 'The God Complex' in most of us. We tend to believe we are better than the rest of the diaspora and our worldview suffers from this cognitive bias. That triggers us to embrace identities that are very different from our true self. The ramification of the aforementioned results in a bloated profile that tends to speak volumes about our achievements. That might not be connected to the actual skillsets and competencies a person has. A person could write all types of glorified stuff on his resume and his professional graph to be act different. If that be the case, the input the machine receives is incorrect and hence the evaluation procedure would also lead to incorrect results. Now if one assumes a human recruiter doing the same thing then unless the recruiter understand technology and has dabbled in it, she might not have any idea how to pick up one resume over another. Let's take an example to illustrate that- lets assume a recruiter picks up 2 profiles for a software engineering profession that requires a person to have solid programming knowledge around javascript with exposure to frameworks like Node or React or Angular. It also requires one to know a bit about compiler development. If both the resumes contain text that seems to resonate both the candidates have sound knowledge of javascript and are extremely comfortable with Automata, how do you pick one over the other. The way its been happening here in India in the last 2 decades or so is by recruiters calling candidates to understand more about how good they are which is technically a nonsensical exercise since a recruiter doesn't really have the skills to gauge the depth of a candidate's knowledge. What do you think happens in the aftermath of such an atrocious process? Loss of countless man hours worth millions of dollars for the company. Unless one follows strictly what Joel has mentioned in the resume screening part , its quite natural for recruiters to pick up profiles of individuals who might not be the right candidate for the job.
Let's talk a little about the modern recruitment 3.0 tools that claim they use AI or ML to pick up the right candidate. Now before we delve deep into it, let me take the liberty of mentioning that AI is simulation of the human brain than an emulation. Machine Learning a technique widely used to mimic the human brain is an application of artificial intelligence (AI) that provides systems the ability to automatically learn and improve from experience without being explicitly programmed. Machine learning focuses on the development of computer programs that can access data and use it to learn for themselves. More the amount of data , more we can understand patterns about a person or his performance. The underlying question is, does one have enough data on an individual to predict with accuracy his competency levels and rank them. Technically that isn't possible. Then when you take into account the bias AI displays on account of the human creators who suffer from their own type of cognitive biases, then one can't really rely on AI to come up with a set of candidates that are the best.
The next set of tools that have appeared in the recent past are competitive assessment tools.Technically topcoder was around for decades but India by then was oblivious to the power of competitive assessment platforms. Now we have HackeRank , HackerEarth and Skillenza trying to use a platform where programmers can solve problems that intrigue them and the results could be shared with the the companies. Unfortunately these aren't reliable and the results are subject to false positives. Firstly because they measure the optimality of the program on merely space and time variables in a bid to determine O(1) as best case scenario. That however doesn't really tell us anything about the programming prowess of a coder. These results are merely filters that could be used by companies to pick the top 2% they feel have the potential. The point is its not good enough when it comes to understanding more about the candidate's skills. Nothing beats whiteboard coding. The physical experience of putting forth a problem and get the answer from the candidate and in the process asking more and more questions to understand how good he is at problem solving, how good is his technical acumen or his business acumen, how good he is analytically or what is his problem solving approach? None of that could be retrofitted in one of these said tools. These tools are merely unidimensional tools that could be used as maybe the first gate but they could never be the answer to technical recruiting inspite of all the tall claims made by a lot of companies in the recruitment segment.
Then comes aggregators like Indeed that have tried to solve this problem by aggregating job posting from company websites and various other platforms. Their hypothesis is that if they create a Walmart of jobs then maybe it'll pull all active and passive candidates to come up and apply. Sad part is that it is pretty much a hypothesis and that too a flawed one. Thing is there is no guarantee a great fitment in the top 1% bracket might be from either of those camps. Some of the most competent programmers aren't found on either of those platforms. Did I speak about the colossal absence of phone screens? Guess not. Well for most, there isn't a phone screen interview that happens in most cases since there is a lot of pressure on the HR Manager to fill the position as quickly as possible. If there were phone screens a lot of people could have been filtered out before the actual in persons happens. But when you consider the faulty resume selection process ,then even for the phone screens, you'd have a lot of folks who might not be the best candidates. So even though the phone screening might take unusually longer to drill down the list to merely 1% or 2%, it still helps cut down the candidate list significantly and help save a lot of organisational time.
In a nutshell most technology recruitment firms are living in a cloud Kuku land of their own, where they believe they have the tools or the expertise to pick up the next best tech talent. Unfortunately in the real 3 dimensional world- one, you can't find them on any of these platforms and two, there aren't any platforms that can actually measure the coding competency of programmers using genetic algorithms or natural selection or anything else because the inputs or the data isn't appreciable in size to predict with a 75% accuracy that the candidate is a ninja. I explained in the previous para why competitive assessment platforms too have proved out to be major failures. So does that mean the tech recruitment crisis cannot be solved? Of course it can be solved. But the methods need to be evolved and should factor in all the data points in real time that could be used to pick the right candidates. Is it being done somewhere across the World? Well I guess not. The sad part is tech companies namely product or service companies(whose revenues depend directly on the number of resources) , still don't understand they are stuck in the quicksand of Indian tech recruitment which will take their productivity or revenue down by several notches on account of wrong hires or wastage of incessant interview hours.On top of that they need to shell out whopping sums of money to recruiters for their services or to the platform guys for using their services . All the above might increase the monthly burnout rate thereby affecting revenue. I am building a solution to resolve that and hopefully it should be able to solve the current crisis. Till then say hi to 'Whiteboard Coding' and no to anything else.