Ben Wasilewski

Web Application Developer

Use Code Tests To Your Advantage!

5-25-2020

LearningCareer AdviceCode Tests

Today I'd like to talk a little bit about something that I have seen grow in prevalance in our industry more and more over the years. With COVID-19 in full-swing, this topic has become only more relevant, and affected me more personally. What I'm talking about is Code Tests or Code Challenges, administered by would-be employers in order to assess the proficiency of a job applicant. Frankly, I think these tests are bullshit. They are disrespectful of the applicant's time, they fail to do the job they are created for, and they corrupt the interview process itself.

Recently I had to take a couple of code tests in order to apply for a job (actually, I'm still in the middle of completing them). But the exercise gave me an idea, one that I was surprised I even came up with. You see, I loathe code tests. They put you into a situation that you are never in once you're actually hired and doing the job. What I mean by this is, when you are doing a code test as part of a job application, they expect you (and often downright force you) to abstain from using any outside sources to help you solve the problems, IE Google, Stack Overflow, blogs and so on. I believe that as a developer, a large chunk of the job is knowing how to find the information that you don't already have committed to memory. It is my opinion that just being able to memorize is not enough to get the job done. Obviously other people feel differently and that's okay. I may not even be right in my opinion, but it's where I'm at right now.

Anyway, it does seem that these code tests are here to stay. I've done one with Facebook in the past, and I've declined to do a few after that. Now here I am in the middle of COVID-19, fairly desperate for work after 3 months of unemployment, and I've readjusted my values in order to try and find work. But in doing so, I have discovered a value to these code tests that was previously hidden to me.

These tests are chock full of absurd questions that make you think about problems that may not come up in your everyday dev life. They're testing your ability to break down the problem that's being solved (or failing to solve) and the code starts to change, becoming not unlike the experience of a person who is fluent in a second language.

Process:

  1. Read the problem
  2. Read the proposed solutions
  3. Work out as much as you can in your head
  4. Type the problem character for character in an editor
  5. Solve the problem in your head if you can
  6. Double check your solution in your editor

Some other tips:

  1. Inspect Element. Why not? Who knows - maybe they expose the answer somehow

Now I ask you, are these methods not the way of the programmer? Deconstructing the problem in unique and surprising ways.

Go Back

Thanks for visiting! This site was last updated on August 2nd, 2020.
If you'd like to see how this website was built, you can check out the source code here.

Copyright © 2020 Ben Wasilewski