so... for the last few months i've been doing interviews in order to fill some development positions that have opened up. fuck man... i can't think of anything more fucking soul-leeching (and depressing) than having to give "the technical interview." as i see it, there are two major, major, major fucking issues with this ungodly, unholy process. both these issues more or less make sure that it will never fucking work. they would be:
- the potential candidate
- the interviewers
why don't we start with...
the potential candidates
what is happening today? has some fucking alien civilization pointed a planet-wide ray-gun at our fucking world, bypassed the "stun" and "kill" settings, went straight to the dreaded "stupid beyond all fucking belief" setting, and just let it rip???? i just don't fucking get it. due to my own complete lack of fucking knowledge in software development, i don't consider myself to be too tough an interviewer (although i guess it's all relative). nevertheless though, i do have some minimum expectations such as:
- you must be breathing (if possible without the assistance of your mouth or terry gilliam-like portable iron-lung machine)
- you must be able to show up dressed (as long as you're not naked, anything will do)
- you must understand basic personal hygiene (anything past basic and we're pushing it here, folks)
- regardless of the language you speak, your entire vocabulary should not consist of only the words "like", "um", and "ajax" or their foreign equivalents (and you better fucking believe me... i know them when i hear them)
- i'm going out on a limb here, but i think that it is probably a good fucking idea not open the interview with questions regarding sexual harassment and how tolerant we are of pornography in the work place
jesus, if you can get past those few simple guidelines, you're almost HALFWAY THERE!!!! it truly is a fucking unfortunate state of affairs that these basic minimums cut my pool of fucking candidates down to about 10%. for your convenience, i've broken down what's left of the available pool of candidates by type (this is by no means comprehensive... feel free to let me know of others). let's take a look at these animals...
bookman
ah... this one took me by total fucking surprise. i would never expected that this kind of thing is now socially acceptable... i think an example here would more than adequately convey what i mean:
caustic interviewer: so... tell me a little bit about blah-blah-blah...
bookman (looking straight into caustic interviewer's eyes): well... that was never mentioned in the book that I read... how important can it be??
well blow me down!!! i had no idea people were just so fucking blatant about this shit in today's world. as much as i would like to say that the above was modified for dramatic effect, it wasn't. let me get this straight... wait... i just can't. how the fuck is that kind of answer supposed to help your cause? i guess all you need to fucking do today is just show that you've read a little bit on the pertinent topic, and your good as fucking gold! i can't speak for everybody, but i know back in my day, a little bit more was expected out of you than just, "yeah... i read the book." what was really fucking sad was that this fucking person was actually still employed somewhere and thought his response was perfectly reasonable!! even more hilarious was that in speaking to his recruiter later that week, i found out that he thought he nailed the tech interview...
the buzzfucker
this fucking guy's MO is to mention at least 2 or 3 acronyms or buzzwords into every-fucking-thing he fucking says. in addition, said buzzwords are thrown together regardless of the fact that it might not even make fucking sense! here are some typical responses:
buzzfucker: on my last project i used ruby-on-rails, ajax, soa, wcf, and wpf...
caustic interviewer: wtf?!
while not quite as audacious as the bookman, i just plain hate this shit. for some reason these fucking people really think they have a fucking career going for them in software development. i couldn't fucking think of anything more wrong. fortunately, i know how to deal with these fuckers in a very simple and effective fashion. i look them right in the eye... and then in a very serious tone of voice ask... "have you ever considered a career in sales...???"
the know-it-all
here's one i'm sure you've all come across... the douchebag who thinks he knows fucking EVERYTHING. i'm not even talkin' bout various aspects of technology or writing code... i'm talking EVERYTHING... EVERYTHING. the last thing i need to be fucking debating about during an interview is if i know how to make a fucking decent peanut butter & jelly sandwich. what the fuck is that about? why is it that people can't admit to fucking ignorance in some things? jesus... i think just about the only fucking thing that keeps me out of trouble is a complete lack of knowledge about almost everything... let me show you what i mean:
causticWifey: what do you know about installing crown molding?
causticPhil: ????????????
causticWifey: ok, i'll call the contractor...
see? my complete ignorance saved the day!
what really gets my goat is when the know-it-all is also "an arguer." no matter what he says, it's correct goddamnit, and he's going to let you know this by arguing with every little fucking thing you say to the contrary. not to also mention that during an interview, regardless of being wrong or right or neither, acting like a total and complete asshole is no way to win my love and affection (or get hired, for that matter)...
the one trick pony
nothing subtle about this one... no matter what you're discussing or what is on his resume, he always manages to steer the conversation/answer to the one and only fucking thing they might possibly really know something about (or not). example:
causticInterviewer: so... what tools/compilers do you normally find yourself turning to when programming 8 bit microcontrollers?
one trick pony: have you ever heard of sql server 2005 analysis services?
causticInterviewer: er... what about real-time satellite systems programming?
one trick pony: oh... analysis services all the way... you'd be surprised the kinds of real time stuff they're doing with that now
causticInterviewer: really...
wow... i had no idea about the kinds of things you can use analysis services for... do you think microsoft knows? i hear the analysis server team might be hiring...
slick dick
oh no.... not the slick dick... out of all these morons, i think i hate these fucking infantile cocksuckers the most. these guys are the slick hipster doofuses that think they are god's fucking gift to web 2.0. leather jacket, passive aggression, devoted to the indy rock band flavor of the month, thumb ring, hair that is tousled just so, and of course... a fake vintage tee that fits... just... right (and possibly vans or puma sneakers). these are just some of the tell tale signs you have slick dick coming your way.
just thinking about these fucking diseased pagans makes me want to rip my insides to a fucking bloody pulp with an apple corer and then have them sucked into an industrial hvac unit. in a way they are a combination of all the above, except they are packaged in an arrogant, sarcastic, holier than thou shell, answering every question with subtle tinges of smugness and contempt, letting you know that as a rockstar programmer, they are just way to good for your little outfit, and maybe, just maybe they might deem their presence here necessary (because in their minds, whether or not they'll get an offer is already a foregone conclusion). if you see one of these walking through the front door, do yourself a favor and just terminate the interview right fucking there. for some reason, ever since the web started getting popular, our industry has been flooded with these types.. my advice is to either go back to art school, or (preferably) kill yourself.
ok, enough of these idiots... let's move onto the people that are a real pain in the ass...
the interviewers
ok, here is the major paradox... tech interviews are possibly the biggest fucking waste of time and resources. BUT. how do you find people dumb enough to work with schmucks such as yourselves?? the answer is... i have no freakin' clue! while i can't add an iota to the solution space, i can and certainly will instigate and add to the problem space...
first off, why is it that every person doing the interview automatically thinks they know more than the potential candidate? now i know most programmers relish any little opportunity to show dominance/big-penis syndrome, but what kind of fucking petty-minded, small-dicked arrogance is that? i've seen this shit time and time again... i just don't get it... even when it is quite clear that the interviewee's knowledge far outstripped the interviewers. i once sat in on a collegue's interview and after the interview was over, the guy who conducted the interview waves me over and says, "i'm not sure how strong he was technically because of x, y, and z." while he was in mid sentence, i blurted out, "what the FUCK ARE YOU TALKING ABOUT!?!?... HE KNEW ABOUT 100 TIMES MORE THAN YOU ABOUT THAT SHIT!!!!" the last thing i need to hear is that a fucking stellar candidate was passed over because the dipshit doing the interview was too fucking stupid, ignorant, and useless to realize that we could have just hired a fucking genius... of course, this is usually avoided by having the potential candidate interview with more than one person, but that brings on a whole new fresh wave of complete unmitigated fucking disasters.
then there are the morons that always want to see code samples. fuck you... if you can't figure out whether or not somebody can write some fucking code after spending an hour (or hours) grilling them, than the only sad conclusion i can come to is that you are a total fucking ignorant tool. first of all, i can't think of one company that i've ever worked for that would allow me to show any production code from something i've written for them to another company i'd up and leave them for... (it doesn't take a fucking brain surgeon to figure that one out). ok, so what about something you've done in your spare time or code written from a personal project?? now that just reeks of desperation... "please, please, just show me something!!" god, that is just fucking pathetic. in the interviews that i have done over the course of my 15+ year career, i've only been asked to provide a code sample maybe 3 times. each time i've told them that that was completely unacceptable right from the get go (in order not to waste any more of my fucking time). after the shock that somebody dare tell them how it's gonna be wears off, they usually waive the whole thing all together and tell me that they'd still love to meet me. (for the record, i was offered the job all 3 times, and one of those offers i took up... it turned into the greatest 5 years i've ever spent working anywhere). the bottom line is that code samples are completely useless and tell you nothing. if you think you can gleam something about a potential candidate from their so-called "code sample" than you are more naive than you think, and somebody made a serious mistake in putting you in charge.
then there are the idiots that like you to interview with the team. oh man... what a hoot!! where the fuck do people like this come from... instead of wasting maybe 2 or 3 people's time, you manage to waste EVERYBODY'S TIME!!! nice... i don't think circle jerking get any bigger than this... here's what fucking i love about this one... let's say there a n wankers on the team... that usually means i know i'll have to now answer the same pet question that everybody on the team has n times!! and of course, it's usually related to what they coded earlier that day... don't you love when 3 mindless, drooling, drones who are all dressed in khakis and polo shirts ask you, "so... can you tell me the difference between a dataset and a datareader??" you're joking right? (because i'm laughing so hard i just peed my pants!)
another one of my favorites are the guys who feel the need to ask - the deep questions. i remember during one interview i had, we started talking about design patterns. ok, fine. anyway, after answering all the "technical" questions (e.g. how would you implement a double dispatch pattern?), he thought he'd move into the deep questions, and looking me right in the eye and speaking as solemnly as possible, he pulls this one out, "so which patterns don't you like, or have a strong aversion to?" HA, i almost burst out laughing right there... oh man, what a great question... let's see, i remember when i was a boy a singleton broke into my house, beat up my dad, shot my mother, and stole the family jewels!! i guess i hate singletons! and then there was this other time when a decorator mugged me in downtown new york... in broad daylight!! i guess he qualifies too. or what about the time when that evil factory method teased me in 5th grade!! HA... "what pattern's don't you like??" that's fucking great... i wish i had more questions like that on interviews, this way we could all be fucking comedians instead of developers!
just thinking about this shit gets me sick to my stomach... i mean, what about the guys who ask questions like, "name all 16 methods of datatable.writexml()??" uh... ok... give me a fucking sec while i open up msdn... why the fuck would you ask somebody any kind of fucking question that could be answered by any kind of reference??? man, talk about useless. then there are the "what would you do if you were in x situation???" i love those. i'll tell you what i'd do.... i'd fire your ass!! it just never ends. i could go on forever...tech interviews have turned into such circuses.