WARNING: This blog post it
not a typical rant about how BAD a hiring process is (cite: millions of anti-Google interview blogs).
Recently I applied to
Justin.TV with
zero expectations, so much so that my "covering note" was written in a very unprofessional way in which I did not attempt to sell myself in any professional capacity other than fun, in essence I was just being myself.
You can therefore imagine my pleasure when I got an email from someone at Justin.TV with an equally fun reply and saying that they thought my resume looked awesome and inviting me into the next stage.
The Challenge: there is always a programming test, to which JTV was no exception. Except they were, as their test was not a boring, repetitive, multi-choice web based test that had been copied directly from a Java programming certification book by
Katherine Sierra, like so many recruitment "agents" perform. No, their test actually made me think! [insert shock here] It was an
actual challenge!
I was going to explain the test in detail, but I don't think I will, in case someone applies and reads this, as I feel that the tests should remain unpublished - unless you already know the link of course ;). But suffice to say, I actually enjoyed it and the code I wrote I was proud of. I actually use the application I created almost daily as it is better than one of the software tools I have always used.
My first thought was to Google "how to do this", but I managed to stop myself in time. I realised I had a challenge that I should hit it in the face, I had become too complacent just Googling things, I never did it before Google so why now?. Secondly, at least that way I knew if I passed the test that I had done it myself and I would fully understand and be able to justify my design choices. After all, JTV won't be looking for someone who can just Google for a solution are they? (Answer: no they aren't, I'm sure).
At about 1am I submitted my application based on the given specification. I was pretty pleased with myself no matter what the outcome was.
A day or so passed and while I was coding some monotonously boring XML processing for my current job, I realised that I had missed something important. I could increase the efficiency of one of my algorithms substantially with just one line of code. Face palming, I waited until the working day was done and implemented the update, ran it though the test harness I had written, and it worked and it was even better.
Under the guise of iterative development I built v0.2 of my application and sent it off to JTV, expecting that my original solution had already failed to impress them, but I don't like to leave anything incomplete (even if I didn't know it at the time).
To my subsequent surprise, the next day I received an email saying my "problem solution looked good!" and they would like to invite me to the second stage of a phone interview.
Again, I don't want to give too much away about their process, but a couple of days later I get a call from another of their team and once again he was super friendly and really pleasant to communicate with. It was not like any interview I have ever had where the interviewer is almost suspicious of whether you can actually do what you claim.
Well this call lasted an hour and we actually had a good conversation and a couple of laughs and there was some coding involved. I suspect I probably talked too much and didn't code enough, but the guy was really friendly.
So from an application that had started as wishful thinking, I was now thinking "oh man, I
really want this" and it wasn't because of the money, the perks or the prestige, it was because the guys seemed so cool.
It didn't take them long to get back to me the next day really nicely saying that they would not be moving forward with my application and this is where my only criticism can be levelled and it isn't that they didn't want me, they need to hire the right people, but it was that they didn't tell me why.
I have interviewed my share of developers and I have always told them exactly why I haven't hired them, always constructively. Perhaps I am different from other applicants but I would liked to have known what specifically wasn't right. Was it my skill set, my phone interview, something in my code or that I just wasn't the right fit for them?
I would have really liked to have known because I could have used whatever it was to improve my interview technique or my code, so I emailed them back, thanking them for their time and asking if they could tell me why so I could benefit from the experience.
I know they are busy, but it wouldn't have taken long just to provide a quick constructive feedback, but I didn't get a reply. I did think about emailing them again, but who wants to be a nag :\
So that is my
good experience, and if you are thinking of applying to JTV my advice is to
go for it and just be yourself, they are clearly cutting edge and clearly have fun at the same time. Just a shame I couldn't join them (I am in San Francisco later this year, so maybe I will pop in just for a gaming session with them) and I just hope all start ups are this cool and friendly if only for an interview :)