Merce

Recruitment processes

  • There's a crisis here

    The Indian software industry faces a challenge of epidemic proportions when recruiting young engineers. There are other industry sectors in India which are quite well developed but none face the challenges which we face. Here is why:

    • Growth. We refer here to the growth of the industry as a whole. This is the most visible reason for the challenge. The industry has grown very rapidly, and continues to grow, though less rapidly. This requires an ever-growing workforce.
    • No growth. We refer here to the growth of the individual professional. There is a widely observed phenomenon among software professionals in India -- their individual technical growth tapers rapidly after the first few years of their careers. This makes them overpriced compared to their younger colleagues, and puts pressure on software companies to seek younger professionals constantly in order to keep costs manageable.
    • Labour intensive. The software services industry has focused till now on services as their business model. To be more precise, they have focused on relatively lower-value services, for which there is a large market. The drawback of this model is that company revenue is directly proportional to the number of billable engineers in the team. This means that all growth of the industry is fueled by recruitment. Other engineering and technical industry sectors which have grown do not have this debilitating dependence on head-count for their revenues.
    • Sharply tapering pyramid. The software industry boasts of a young, energetic workforce. This appears to be a Good Thing, but hides a malaise. The industry does not have many growth opportunities for software engineers who are growing older. It can only make good use of young engineers. This means that its needs for recruiting young engineers grows faster than other industries where older engineers can be used effectively and profitably.
    • Quality issues. Young engineers come out of college or training institutes, eager to join the software workforce, but without the ability to write a small function to swap the values of two integers. This is no exaggeration. Therefore, careful filtration during recruitment is an enormous overhead.

    All these factors have made recruitment a challenge of epidemic proportions.

  • How we recruit

    We have taken a pretty hard approach in our recruitment process.

    Programming skills For young developers, we focus on just two attributes: their programming skills and their attitude. We do not pay attention to their academic qualifications or resume. Our recruitment process does not ask for the resume of the applicant till after the first round of evaluation is completed. We find it very surprising that most software companies appear to evaluate a programmer's programming ability by reading the claims made in her resume. We evaluate programming ability by asking the applicant to write small programs, using pen and paper. The revelations from such tests can fill a book.

    Attitude A young officer's attitude towards work and life is extremely critical. A young man or woman in his early twenties has very little accomplishments, only potential. This potential can only be judged by trying to evaluate the person's attitude. We have a small number of very skilled, intuitive senior officers who can evaluate an applicant's attitude towards work during the course of an interview. (If there is one weakness in our recruitment process, it is this: we have not yet learned how to groom or grow more such senior officers who can evaluate young officers correctly.) The process followed does not involve a check-list, it involves probing and feeling the applicant's psyche. Since this is an expensive process, we only call applicants for interviews after they have cleared their technical evaluation and programming tests.

    The thirty percent We are very wary of greedy applicants. We never compete on salary -- we let applicants go. One of our members of our advisory board had once said: "An applicant must be so keen to work with you that he should be willing to take a drop in salary to demonstrate his seriousness." We do not ask for such demonstrations, but we have learned to be careful with any applicant who wants the "industry-standard 30% hike". We have concluded that such industry-standard jumps during recruitment only result in industry-standard employee churn. It is an unbelievable comment on the Indian software sector that young programmers regularly change jobs every year and ask for, and get, 30% salary hikes each time. We leave it to other, larger, more desperate companies to entertain such guests.

  • What we have learned

    Quality and quality Every software company claims that they are very conscious about quality when they recruit officers. We have sometimes been able to recruit only one or two applicants out of more than 500. Some of the applicants we reject are so incompetent and unprepared that we would not induct them into our rolls even at sharply reduced salaries. Yet, we are absolutely certain that all the applicants we reject get jobs in the software industry, specially in the larger and more well-known companies. We have therefore concluded that different companies have different interpretations of the word "quality."

    Dilution Desperation to grow, in software services, is inevitably coupled with a drop in quality. The smaller companies have the best talent, not because they pay the most but because they are more careful about their company culture and recruitment. Smaller companies have smaller profit margins and have less tolerance for "flab" in quality, purely for financial reasons if not for other abstract ones.

    They matter The individual counts. The software services sector has prided itself in operating software services using the factory model where large numbers of faceless employees churn out valuable work through stringent quality checks and detailed processes. We have seen this approach in competing companies from close range, and we believe that it is extremely inefficient in terms of number of lines of stable and correct code per person-hour of officer time. You cannot compensate for mediocrity in your team members by imposing sophisticated processes and standards. The reason the larger software companies are profitable is because they can bill at extremely high rates by exploiting an arbitrage opportunity in wage rates across international borders. This arbitrage opportunity is now reducing, and globalisation is eating into the margins. The model has sustained for more than two decades, but is unlikely to sustain another two.

RELATED READING

  • Case studies

    Work we have done for other customers in various engagement models