I'm one of those people who doesn't have to work, but I do because I enjoy it. I moved to the silicon valley nine years ago, and in that time I've done half a dozen or so job interviews. I got no offers, so now I run my own company. It was different story each time, but the upshot (IMHO) is that the interview process seemed to assume that I was a fresh-out undergrad. In one case, they asked me to debug some Ruby code despite the fact that I told them well in advance that I have never worked with Ruby.
There was one notable exception, and that was my experience with Triplebyte. They have a much better technical interview process than any I have seen anywhere else. There is really only one way to assess someone's ability to write code, and that is to have them write code in a language and environment with which they are already familiar. Modern coding is so complex and requires so much infrastructure that productivity hinges as much or more on the impedance match between a person and their environment as it does on their actual abilities. Even the most brilliant coder will stumble if they use emacs day to day and you force them to use vi.
If you want to assess my ability to come up to speed on a new environment, I have a solution for that too: hire me as a contractor and give me a week or two to do a real project for you. I really don't understand why more companies don't do that.
>I really don't understand why more companies don't do that.
In part, because it doesn't really work for most currently employed people and may even be in violation of their employment contract. Where appropriate it can be a good approach, but it probably makes more sense for people who are already consultants/contractors exploring a full-time opportunity.
Thanks for the kind words. It's not just me, I think there are a ton of people like me out there, older, experienced, ready to contribute, but unwilling at this point in their lives to put up with a lot of bullshit. Not wanting to stomp on my humility cred here, but yes, I think the fact that the industry doesn't seem to have figured out an effective way to tap this resource is a big loss all around.
Gig to hire doesn't work if the job market is hot enough that potential employees have full-time job offers in addition to your gig-to-hire offer. I've been able to gig-to-hire for offshore developers, but never for onshore.
I don't know about Silicon Valley but in the UK with contractor rates being what they are, the employee will likely make a hell of a lot more money while on that 6 month contract then they will when they get hired permanently. So it may seem to the employee like they are taking a giant pay cut in order to have a perm position.
> There was one notable exception, and that was my experience with Triplebyte. They have a much better technical interview process than any I have seen anywhere else.
I quite liked my Triplebyte interview too (all the better that I could do it with my own Emacs config and in Racket).
> I have a solution for that too: hire me as a contractor and give me a week or two to do a real project for you. I really don't understand why more companies don't do that.
Couldn't agree more; it's just not the traditional way of doing things (maybe because it doesn't scale well). It's a great way of picking a small/medium size company you like the look of, and seeing if you and the company fit together well.
Yes. And I told them up front, during the phone screen, that I had never written a single line of Ruby code, and they said that this was no problem, that they just wanted generally smart people, and that I could climb the Ruby learning curve after I came on board. They specifically told me that all of the coding during the live interview would be in a language of my choice. They even asked me what my preferred environment was.
That particular interview was a complete disaster from beginning to end, and not just because they started out by asking me to debug Ruby code after telling me that they were perfectly OK with me not knowing Ruby.
(And, just for the record, I actually succeeded in finding and fixing the bug.)
It sounds like the problem was not your ability to debug ruby code to but your reaction to them asking you to do it. You almost sound outraged that they dared to ask you to debug some ruby code. A better candidate would have just calmly proceeded to have a go at it while explaining their thought processes to the interviewer, even if they had never coded in ruby or whatever language.
"Outraged" is overstating it, but yes, I was pretty annoyed, but not because they asked me to debug Ruby code. I was annoyed because they lied to me. If they'd just been up front and told me they really were just looking for Ruby programmers I could have told them sorry, I am not your man, and saved everyone a lot of time.
That's a bit of an overstatement, chances are there was a miscommunication and the person interviewing you did not know that you had been told there would be a know ruby questions. Seriously, its just an interview, they're not going to go out of their way to accomodate your every request, just roll with it. Since you were able to debug the ruby code, its sounds like you could have gotten the job if it wasn't for your attitude. IMO the right attitude is more important than raw technical skill, you might pass the "Can he code in ruby?" part of the interview, but fail the "Can he handle things not going his way?" part.
I recently had an interview for a developer job where I was asked lots of devops questions, even though it wasn't a devops-heavy role and I don't have much devops experience listed on my CV. I wasn't able to answer many of the questions but I drew on what little knowledge I did have to try and come up with answers. In the end I got the job because the interviewer said he appreciated how I tried to reason out answers to his questions even without much knowledge in the area. If I would have gotten all annoyed and started acting like I was being lied to and cheated then I doubt I would have gotten the job.
With all due respect I think I'm in a better position to judge that than you are. But there are two things you should know. First, I haven't told you the whole story (and I'm not going to). And second...
> the person interviewing you did not know that you had been told there would be a know [sic] ruby questions
The conversation went something like this:
Him: Welcome, the first thing we want you to do is debug this Ruby code. (Actually, the first thing he wanted me to do was copy-and-paste some shell commands from an unfamiliar text editor into a shell window, but that's another story.)
Me: Um, OK, but I've never worked in Ruby, and I told that to everyone I spoke to on the phone screen because I know you're a Ruby shop.
Him: Yeah, I know. But this is what we want you to do.
Me: OK, I'll give it my best shot, but don't expect too much.
Ok, so that conversation sounds pretty reasonable, you said "OK, I'll give it my best shot, but don't expect too much.", then proceeded to give it a shot and actually succeeded at debugging it. So... whats the problem?
Like I said: the problem is that they lied to me, and as a result they made me waste a day of my life [1]. If I'd known that this was going to happen, I could have either brushed up on my Ruby, or (more likely) cancelled the interview because I would have known ahead of time that I would not be a good fit for their company. There is a reason I've never used Ruby, and it's not that I've never had the chance. I told them that, and they said it would not be a problem. But it was.
[1] Actually, it was only half a day because they cancelled the interview after two hours. Like I said, I have not told you the whole story, and I'm not going to. But the whole thing was a train wreck from beginning to end.
Maybe they were curious about how someone who has never worked with Ruby (but has tons of related experience otherwise) would fare with it. Or, curious how grokkable their particular code is to non-Rubyists.
> There was one notable exception, and that was my experience with Triplebyte. They have a much better technical interview process than any I have seen anywhere else
This looks just like an Ad I see on reddit all over the place.
This comment breaks the site guidelines, which specifically ask you not to do this.
If you're worried about abuse, you're welcome to email us at hn@ycombinator.com so we can investigate. The guidelines say that too. Would you mind reading them and following them when posting here?
im not going to create an email to anonymously notify the same site who will review a flagged comment anyway. So, to the process as described, no. I think the comment was timely and relevant, others just disagree about the utility.
for what it’s worth i did triplebyte as well and it was actually a really good interview process. I didn’t end up accepting an offer from any of their companies but I thought they asked very practical things instead of just algorithms.
There was one notable exception, and that was my experience with Triplebyte. They have a much better technical interview process than any I have seen anywhere else. There is really only one way to assess someone's ability to write code, and that is to have them write code in a language and environment with which they are already familiar. Modern coding is so complex and requires so much infrastructure that productivity hinges as much or more on the impedance match between a person and their environment as it does on their actual abilities. Even the most brilliant coder will stumble if they use emacs day to day and you force them to use vi.
If you want to assess my ability to come up to speed on a new environment, I have a solution for that too: hire me as a contractor and give me a week or two to do a real project for you. I really don't understand why more companies don't do that.