Tech Recruiting
Recruiting in tech is a very interesting problem and I feel like very few companies have nailed this well, mostly because of nature of the problem.
Recruiting Software Engineer in general is a difficult task. Grades tell you if the person is hard-working and conformist. There is a positive co-relation between Grades and whether you can code or not, but it is not so strong. There is a positive co-relation between your competitive coding skills (think data structures and algorithms), but it is still not strong, because competitive programming requires you to spend a lot of time banging your head to solve some puzzle and relatively little time programming. Real life software development also requires you to bang your head to fix a bug, but it involves a lot more of reading through the documentation, searching through the internet and reading articles. If you have written softwares before, that definitely is a positive indication, but there is no telling how long you will take to learn things in this new organization. So, clearly what you can show on paper is not good enough to figure out if you can write good software, but neither is interviewing you for a bunch of hours. Thus making it a very interesting problem.
In my experience, most start-ups don’t have rigid hiring method, partly because they are still learning how they should select people for their new organization. Software Engineers that makes sense for big corps, don’t necessarily make sense for start-ups. Start-ups optimize for skills (what can you do right now). Big corp optimize for capabilities (what can you do six months from now, or even longer).
Overtime a typical startup finds a good method to hire candidates that works for them. But soon enough, they are going to be bigger, they will be getting a lot more applications and they would be able to invest more time in letting a talented person learn a new skills. They will have to change their method again and they will have to optimize their method for capabilities and elimination. In optimizing for elimination they will lose some good candidates, but they can probably afford it and they don’t have resources to consider all of them seriously.
Another problem for startups is that they have hire people with skills which they themselves (members of the startup) don’t possess.
Someone could possibly master this art of recruiting and putting people in right boxes. May be, someday we will have an app like Uber for Engineers. You just tell the app what what you are looking for, how many people you are looking for and it will show you a bunch of engineers which you hire without even interviewing.