Take Home Tests

Preparing for a take home test

Often companies may ask you to complete a test at home as part of the application process. Typically this would be one of the first stages, but it may not alway be. It is important that you ask for the expected deadline for submitting the task, as well as the expected duration that you will spend on it. Unfortunately it is quite common for companies to underestimate how long a task will take and say here is an hour long exercise, when the exercise is much more complex than that, so it’s something to bear in mind with your planning.

It is better to be realistic and upfront in when you will be able to complete something, than to promise you will have it completed by the next day and then not be able to. Make sure you factor in some extra time for something to go wrong when you say when you will be able to complete it by. You should also ask what the format will be for you to submit it before you start, do they have a platform for you to do the exercise on, can you return it as a Word Document by email.

It is also likely that if you are successful, you will be asked to discuss your submission in a later stage of the interview process. Companies often do this to understand how you work better and also as a check that you did the task yourself. To increase your chances of success before completing the task ask the company what in particular they are looking for. Some companies are very focused on coding style, others are more focused on testing, others may be interested in how you break down a problem into small parts, so knowing what their interests are help you focus on the right areas if the time is limited.

The following are common types of exercise you may be asked to do.

Questions Based

These typically fall into a couple of categories. There are purely knowledge based questions which have a correct answer, e.g. what is Object Oriented Programming. These questions may also be more subjective, such as competency based questions, see this competency interview guide on how to nail these. Alternatively they may be opinion based, such as “Tell me about what technology you are most excited about right now”

Coding Tests

These are very common for engineering roles, they might be to write a new feature or algorithm, or to find problems in existing code. Most of the guidance under technical interviews applies here.

Some other things to bear in mind are that these will often be on a specific platform for assessment such as Codility. If that is the case then you may not have the normal IDE features you are used to such as autocomplete and so it’s good practice to do a trial exercise on that platform to familiarise yourself with it. If it is using such a platform it’s likely you will also be timed with potentially a time limit for completing the exercise. Therefore make sure you are definitely ready before you start the exercise. Your working through the problem may also be recorded so that the interviewers can watch back and see whether you ran the tests throughout or only at the end for example.

Project Or Scenario Based

If you are applying for a non engineering role such as a manual tester or product owner you may be asked to complete a scenario based take home project. This could be something like, you are given a high level business case and you have to break it down into a project plan, or you are given a high level vision and you have to come up with a Minimal Viable Product.

Using AI

Currently there are many different viewpoints on how and when people should be using AI. Some companies would prefer you to use AI if it reflects how you normally work, others want to see what you can do by yourself without help of any tools. The important thing is to ask what their preference is on using AI and then to follow that. In particular if you are then asked to explain your work later and you secretly got AI to do it, you will be in a very uncomfortable situation.