As a hiring manager, I often have to sift through many CV’s looking for candidates and then get people in for interview. The quality of CV and interview seems to vary greatly and I have some some developers who look OK on paper but performs terribly in an interview. In this article I want to offer some practical advice so anyone thinking of changing jobs based on my experiences of interviewing potential staff. Generally I interview software developers, but the advice in this article should be useful to anyone.

You Need to Prepare for a Job Interview
You Need to Prepare for a Job Interview

There is nothing in this article that is secret or about cheating the interview. What I want to do is help you present yourself the best you can to a potential employer. They don’t want to catch you out. An interviewer will want you do to the best you can, so a little bit of preparation can go along way. Also should anyone be coming for an interview with me, I would hope they do their research and google the interviewer (Stephen Haunts) and land on this page.

Focus on your CV

You have a lot of work to do before you even get to an interview stage. The first thing you need to do is put some effort into your CV. Your CV will be your first interaction with a company and they will quickly make a decision about whether they want to talk to you or not. I remember years ago, being told that you should try and make sure your CV doesn’t go over 2 pages, but for knowledge workers I don’t think this is relevant any-more. My advice is make sure your personal details and information about your current position are on the first 2 pages and then details about your career history can follow in the remaining pages. If an employer likes what they see for your current position, they will generally read further. I know I do. If I am not convinced by the first 2 pages, then I will stop reading and move onto the next CV.

CV Preparation is Important
CV Preparation is Important

I would order items on you CV like the following:

  • Personal Information : Name, address, phone number, email address, home address, linked in page. The company or agent will need to be able to get in-touch with you, so make sure this is first.
  • Personal Statement : Write a little bit about your self. Include a brief summary of your career to date, skills, personal projects etc. This allows the recruiter to see at a glance what you’re about.
  • Career History : Start off with your current positions and work backwards chronologically.
  • Languages, API’s, Technical Skills : List out the programming languages you know, API’s, technologies etc.
  • Education Details(*1) : Details of your higher education like the course, university and grades.
  • Hobbies and Interests : Say a little bit about yourself outside of work. What do you like doing for fun? What hobbies do you have?

(*1) – In my opinion, if you have been in industry less than 5 years, I would include your degree details and results after your personal statement as I think it is more relevant if you don’t have much commercial experience. If you have more that 5 years commercial experience, then I would leave it towards the end of the CV as your degree result becomes pretty redundant at that point. I would always take someone with lots of good experience over someone with less experience, but has a 1st class honors in their degree.

I also recommend that you set up a LinkedIn account and transfer the same information from your CV onto your LinkedIn profile page. Recruiters and companies make good use of LinkedIn for searching for potential candidates. Make sure you use good keywords on your profile that match your skill set as recruiters generally look for candidates by searching specific keywords.

Help Out a Potential Interviewer

You need to provide enough information on your CV to be able to help out a potential interviewer build a solid picture of you and help guide them in their questioning. When you are writing your CV I advise for each position that you write about, do a sentence or 2 about different projects you have worked on. What was involved? What benefit did it give the company? By doing this you give the interviewer enough information about whether to bring you in for an interview and also to help them think of questions to ask you.

Another thing that I think is essential for your CV is to briefly describe any pet / hobby programming projects that you are working on in your own time. I would add this to your personal statement at the front of the CV. When ever I interview a candidate, if I see a personal programming project on their CV, then I always ask them about it because I feel you can tell a lot about a programmer by hearing them talk about something they are passionate about. Also, if I have 2 even matched developers to chose from, then I would normally go with the person who works on pet projects as it shows a commitment to learning their craft outside of work.

Pre Interview Assessments

Some companies like to perform an assessment before bringing you in for an interview. Not everyone does, but it is quite common. These can take different forms from the humble phone interview, an online aptitude test or a programming exercise. These assessments will either be used as means of reducing CV numbers, or the results may be used as a differentiator later on if the company has to chose between different candidates.

The technique I have used most is the phone interview. Normally this will only last 20 minutes or so and I use it as a way to get everyone introduced, and then talk through a few points on the CV which will include a few technical questions.

Other companies like to use aptitude tests, like verbal or numerical reasoning tests. These are normally tests that are timed. A numerical reasoning test asks you lots of different maths questions that may be about estimating, times, distances, statistics etc. Verbal reasoning tests normally make you read a passage of text and you then have to answer questions about the text. Aptitude tests are normally what are called adaptive tests. This means if you get questions wrong, the questions get slightly easier, but the bar to pass gets higher. Personally I don’t like these tests much as they are not a good overall indicator of a programmers ability. I know many excellent programmers who would probably flunk these tests. On the flip side, I know people that would probably do very well at these tests, yet not be great developers. I can understand why companies use them as a way to reduce recruitment numbers, but I personally don’t like using them.

If you know you have to sit one of these tests then I recommend you do some practice tests first. You can normally find these on the internet, plus there are a number of aptitude test practice applications you can buy for an IPad or Android tablet. It is definitely worth practicing first as trying to do these tests when you have a timer ticking down is quite difficult if you are not used to it.

The other form of pre interview assessment is the programming assignment. For this you are normally given a basic specification for an application or set of classes and you have to write the code and tests and then submit the code to the company. If they like what you have done, you will get called in for an interview. Then they will normally use your implementation as a way to guide the interview by asking questions about the code and your design choices. I quite like this form of pre interview assessment as it gets the developer doing what they do well, writing code.

Preparing for an Interview

Once you have got through any form of pre interview assessment, you will have hopefully been called in for an interview. You can greatly increase your interview performance by spending a few hours preparing. The difference these few hours will make will have a staggering effect on how well you do and how you are perceived by the interviewer.

Research the Company

This one is kind of obvious, but I have had interview candidates who haven’t done their homework. You will get asked what you know about the company. The interviewer is checking to see if you have looked into the company background. I have interviewed people who didn’t really know what the companies primary business is. I kid you not.

Interview Preparation
Interview Preparation

This preparation is very easy to do. Look on the companies website and read all the background information. Look at their products or services. Google the company and see if you can find any reviews / complaints or anything in the news.

You can also look up a companies public records. In the UK you can go to the Companies House Web Check page and purchase all the statutory documents and accounts. If the company is fairly small, you will want to know how they are doing financially. The best place to look is their public accounts. If you are not in the UK, the your country probably has a similar government service where you can access company documents. If when you look at the accounts you can see that they are just scraping through day to day, would you still want to work for them? Use this research as a way to think of some questions. The first part of an interview is normally talking about the company, so it looks good if you ask some questions at that point.

Ask the Company / Recruiter for the Interview Format

When you get selected for an interview, you should ask up front what the format of the interview will be. This will allow you to mentally prepare so there are no surprises on the day. The company of recruiter will probably say something along the line of :

“The interview will last for around 2 hours. And will comprise of a talk about the company. Then discuss your CV, followed by a short competency based interview, and then some technical questions. You will then be given an opportunity to ask the interviewer any other questions.”

If the are going to do a competency based interview (see below), then you may be able to take notes in with you about your past experiences. This is normally fine as the purpose of the interview isn’t to catch you out, but do check first that this is OK.

Competency / Skills Preparation

On the job description you should be able to identify a list of competencies and skills. These will either be hidden in the text about the role or listed explicitly. You will be looking for things like, Technical Planning, Systems Development, Decision Making, Team Working etc. You can expect that a certain portion of the interview will be probing around these skills and competencies. To prepare for this you should list out all the competencies, and then write 2 or 3 examples of where you have practiced these. Preferably these will be from you current job position, but they may be from existing positions.

You should also think of examples where these competencies, didn’t go so well on a project and what you did to fix the situation. As a person you are defined by mistakes you make, how you resolve the mistakes and what you learnt from the situation. This is a normal trait of human behavior and you will most likely be asked about how you resolve problems, so it makes sense to go armed with some examples.

As mentioned above, ask the company or recruiter if you can take these notes into the interview to refer too. When you are under pressure in an interview, it is very easy to have a mental block, so a few notes may be useful to help jog your memory. The interviewer isn’t trying to catch you out, they just want to hear good solid examples from your career history.

Planning for the Typical Hard Questions

Prepare a list of your biggest weaknesses
Prepare a list of your biggest weaknesses

There are a few questions that strike fear into every interview candidate, so it is a good idea to prepare your answers before hand. I have been asked these questions in every interview that I have attended and I also ask them in interviews myself. These questions are:

  • Where you do see your career going in 5 years?
  • What are you biggest strengths?
  • What are you biggest weaknesses?

If you don’t go in prepared then thinking of answers to these on the spot can be very difficult. Especially the biggest weaknesses question. You need to answer that question very carefully. You don’t want to shoot yourself in the foot by saying one of your biggest weaknesses is one of the main competencies that the company is looking for. When you do give a weakness, immediately say what you did, or are doing, to overcome the weakness. This shows that although you may have a few flaws, you are being pro-active in addressing the weakness.

Think of Some Good Post Interview Questions

When you get to the end of an interview, you will be given an opportunity to ask questions, so I would advise that you think of some before hand. Personally, in a first interview, I would avoid asking about pay and benefits. There will be plenty of time to ask about that should the company make you an offer. Instead you should have some questions about the job role, company, company culture etc. Some good examples are:

  • What do you love most about working here?
  • How do you see the company / department growing over the next 3 years?
  • If successful, how much influence would I have over change?
  • Why do people come to work for you rather than a competitor? And why do you think they stay?

Having a good list of questions prepared shows the interviewer that you have spent some time preparing for the interview. The last thing you want to do when asked if you have any questions is say that you don’t have any. This gives the impression that you are not really serious. Hopefully through the course of the interview you will think of some questions, but if not, have some like the questions above ready.

Interview Day

When interview day arrives, it is only natural to feel nervous. You are walking into an unfamiliar environment where a total stranger (or strangers) will start to ask you lots of questions. If you have done your preparation as described above then you are already in a very good place. All you need to do now is try to stay calm and make yourself presentable. Here are a few tips to help you make an impression on the day.

Body Language and Posture is Important
Body Language and Posture is Important

First, you should dress in formal business attire. Even if this is a more relaxed company with a relaxed dress code, you should still dress to make a good first impression. When you go to the interview, make sure you take a bottle of water with you. You will normally be offered a drink when you arrive for the interview, but still be prepared and take a bottle with you. When you are nervous in an interview, it is quite normal for you to get a dry mouth and this will make you feel uncomfortable, do you should be sipping water throughout the interview.

Try to arrive at the interview early. About 15-20 minutes early will suffice. This will give you an opportunity to get comfortable and relax first. This also give you time to go to the toilet first as you want to make sure you are as comfortable as possible.

When you are taken to the interview room, body language is really important. Try to sit down with your back straight. Don’t slouch. Try to keep you hands above the desk and not in your lap as this is a sign of nerves. When you are talking to the interviewer make sure you make eye contact. If there is more than one interviewer in the room, then make sure you make eye contact with each of them. This is a sign of confidence if you can look someone in the eye whilst you are talking.

You also need to try and make sure you talk clearly so that everyone can hear you. When you are nervous it is very easy to either mumble, or talk too fast.


The main theme in this article has been around good preparation for an interview. You start with your CV and Linked In profile. Once you have been selected for an interview you may have to do a pre-assessment test. If you are required to do an aptitude test (verbal and numerical reasoning tests), then I recommend performing some practice tests first. If you then get selected to go for an interview you should spend sometime preparing. Research the company history and background first. Then identify the competencies and skills from the job description and write down examples where you have satisfied these in the past. Also think of some example that didn’t go so well and how you overcame them.

You also need to think of answers for some of the typical tough questions like “Where do you see your career going in 5 years?”, “What are your strengths?”, and “What are your biggest weaknesses?”. You also need to think of some reserve questions to ask the interview when it is your time to ask questions. You don’t want to be in a position where you can’t think of any.
Once you are well prepared you then need to attend the actual interview. Dress smart and turn up early so you can compose yourself. Sit up straight in your chair, don’t slouch, and make good eye contact with the interviewer. Also try to speak at a decent speed and speak clearly.

If you follow the advice in this article then you stand a much better chance of impressing the interviewer. A lot of these interviewing techniques are not hard, they just need a little bit of preparation time before hand. Then all you need to focus on is that you know your chosen programming subject well.

Good Luck.


  1. I don’t think any of this matters. They either like you or they don’t. If all this matters you are going to minion factory style company anyway.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: