The Developer Divide: When Great Companies Can't Hire
nirandfar.com
nirandfar.com
A Tumblr clone with $27 million, and a bunch of users, but so what? What are they actually doing any different from Tumblr?
There has to be something different, since users are joining Pinterest in droves. Non-techie women on my FB feed are raving about it.
How about you ask passionate users of Pinterest why they find it so fun?
Exactly my experience. The pins I see in my FB feed are almost exclusively from women, and are almost all non-technical (fashion and home decor seem to be very popular). I've never seen anything with this level of uptake for that audience, except maybe Facebook itself.
Pinterest gets non-techie women. It's going to be huge, IMO.
The main difference between one company and the next is the hype/cool factor. With a comment toned like yours it leads to the point that many developers are interested in personal ego than actual software.
I'd proffer that it doesn't really matter what they're doing different from Tumblr; whatever they're doing is working and organically engaging a very large number of users. Try their service if you want to see what state-of-the-art social onboarding feels like circa 2012.
Please note that I am not implying that Pinterest has this problem, but one thing that cannot be discounted among some start-up technical teams is out and out arrogance on the part of the team. I cannot count the times that I have seen a really good developer (top of the 10Xers) not get a position because the interviewing technical people did not like an aspect of the individual, specifically the aspect that they wrote code differently than the companies technical people. Two different skilled technologies can implement the exact same solution in very different technical implementations. Generally the hiring technologist will fall back on excuses like well his use of X leads to an unmaintainable system when in fact X may be very maintainable for that developer and how he thinks. The point being there is a huge problem in this industry when in comes to hiring that can be summed up by two observations which are: different solutions do not equal bad solutions, and lack of knowledge on the part of the interviewer does not equal a bad solution. Far too often those are the conclusions that are drawn though out of self reinforced bias. Again I am not saying that this is the case with Pinterest, but they should check their process to ensure that they are not doing it to themselves. I have always contended that in this industry it is more expensive to have a false negative than a false positive, a false positive will surface within a week on the job, a false negative is lost forever and possible so is their social circle.
You've hit the nail on the head (generally speaking, not directing this towards any one company).
There are so many scenarios that lead to an interviewer being in the position they are in, and many times they just don't have a clue (sorry, but it's true).
What impresses one person, turns another off. One company could be headed by someone who just learned Python (for example) and only knows one way of doing things. Any deviation from "their way" and that interviewee sucks. While another company could be run by someone who has broad multi disciplinary experience, and loves the fact that this interviewee solves a problem in a way they currently do not.
It's a crap shoot...
My experience has been that the people starting companies have VC funding dumped in their laps, are pushed to scale out their engineering team, not a lot of engineering experience behind them (they've been coding in one language for a year or two) and just don't know what talent really is. They just miss a lot of talented people, and then proclaim there are no good engineers available. It's a tough spot to be in... But a theme I'm starting to see emerge more and more...
It is the reason that I have a long history of railing against the use of whiteboard tests in the interviewing process. I have seen case after case where interviewers hold applicants to a standard that they themselves do not maintain in their code. It is why delivery is the #1 indicator of a good developer, and in my opinion #2 is respect among peers, if a developer has a large network of developers that respect them, which can be verified via references, then they are a strong candidate. I have meet very few developers that can deliver a product who where not able to adapt to the way a team builds a product once they are in the door or adapt the team to their process if it is seen to be superior.
Good point, and I totally agree. But how does one figure out the history of a developer delivering products? Or how does a developer let others know that they deliver products?
Sure, references are great, but they must be taken with a grain of salt. No one is going to provide a reference that is negative. And if you sleuth a reference on your own that comes up negative, you have no context as to why it was not positive (personal differences, the reference you found is genuinely a bad egg, that person was intimidated by the skill level of another, etc...).
I see a lot of people try to overcome this limitation with the "provide a link to your github account" statement. But that shows nothing of a persons ability to deliver software they have created for various companies who don't expose their code bases publicly.
To me, this is a very strong, yet unmet need to be filled...
For references I look for nothing more than I am a developer at X and I think s/he is good. To me it is a vote by someone that claims to know software. I look at the applicants Linked-in profile and see how many developers they are connected to. If I struggle to find a few technical people, then I get the feeling that something is wrong. Conversely if they are connected to a good deal of developers then it is an indicator that they are at lest mildly respected in development circles. It's not a science, but I bat a pretty good average when it comes to hiring.
My theory is that passion + above average intelligence + the proper environment = good developers, my job is to create that good environment, which I see as circular, an environment filled with passionate, intelligent people can be the seed of a proper environment.
I think people overcomplicated it because development is complicated, but hiring developers is not that complicated for a technical person, they just have to abandon some biased views that the industry reinforces. The first being never hire for a position, if you are looking for a senior developer but a passionate junior walks through the door, don't loose the opportunity (assuming you are not totally boot strapped and can't afford it). Conversely, if a Senior in your or your teams network becomes available pick them up. If one of your team members respects them chances are they view their skills as at a peer level. You should accept your technical talents, technical judgment if you don't they have no business working on your technical systems at a senior level.
And for the Canadians, health insurance costs are greatly reduced.