Thoughts on technical (or non) interviews

Sergios Aftsidis
Aug 22, 2017 · 8 min read

A non rewarding mindset and how to escape it

https://xkcd.com/1088/

Note: I work in the tech sector so the views expressed here may not directly apply to others, but I feel that some basic principles should be universal. If you think otherwise or have different experience, feel free to share it with me.

Quite often I hear stories from people who are currently starting their professional journey and their most dreaded part: The job interview. Since I am not far from that stage myself I relate to most of them.

More often than not, however, I feel like people are not engaging this journey on the right mindset. Now I know, “right” is a strong word and it’s meaning may vary from person to person, or even among experiences. I feel though that some basic principles apply in most cases and are worth exploring.

This is more common among people with little experience, but I often see some of the same patterns in quite experienced individuals too. I believe this depends more on the individual’s character and how they are approaching said situations rather than their actual experience on the sector.


The mindset, part 1

First off, let’s talk about what comes to mind when the interview approaches.

Some key thoughts that come to mind might be:

  • An opportunity may (or may not) arise for me
  • My technical skills are being tested
  • I should be ready to face whatever challenges might occur

So, most people like preparing beforehand and this is only natural, right? From a programmer’s view, the typical interview preparation would be Googling stuff like “programming interview questions” to brush on your general algorithmic knowledge and later on more specific queries like “python interview tests” or “python2 vs python3” (you got me, I’m a Python guy) to be able to satisfy even the not-so-practical aspects you are not so sure you know “by heart” (even though you might use in an every day basis). For me at least, that was the process.

And I got into it really seriously. I had solved (or at least learned, a lot of them can be quite tricky) about 50–60 Python related questions. And then I check another article. With a 100 more. And then another one. And then I changed my Google search and 10 more appeared… and then I got desperate.

I soon began to realize that there wasn’t enough time (or energy, for that matter) to go through a satisfying portion of what I saw out there. And this process, even though actually left me with some interesting bits and pieces of knowledge (most of which I think I have forgotten right now, or accumulated by actually running onto in real life situations), had actually lowered my self confidence. I felt less prepared than before and less ready to tackle challenges. And let’s be realistic, you don’t want that in an interview.

So.. no preparation?

No. By all means, I wouldn’t excuse myself if I ever said that. I believe, however, a successful preparation routine should aim at boosting your self confidence.

If you feel that your technical background is not that strong, that’s fine. We’ve all been there. But preparing in the one week (at best) or one day (happens quite often) you have won’t change that. Improving your skills should be done when you have plenty of time to really accumulate what you’re studying, instead of getting a “grasp” of the basics. So if this is the case, invest some of your personal time to better yourself before applying for a job. Spot your weaknesses and work on them on a daily basis. Stressing over technical stuff on the night before will probably only make you lose sleep.

What you can actually do, however, is prepare your mental state. Take the evening off and do something rewarding, something that will help ease the stress of the day and empty you mind from useless thoughts. Take a walk, read a (preferably light) book. Think of why you want to work in that company. Read a bit about their background, try to grasp their mentality. Focus on yourself, try to think what your strong points are. Interviews are all about presenting yourself. Think of why you are the best fit for the job, and what you can actually offer to them. You will definitely find some really interesting ideas there, I know I always do. In the end of the day, take some time to relax. And by all means, rest well.

The interview process

So, you get to the interview. You pass the initial conversation with flying colors, and you get to the technical questions. Your heart starts beating a little faster and anxiety starts rising. You feel like a lifetime of obtaining skills is judged in whether you can solve a little programming puzzle or if you know by heart the differences of HTML4 vs HTML5. But is it really?

Story time. I was interviewing for a Python Software Engineer position, which would be a definite step up. I was a junior developer but felt like this was the time for me to reach higher (the position was for a mid developer). So, the interview starts and I am faced with a simple task. Do an operation on a list so that some criteria are satisfied. Being a typical algorithmic problem, I provided a naive solution but wanted to get on something better. Time kept passing (I had a whole hour — 3600 seconds and I swear I counted each and every one of them) but I never actually did, until they gave me the solution, which was right in front of my eyes the whole time. Utterly disappointed, I rushed to the end of the interview, knowing I had already lost any chances I might had.

Surprisingly enough, I got a second call.
Surprisingly enough, I got feedback that my first interview was a success.

Surprisingly enough, it wasn’t the first time.

I was starting to see a pattern, so my curiosity peaked. On the next interview, after it went well, I asked why I was picked for a second round. I knew they had multiple candidates, and I knew I didn’t even satisfy all the criteria in their application. What I really wanted to ask was “Is this a mistake? Did you feel bad for me?Is there a hidden camera somewhere”. But that’s not how companies hire.

The mindset , part 2

So, what I heard was quite surprising. They had focused on some points I had no idea mattered, and way less on the actual coding test. And these points were:

  • Communication. Having the means and willingness to explain what is going on to the other two people in the room was really important. Discussing your challenges, proposing solutions, rejecting them, elaborating on why. Including your “colleagues” in the process, something really important for a team.
  • Determination. “Fighting” until the last second.
  • Honesty. Not trying to hide any shortcomings (“Ehm, I don’t know if this returns a new list.. Can I Google that?”). Knowing but also admitting a solution isn’t optimal and confronting the interviewer(s) with it before they jump in and point that out.
  • Composure. Not “freaking out” while time is passing by, keeping calm even in stressful scenarios.

Hmm. OK, these are true. But again, this is a technical position. And these are soft skills. Why would these earn me a second call? I was still confused but the answer came later on, when I was pointing out that I personally think this type of interviewing is outdated. And that answer was:

“We know. We don’t expect people to actually solve all of these scenarios. We mainly want to see how they think, how they communicate and how they would face a challenge. We have other types of challenges to filter out inadequate candidates. The sole technical requirement is basic knowledge. We only want to filter those [lacking basic skills] people out.”

And indeed. The next interview tested an extremely wider aspect of my knowledge, without focusing on small technical issues in which you might get “stuck” on. Oh and by the way, it was announced beforehand, so I had plenty of time to prepare.

Yeah, this is not a real life example — a.k.a. “have you seen how Google recruits”?

Yeah, I have. And you know what? Even Google is changing it’s interview process to exclude these extremely technical questions over the phone. Or these brainteasers. And moreover, whenever they do, they give you plenty of time to prepare.

And this is where I will make my main point.

I feel like the industry is changing.

We all know that on-spot tests with unrealistic requirements prove nothing. More and more companies are getting out of this model. So, I am starting to feel that

I wouldn’t want to work for such a company anyway

What I am criticizing though, is companies that follow this pattern. Lets face it, tech is a sector where if you don’t keep up, you get tossed aside. I feel that companies using this process should really change their minds or they won’t be able to attract the correct people for the job. And this brings me to my final point

It’s a two way street — The mindset, part 3

What non experienced people (or people who embrace the aforementioned mentality) often don’t understand is that companies don’t “offer” you opportunities. It’s them who need you, people in tech won’t struggle finding a job.

Even in more saturated sectors, you rarely find motivated individuals striving for employment. It might not be that easy, it’s true. But that doesn’t diminish your value for a company. And you should have that in mind during the hiring process.

Healthy employee self esteem can lead to a company’s development — and recruiters know that. You should know that too, and it should help you create your own “interview” process for the company you finally decide to pick. Remember, it’s a two way street. Just because you’re the right fit for them doesn’t mean they’re for you.

“Let’s get realistic though. Should I actually disqualify a company from it’s hiring process?”

Summarizing

Since this is rather long, I’d like to summarize my ideas a bit:

  • You don’t have to face the interview with such anxiety. Try to be self aware, confident and do your best. If you get rejected it probably means that either this wasn’t the right company for you or that you are not there yet. In any case, it’s not a failure.
  • Prepare for your interviews, don’t do it the day before though. Try to strengthen your perception of yourself, your values and your expectations. These will help you show parts of your character that companies tend to be more and more interested on (anthropocentric approaches)
  • You’ll get your salt’s worth. Companies want to find people with value, and if you have what it takes you will not be left out. Maybe some won’t recognize it, but the evaluation techniques are leaning towards us.
  • Don’t be obsessed with providing the 100% right answers. Instead, take advantage of the situation to present parts of your character and provide an insight on how you think. It’s extremely important.

This article mainly expresses my view and personal experiences. I am more than open to discussion, both from people in tech related fields and whether they have similar experiences and from people in different areas to discuss on whether these views extend there too.

)

Sergios Aftsidis

Written by

Developer, musician, proud nerd

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade