Skip to main content

Reverse Interview Code Testing

I've often said that live code tests are bullshit that tell nothing about coding ability and stand by that assessment, today I was thinking about a way that one can mount a challenge to a company that has formalized a "live coding exercise" as part of its process.

It goes like this, if you are told that a company you are interviewing with wants you to take a live coding test then you should tell them "I don't take live coding tests but if you wish to divine if my engineering skill is on the level of those in your team, I can give you a sample of code I've written and if you can't tell the engineering context and use for that code by inspecting it, I will have achieved necessary credits to be invalidated from taking the live coding exercise."

The reason this reverse test is valid is the premise of what is really being interviewed for when hiring software developers. It is not knowledge in real time of any given programming data structures or algorithms it is more about eventual ability to wield such structures to solves difficult application problems. That is what engineering is all about, completion time is only important on long scales not down to the minute scales for such solutions.

So if the context of those larger problems can be inferred from the code it usually indicates a very atomic solution (one that runs on a single machine or doesn't span a complex and dynamic execution environment that is networked) this is really the EASY type of crap that is often tested for in live coding exercises but tells nothing about *engineering* which tends to invisibly span across different bits of code and brings to life the efficiency of a distributed solution.

So I'd challenge my interlocutor to decipher the engineering purpose of a bit of my code...at method level show a class implementation and ask what it does globally? Or a bit easier depending on your POV show them an entire class and let them infer how the larger system uses it simply from that class code alone. If they can do that from the code in one of my projects then they have demonstrated exceeding me in the engineering ability that THEY should be looking for without needing to do any further testing and I'd acquiesce and remove my candidacy for their position.

If they continue to harp that the "live coding test" is mandatory and can't be substituted then they've demonstrated that they are not looking for engineers properly and likely have a set of unskilled programmers that I would not find it very fun to work with in the first place and thus remove my interest on those grounds...win, win.

I haven't used this tactic yet on an interview but I am thinking of doing it the next time I am asked to participate in a live coding exercise.

Comments

Tom Whitmore said…
Yes, coding tests can be a little boring. But the interviewee providing out-of-context code that can't be understood, as a mark of being better? Not sure about that one :)
Dave Stapleton said…
How will the company know you wrote it, not someone else?
Anonymous said…
I would never want to hire people who write obfuscated code. If anything, I would only hire someone whose code is easily readable. When working in a large team, this is one of the most important qualities for an engineer.
Anonymous said…
It would be a valid exercise if your code is readable, and a dialog ensues. Otherwise, any developer worth his salt should be able to decipher your code...it's how APIs are used...only a piece is exposed.

Popular posts from this blog

On the idea of "world wide mush" resulting from "open" development models

A recent article posted in the Wall Street Journal posits that the collectivization of various types of goods or services created by the internet is long term a damaging trend for human societies.

http://online.wsj.com/article/SB10001424052748703481004574646402192953052.html

I think that the author misses truths that have been in place that show that collectivization is not a process that started with the internet but has been with us since we started inventing things.

It seems that Mr. Lanier is not properly defining the contexts under which different problems can benefit or suffer from collectivization. He speaks in general terms of the loss of the potential for creators to extract profit from their work but misses that this is and was true of human civilization since we first picked up a rock to use as a crude hammer. New things make old things obsolete and people MUST adapt to what is displaced (be it a former human performance of that task or use of an older product) so as to main…

Highly targeted Cpg vaccine immunotherapy for a range of cancer

Significance?


This will surely go down as a seminal advance in cancer therapy. It reads like magic:

So this new approach looks for the specific proteins that are associated with a given tumors resistance to attack by the body's T cells, it then adjusts those T cells to be hyper sensitive to the specific oncogenic proteins targeted. These cells become essentially The Terminator​ T cells in the specific tumor AND have the multiplied effect of traveling along the immune pathway of spreading that the cancer many have metastasized. This is huge squared because it means you can essentially use targeting one tumor to identify and eliminate distal tumors that you many not even realize exist.

This allows the therapy for treating cancer to, for the first time; end the "wack a mole" problem that has frustrated traditional shot gun methods of treatment involving radiation and chemotherapy ...which by their nature unfortunately damage parts of the body that are not cancer laden but …

First *extra Galactic* planetary scale bodies observed

This headline


Significance?
So every so often I see a story that has me sitting at the keyboard for a few seconds...actually trying to make sure the story is not some kind of satire site because the headline reads immediately a nonsense.
This headline did just that.
So I proceeded to frantically click through and it appears it was a valid news item from a valid news source and my jaw hit the floor.
Many of you know that we've been finding new planets outside of our solar system for about 25 years now.
In fact the Kepler satellite and other ground observatories have been accelerating their rate of extra-solar planet discoveries in the last few years but those planets are all within our galaxy the Milky Way.
The three major methods used to detect the bulk of planets thus far are wobble detection, radial transit and this method micro lensing which relies on a gravitational effect that was predicted by Einstein in his general theory of relativity exactly 103 years ago.
https://exoplanet…