Job Interview - Code challenge

In my work, I deal with a lot of interviews, and I would rather focus on bringing value to the potential employer, than study for a test that turns out to be something else.

WHAT IS A CODE CHALLENGE?

A code challenge is the entry level test to see if the candidate understand abstract and systematic thinking, as an employer you give the candidate a specification for some fictional work that has to be done, during the interview it would be a matter of talking based on those requirements and not make up new requirements during the interview, as the test is merely to scoop out a potential candidate.

The future of code challenges should be based on the requirements, or none at all

The employer needs to understand that the test was done under pressure to understand the domain and problem, NOT to deliver a complete product, as said the test was minimized to the barest minimum and as such the candidate would give a minimum solution based on the intepretation of the requirements.

As we all know who works with software development and maintaining software development, it is an iterative process, that needs refinement and communication with the owner of said product, therefore turning the test into a fully fledged product is not feasible. The product of the test is a gauge, and in all companies it is about culture and fostering culture to develop good developers, maintaining that specific culture is something learned, not something all have from the beginning.

I have multiple experiences, and will keep the companies anonymous as I do not want them to get any credit or discredit from this rant. But multiple times, they do not have the required test and will give you something entirely different from the domain you are coming from. You might think you succeeded, but as you might not be in their problem domain, you have no understanding of the scope they question you into. You might feel that you did a good job and can talk you way out of the places you skipped error handling or where you would have a better idea as to make the application more viable for production, again, we move constantly between having a ready product and having a prototype, without knowledge and communication and customer with real problems, its just a test.

The basis of the test is not to see if the candidate is exactly matching your fantasy of a super developer, but more in the direction of “Can we have this person working in our company, and do he/she have the understanding of the problem we are facing”? Also do our test case reflect that, if not, the test case is just a specification for that one problem, not the future or the past of the problem.

This is where the new world is going wrong, as they believe the world is perfect and all is shaped and should be shaped exactly like they are, to reduce friction and troubles. HEY The world is imperfect, the world moves forward because of differences between you and me, and how we understand and interpretate the problem in front us.

So dear companies in the future, stop doing code challenges and expect the candidate is fluent in your culture, problem domain or has to be your equal mirrored personification, it is not going to happen.

All that knowledge you expect is not something you had in the beginning either.