Acing your IT interview

Acing your IT interview

Welcome to ASK HB!

Ask HB is a new column that features actual tech questions submitted from programmers just like you.

In last month's Ask HB column about finding time to be a better programmer, Brett had a comment.

In Brett's own words:

I found however good I got at programming I still wasn’t good enough for the ludicrously bad IT job interviewers out there. One government department wanted me to create an entire app for them. For free. Before the first stage interview.

I’ve found the solution – leave the industry. I’ll code as a hobby, and let somebody else worry about where the next generation of coders are going to come from.

IT interviewers

I hear you, Brett.

There are some terrible IT interviewers out there, and I've encountered my fair share of IT interview horror stories. Your example about building an entire app for free adds another level of craziness when interviewers take shortcuts to assess a candidate's skills.

I'm also hearing that you want a successful career, and you've taken steps to improve and get better at programming. You're willing to code as a hobby which is fantastic! Additionally, you've taken the time out to leave a comment on Hacker Bits which tells me feel strongly enough about this.

Although you're considering leaving the IT industry, all signs point to one thing... if you had the option of a successful IT career, I believe that you'd take it.

A different approach

The Internet is full of the same suggestions. I won't be focusing on things you could easily find anywhere else on the Internet.

You've probably come across these typical suggestions:

While all of these are all helpful, they may not all be helpful for your unique circumstances.

Your assumptions

In your comment, there are a few assumptions that you've made. One-by-one, I'm going to breakdown those assumptions and suggest alternatives to help you conquer the interview process.

Here are your 3 main assumptions:

  1. You must pass an interview in order to be hired by an IT company.
  2. Being not good enough in an interview is a sign of failure and should be avoided.
  3. You cannot avoid failure and get better at interviewing.

Are interviews required?

Based on the current IT practices here in the US (and where I believe you're located, the UK), passing the interview is a prerequisite for landing a job at most IT companies. Before we go into how you could approach cracking the interview process, there are exceptions.

The assumption that you must pass an interview in order to be hired by an IT company isn't always true.

Before a company hires you, they'd like some assurance that you can do the work and would get along with other people on the team. Interviewing (no matter how flawed the process) is just one way to assess job candidates.

If an IT company is convinced that you're the right candidate, you could potentially skip a programming interview all together.

For example, I've been hired based on recommendations from colleagues and professors I've worked with. I didn't need to do a whiteboard coding exercise, build an app or take an interview exam, because colleagues and professors already knew I could do the work and could vouch for me to the hiring team.

Having someone who can vouch for you at the company can sometimes allow you to skip proving that you can code.

In some cases, the coding interview is ingrained in the company's hiring process. Having someone who can vouch for you helps in these cases, too. A close friend of mine didn't do well on his programming interview but went to university with one of the people on the hiring committee.

Guess what?

The committee gave him another chance with a take-home coding problem, and then he got the job.

Don't get me wrong...

I'm not suggesting you coerce someone to vouch for you so that you can skip the coding interview. All I'm suggesting is that getting better at programming isn't the only way to increase your chances of passing an interview.

Reach out to your network for anyone currently working in an IT company. It's a great way to increase your chances of success.

Is a no-hire a sign I've failed?

While I agree that leaving the IT industry means no more horrible IT interviews, it's unfortunately something we have little control over.

I'm absolutely not a fan of IT interviews and find them stressful.

I've been on both sides of the fence (interviewee and interviewer), and it's usually not fun for either party. As the candidate being interviewed, I've gotten many more discouraging no hires than job offers.

Here are a few pieces of feedback I've gotten over the years:

  • We're making some budget changes and will let you know when we get the budget to hire again.
  • Ray lacks basic engineering skills.
  • We've decided to go with other candidates at this time.
  • Ray doesn't have a tester's mindset.
  • Ray tested positive as a dev, but not as a tester.
  • Dreaded radio silence...

Despite these painful reminders, I have continued to interview and code for a living for over 15 years now.

When I look back, it's because of these painful reminders that I changed how I view the no hires.

Instead of seeing each interview as a failure (not getting the job) or a success (got the job!), view each no hire as another step on your way to getting hired. In other words, success is the result you're looking for, but failure is the path to get there.

Interview, find out what works and doesn't work for you. Get feedback about your no hires. Based on that feedback, take action to improve yourself in those areas.

Always reach out to the recruiter, interviewers or hiring manager to get feedback.

Yes, some might ignore you or give you generic HR replies. The ones that do provide feedback are pure gold, because they tell you precisely where your gaps are and what to improve on. Sometimes our view of how the interview went isn't what others see.

Get feedback from the exact people who will be making the hiring decisions, and take action to improve on that feedback. Find your weaknesses, find your strengths, experiment.

In one of my previous roles, I was applying to be an SDET (Software Development Engineer in Test). After the interview, the recruiter called me and told me they wouldn't be moving forward with the hiring loop.

I was totally discouraged, but I decided to find out what happened from their perspective. I asked if the interviewer had any feedback about the gaps he observed during our interview.

Bracing myself for some generic HR lines, I was pleasantly surprised to hear her say, "The feedback is Ray lacks a tester's mindset. He didn't approach the problem from a tester's point of view. He tested positive as a dev, but not as a tester."

Ouch!

I thanked the recruiter for the honest feedback, and for the next year, I beefed up on my tester skillset. That was my gap, and I figured if I could close the gap and continue to "test positive as a dev," I could ace the interview.

I reapplied one year later. This time I was armed with a year's worth of tester knowledge and passed the whole interview loop.

No one is born interviewing well. It's a learned skill that you can improve and strengthen.

Remember, your success comes not from avoiding interview failures, but tackling the interview failures and learning from them.

Do I have to fail in order to get better?

Interviews are inherently stressful. They are even more stressful when you have a job on the line.

Suppose you could do a practice interview with no job on the line, no need to dress up and no one to make you feel bad. Sounds too good to be true?

Nope, free mock IT interviews are a real thing!

Aline Lerner (a past Hacker Bits contributor) has a really interesting service over at interviewing.io. Although I haven't used it myself, my understanding is you get to practice IT interviews with engineers from top companies, anonymously.

Here are a couple of benefits:

  • Build your confidence.
  • Overcome interview anxiety.
  • Enhance your reaction time in interviews.
  • Finally, there's a feature to unmask the interview participants in case the employer wants to make a job offer. (Probably not free)

Interviews are just "brick walls."

...the brick walls are there to stop the people who don’t want it badly enough. They’re there to stop the other people.Randy Pausch

Your next steps

Reach out to your network for anyone currently working in an IT company. You might skip the coding interviews. More likely, it'll improve your chances of being hired.

See each no hire as another step on your way to getting hired.

Get feedback from your interviews, and take action to improve on that feedback. Find your weaknesses, strengths and experiment.

If you'd prefer to experiment less publicly, give interviewing.io a try. Build your confidence, overcome interview anxiety and enhance your reaction time in interviews without some of the stress of a real on-site interview.

Finally, let Hacker Bits readers (or just me, if you prefer) know how things are going. I'd love to hear what's working (or not working).

Take action today!


Ask me your question
About the Author

Ray Li

Ray is a software engineer and data enthusiast who has been blogging for over a decade. He loves to learn, teach and grow. You’ll usually find him wrangling data, programming and lifehacking.


Photo by Japheth Mast on Unsplash.

Disclaimer: Please note that some of the links in this post are affiliate links (e.g. Amazon), and at no additional cost to you, we earn a small commission if you decide to make a purchase. Please do not spend any money on these products unless you feel you need them or that they will help you achieve your goals.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.