Getting through the hardest part of a Tech Job Interview

Upon understanding the structure and how to prepare yourself, the most important part of being successful is PRACTICE, PRACTICE and PRACTICE.


Don Kaluarachchi

3 years ago | 4 min read

Photo by Carlos Arthur M.R on Unsplash

Interviews can be nerve-racking no matter what stage of the career you are in.

However, as Albert Einstein said “In the middle of difficulty lies opportunity” — the opportunity, in this case, being the potential job you could secure should you be successful. Therefore, you just got to push through and do your best!

In addition to all of the ‘normal’ components of an interview, a job in the technology industry has a ‘technical test’ aspect to it as well — which is, arguably, the hardest part of the interview process.

Though, as with everything that is ‘hard’, understanding the structure of it, what is expected of you and preparing yourself will definitely give you a better chance of being successful.

Format of the Questions

Questions in a technical test (coding test) usually tend to vary in difficulty from Easy or Medium to Hard.

A useful rule of thumb is to spend about 10–15 minutes working on an Easy question, 15–45 minutes working on a Medium question and 45–60 minutes working on a Hard question. You will likely have 2, 3 or 4 coding questions for your technical test — with each increasing in difficulty.

Due to this, you need to plan your time to ensure that you have enough time for each question.

If the coding test has three questions and estimated to take approximately 2 hours, aim to spend less than 15 minutes on Question 01, less than 45 minutes on Question 02 and less than 60 minutes Question 03.

The first question is almost always an easy one that doesn’t account for a lot of the point, so you need to focus/spend more time working on the questions that come later on.

Most of the time, you can use a programming language of your choice so make sure that you use the one that you are most confident with.

Occasionally, a company might not support the programming language of your choice or expect you to do the test in the language they are using — in which case you should spend some extra time familiarising yourself with the language before you attempt the technical test.

Remember that companies are trying to figure out if you have the ability to problem-solve, not if you are a robot that remembers all the syntax.

Therefore, you should spend more time trying to develop your problem-solving capabilities rather than trying to memorise all of the syntax.

In terms of knowledge with CS concepts, read up (or refresh your memory) on Mathematical Operations, String Manipulation, Arrays[Lists] — including 2D arrays, Linked Lists, Queues, Slacks, Hash Tables. Familiarise yourself with the search and sort algorithms as well (linear search, binary search, bubble sort, merge sort, insertion sort).

Again, this does not necessarily mean that you have to memorise the syntax for these algorithms, just that you need to know how and when to use them.

Companies aren’t looking for your ability to memorise information but rather your ability to use the information at hand (information you know) to solve problems, as this is likely to be what you would be doing on a day to day basis when working at the company.

Preparing Yourself

Upon understanding the structure and how to prepare yourself, the most important part of being successful is PRACTICE, PRACTICE and PRACTICE.

Practising constantly is going to help you understand the process of problem-solving and to be able to use any Computer Science concept/theory you know of to reach a solution.

A few online platforms could be used for this:


HackerRank is a platform that could be used to prepare for technical tests with its questions ranging from ‘Easy’ all the way up to ‘Hard’.

Questions on HackerRank force you to think outside to box and use any theoretical knowledge to solve problems.

HackerRank could be used to get started with technical tests since the ‘Easy’ questions on it are quite simple which will give you the confidence you need to progress further.

Screenshot from HackerRank
Screenshot from HackerRank is similar to HackerRank in some aspects and therefore choosing between the two tends to be due to personal preference.

Questions on usually increase in complexity every time to slowly develop your problem-solving capabilities and in turn, get you ready for the interview.

Screenshot from
Screenshot from


LeetCode is another platform that could be used to improve your programming skills. Though LeetCode does have ‘Easy’ questions, this would be recommended if you have some sort of previous experience with programming (if not start off with ‘HackerRank’ or ‘’).

LeetCode does have a feature with monthly coding challenges where you are presented with one new question every day that you have to solve to accumulate points (which should take you about 15 to 30 minutes to do).

Screenshot from LeetCode
Screenshot from LeetCode

Another feature on LeetCode is the ability to real (timed) mock test which could give you a feel for what a technical test is like.

This would be great practice for you as well since you would be trying to solve a problem in a timed exam condition similar to the real technical test.

Screenshot from LeetCode
Screenshot from LeetCode


Codewars is another platform, similar to the other three, that could be used to enhance your technical skills to prepare for a job interview.

This platform, however, is recommended for more advanced programmers as it requires some level of technical knowledge before getting started.

Screenshot from Codewars
Screenshot from Codewars

As with any programming task, no matter the platform you use, solving a coding problem (technical problem) should give you a buzz and make you feel excited — which should help you stay motivated and keep working towards your goal.

Finally, as always, GOOD LUCK!!!


Created by

Don Kaluarachchi







Related Articles