Following discussions around programmer recruitment, I often come across people who talk about simple criteria they have for who could even get an interview. And when thinking about such criteria, I typically discover that I don't fit them. I guess all this makes me unhireable?
(Phrases in quotes are paraphrases of the common attitudes I see, not quoting any specific people.)
"Programming is for young people." I didn't even become a professional developer until my mid-30's, though my work before that did involve coding. Granted, I don't think my mind is as quick as it was, but that also helps me avoid making my code too complex. And I do have quite a bit of experience, and even experience in now-obsolete platforms can turn out to be useful.
"I am suspicious of anyone who's been in the same place too long." "2-3 years is the optimal length of one job." I don't really see any point in making a change just for the sake of making a change. I like my job, I like the company, and I've had the opportunity to develop myself in interesting and challenging directions.
"All good developers started young, playing with their childhood computer." We did have a computer when I was a child, but I mostly used it to play games. I knew some BASIC but whatever I did with it wasn't much help later on. I didn't even get the point of subroutines. Sure, it probably helped me become comfortable with computers in general, but it's not like I did anything of the sort that people tend to expect.
"I always look through a candidate's Github and expect to find a professional portfolio." Here are my Github contributions
In fact, the period shown here has been exceptionally busy for my Github.
Furthermore, practically everything in my Github is small side projects, not showing anything of my actual professional work. Anyone going through my Github is going to have a very distorted view of my skills.
"Good developers spend their free time coding, they cannot stop." I never feel like coding just for coding's sake. I occasionally have side projects, but those are for real problems that I want to solve where the solution involves coding something. I do like coding, which is good since it's my job, but when I finish at work, I tend to do something else on my free time.
"I want to hire practical people, not ivory tower academics." This is perhaps not a bad thing everywhere. But in Finland, my native country, it definitely is. Fellow students of mine who worked in the industry hid their PhDs at work to avoid being pigeonholed. And recently I've been getting a feeling that there is beginning to be more sentiment against more academic backgrounds in general in software development.
Despite all these ways in which I am "unhireable", I'm still employed, still well-respected at work, and consistently get great feedback on both my programming and social skills. So maybe making snap judgments on one characteristic is not the best way?
It does make me sad when my colleagues talk about using some of these criteria or similar ones. I've gotten into the habit of saying "Doing that would mean you wouldn't hire me. Is that what you want?" but, as one could expect, it doesn't really cause them to re-evaluate their thinking all that much.
Finally, of course all that is irrelevant since I possess the most sought-after skill of a developer: I am excellent at coding algorithms on a whiteboard.