I don't have a GitHub (bitbucket, etc.) account, can't remember the last time I contributed to any open source project, and have very few hobby programs I work on outside of my job.
Yet somehow I'm consistently rated very highly by my peers, to the point where I have significant influence on the technical direction of projects I work on.
The reason I don't have hobby projects or dev social media accounts is this: by the time I get home, I have a spouse and two children who I have a life with outside of programming. I frankly don't have time to work on hobby programming outside of work to the level of sophistication that rises to the sort I'd feel comfortable showing in an interview. And picking some random toy project that does would quickly reveal how little I care about it.
Edit for clarity: that said, I think this level of transparency is fantastic. I have nothing negative to say about it.
On the other hand, it is not necessary for a company to hire every good developer that walks through their door. What they need to do is to hire enough people and try to optimise their good to not-so-good ratio. Even if their process would not select you (a good developer), it does not mean that it is not a good process.
The original question asked whether this was slanted towards younger developers. Although I don't interview people this way, I would expect that good senior developers could pull an interesting kata out of their back pocket as long as they had enough warning to set up their development environment ahead of time. Hell, I'm quite sure I could fill up a couple of hours with FizzBuzz variations and still come away giving a good impression.
Basically, when interviewing for junior developers, I want to see if they can code and if they can take direction. So it's cool to write any stupid code and then help them explore it. I'm trying to find out if they can listen to criticism and if they can utilise that criticism to improve their code.
For senior developers I want a lot more. I want some evidence that they have spent their time thinking about software. I want to see their opinions, but more than that, I want them to be able to show why their opinions are worth listening to. When a senior dev comes on my team, they are not there just to write code. They are there to inspire others to greater heights.
If you quickly revealed to me how little you care about some random toy project, I would try to help you see the point. It's not about the toy project. That project is only a medium for communication. If you still couldn't see the point, then I would probably conclude that you were not right for our team. That might be my loss, but as long as my filter selects enough good people it's not really a big problem for me.
> On the other hand, it is not necessary for a company to hire every good developer that walks through their door. What they need to do is to hire enough people and try to optimise their good to not-so-good ratio. Even if their process would not select you (a good developer), it does not mean that it is not a good process.
I am led to believe, by the people on this site and others, that unless you are AmaGoogBookSoft or a Valley darling good developers are so hard to come by that they can't afford to miss good ones.
Sampling bias? ;-) I've worked in famous companies. I've worked in obscure companies. I've met amazing programmers in both. I've met horrible programmers in both. Most are somewhere in between.
There are good programmers everywhere. Grabbing a couple (ideally including a senior dev) of really excellent people will go a long way improving your team. But you need to do more than advertise and interview to get these people. You need to go out into your community, participate, and create a reputation. You need to work on your internal processes and be interesting enough for an excellent dev to be interested in you. My advice for a small up and coming team is to spend the cash to hire a well known senior consultant with a good track record. From there you can get your culture set up and you can make contacts with other good devs that the consultant knows. After that it is really just hard work to hone everything that you do so that good people think that it will be a worthwhile career move to spend time with you.
If your management strategy is to throw money at talent and hope that it gels, I think you will have a lot of trouble. Once you have talent, it's important that they are set up to succeed. This is more than just turning them loose on a project. IMHO, good teams have many dimensions to them. You don't necessarily need (or want) to have a superstar in every position. It can be good, but it requires a corresponding level of proficiency from management to get them all working together well.
If you are worried about the one that got away in your interview process, then I think it is a sign that you have very much bigger problems that you need to deal with. If you tell me that this is common in the Valley, it will not be something that surprises me ;-)
That's not really what I am talking about. I'm talking about the oft-parroted "talent shortage" wherein companies claim they can't find enough good developers. If true, companies cannot afford to let good ones get away. I personally think "we have a talent shortage" is code for "we don't know how to hire".
I agree with the person you're responding to, mostly, in that not every developer (of any skill, including "rockstar", "10x" etc.) is compatible with every company. Filters like these help both parties make that determination before either wastes too much time, and I appreciate the transparency.
I wish more companies were more honest about things like this. Of course, I've been on the interviewer side plenty, and have many times wished for more honesty in a candidate.
I have trouble agreeing with this, probably because I came up through traditional engineering. To me, this is a profession and a competent professional should be compatible with any company. Certainly some company-professional matches will be better than others. However, every significant "incompatibility" I have seen is the person, the company, or both being unwilling to admit that they have or had a problem.
We like to see code samples, and even if someone doesn't have github etc they often have something. But we also understand that there are a lot of people like yourself. Also people in that group tend to be older, and we don't want to have an artificial filter on younger developers.
If people don't have stuff they can show, we provide them a few small things they can do. The sort of problems which really should only take 20-30 minutes. We really are just looking at "can this person write code at all", so it doesn't take much.
Possibly because it is handholding them through the process. A more mature candidate would not need such direction, and might see it as not a good match for them.
Also, not to pick, but the owl character that might seem like a good idea to younger candidates, that might respect it for the good design and soft psychological impact, might scare off the mature employees that are there to get the job done and are there to engineer solutions.
Despite these things, I think it looks professional, and the fact is that if you're a startup, you're most likely looking for a younger candidate, because they are cheaper, can be more motivated, and are definitely easier to mold. And yes, if you discriminate, that is illegal in the U.S., at least.
However, at some point, you need to hire more experienced candidates, and this process will need to change to reflect that. I'm a more mature person myself, and would not seek to fill a development team with juniors. I've seen what that can do. It's fine to have interns and juniors, but that shouldn't be the primary talent pool, or you'll end up with serious design problems and lots of poor code. But that can happen with more experienced candidates also- that is why you want good, more experienced candidates to create an environment that fosters growth of incredibly smart juniors.
However, at some point, you need to hire more experienced candidates, and this process will need to change to reflect that.
It looks fine as-is to me, and within my domain of expertise I'm about as senior a person as is temporally possible to be (I'm pretty sure I know everyone who's more senior than I am).
But maybe it's just seeing how this goes out of its way to fix the problems in hiring processes that I've been seeing, and ranting about, for quite a while now.
> I'm about as senior a person as is temporally possible to be (I'm pretty sure I know everyone who's more senior than I am).
I'm just speaking as a representative of the mid-40's crowd who laments the highlighted startups focusing on sheen over substance, because the sheen gets the VC's money and the juniors hired, when what is needed is a solid business plan and good platform/solution.
> But maybe it's just seeing how this goes out of its way to fix the problems in hiring processes that I've been seeing, and ranting about, for quite a while now.
If your rant is that companies should clearly reflect who they are and who they are looking for in their advertisement, if they can do so without sabotaging their chances at hiring better people that can help fix things, then yes, I agree.
If you think that every company needs to introduce handholding and cartoon characters into its HR/recruiting process, then I'd only agree with that depending on the type of person you are trying to recruit, and would caution that might not be appropriate for someone my age.