Why Whiteboard Interviews in Tech? — A Personal Experience
Please note: This was published 2 years after it was written. Just stumbled on it in my drafts.
Permit me to say, this is (was) my first technology-related write-up ever, so permit me wherever I goof. It’s part of the building process.
So, what prompted this write-up? My recent failure at getting on a good job search experience with.
You must have observed the trend of tech companies requiring developers to go through the “almighty” algorithmic coding tests and whiteboard interviews before they employ you. I’ll share with you a bit of my experience.
My Interview with Opera for a Front-end role was the first to introduce me to whiteboard interviews and a test of my knowledge of algorithms, design patterns and principles, and time complexities. I had left my home fully confident of my skill sets. This “almighty” Laravel, VueJS, React and React Native developer was ready to go get what belongs to me (the Job opening).
I applied online and was sent a link to their coding test. I scaled successfully with a score of 81% (I’m so brilliant, you know 😉). Afterward, I was invited for a physical interview. (I felt this was for the money talks — salary negotiation).
On arriving I met the Front-end Engineering manager and he directed me to a corridor with 2 comfy chairs and a whiteboard. “What’s with the whiteboard?” Was the question that bothered my mind. The engineering manager asked me to sit then I observed these extra 2 sheets with him. Tons of thoughts started running through my mind.
We started. “Your performance In the coding test was awesome (I felt so good on the inside mhen…). However, your first question, how differently do you think you could have approached this?”
I shivered. I was lost as to how to respond to this. I could only think of one approach, that’s all. The question was:
_
Given an array of binary numbers, write a function that would return only odd numbers. I had an example of [1101,1110, 10111]
_
The only approach was to first convert any input to decimal and then check for the modulus.
I was right, but this wasn’t the only solution. What was my first failure? I couldn’t think of possible (better) approaches. My interviewer shook his head and then asked me to go study my binaries very well.
Apparently, odd numbers end with 1 and even numbers end with 0. Simple! Yet I goofed.
He decided to then test my knowledge of SOLID principles. I had only heard of them but never practiced them. “How on Earth did I become a programmer?” “Is this even a field for me”? I started doubting myself.
I mentioned the ones I could, then I was asked to explain. I begged him to please proceed to another question as I honestly had no idea of SOLID.
Next was my knowledge of 2D arrays. I goofed attempting to answer his questions here too. The question was that I found the nearest neighbors of a box in a 2d array. “Common!, I’ve only come here to embarrass myself and drag my ‘reputation’ to mud”, I thought.
Well, he asked me also about data structures. I knew array perfectly well but mumbled through mentioning others. I majored in Media technology and a bit of Information Technology, not computer science. Yet, a developer of ~3/4 years.
Honestly, my interviewer was nice. He rescheduled me for another interview with Opera global’s Engineering Manager but asked me to go prepare very well.
I thanked him and returned home seemingly sad. I in fact called a friend to express my pains. “What’s the relationship between a Front-end role and all these “jargons” questions”?
I got back to my desk and then prepared properly for my next appointment. Honestly, I’ve never studied this hard in my life. I got a good grasp of these questions I was asked and then figured out why.
These people are not particularly concerned about my skills — skill was the least of the task at hand, but how well and fast you can think.
How quickly can you provide solutions, and how structured is your coding practice.
It was a game of structure (standards) and problem-solving skill.
Well, I scaled the second phase as my second interview was a smooth conversation. I almost felt as though I was lecturing my interviewer because I really had that confidence. Unfortunately, though, I wasn’t offered the job as there was no feedback as regards the state of my interview (I learnt, months later, that I was actually qualified for the job. But HR issues. Importance of follow-up mails).
But moving on, scaling tech interviews became so easy for me. Front-end or back-end, this dude ain’t scared. I’m on another job now and it feels so good being so sure of your stand as a developer.
I hope this helps someone.