How to not f- up your first interviews as a self taught developer

Tips and tricks from someone on the other side

Berlin, Brandenburg Gate — my phone

Recently, I’ve been helping a few self-taught developers with mock interviews to prepare them for their journey into the industry.
Here my 2 cents about how to prepare yourself effectively for non-technical interviews as a self-taught developer.

Getting to the interview

The first step is always the hardest. While much depends to you, sometimes it comes down to luck.

I talked about this subject in another article: Yet another article on the first dev job the TL;DR of it is:

  • make sure you know enough to make a meaningful contribution.
  • Know your value and your limits.
  • Make sure to check the company you are interviewing for.
  • Find something to talk about from their website.
  • Don’t lie.
  • Have something to show (Projects on GitHub, Open Source contributions...).

If you are confident in these things you should get your interview scheduled soon.

It’s going to be fun.

The interview

This is where most capable devs get shut down. Let’s see the most common pitfalls.

If you are not a native speaker make sure to practice all of this in the interviewer’s language. Mastering them in a different language is not going to help you that much.

There are a few questions, always the same ones, going around in dev interviews. Being unprepared to answer them is a bad sign in many different ways.

What do you like about X?

I was doing a mock interview with a friend, preparing to be interviewed for a position as Go developer, when I asked him about projects he built in Go. He had one project working and production ready. I asked him what he liked about that project and he couldn’t answer.

You are asking me to hire you to work with X technology for 1/3 of your daily life and you can’t even name what you like about working with X technology?

That’s a huge red flag. Before you are ready for an interview, prepare one or more projects in the desired language (must be prod ready, with all the cool things X language can have).
Preparing them is not all there is to it, after that you have to sit down, think about them without getting distracted (no phone!). Coding is not all there is to being a developer.
Make sure to take some time to think about your code, you might find bugs, questions you want to answer and reasons why you like what you are doing.
Later in your interviews you can talk with passion about what you are achieving. Remember, if you don’t have an IT degree to back you, you need to show your seriousness about your craft in other ways.

Why do you want to work at X?

I just need the money.
That’s the perfect answer to not get the job. There are thousands of developers out there, you’re not talking to a charity, you’re talking with a company that needs something, that’s why they are hiring in the first place.
If your only motivation to work in a place is needing money, you sound like you are desperately trying to spam the world with your CV.
Appearing desperate is not a good strategy to get a job.

This is the reason you need to research the company you are interviewing with. You want to know what they do, and what they believe in, to see if you would like to work there.
Taking the time to getting to know the company you are applying for is probably the most useful thing you can do before an interview.

It shows that you care. You didn’t just shoot in the dark hoping to hit something.

Make sure to write down any question you have for them regarding company culture, work schedule and such.

Where do you see yourself in X years/months?

Another interesting question.
Many don’t know how to answer and end up with a confused face trying to throw some words together.
As a self taught developer this question is really important for your success, did you just start dev on a whim and will soon switch to another cool new thing or are you serious about it? This is what the question is really about.

If next year you’ll see yourself “Being a barman in Honolulu” why should they hire you if clearly you don’t plan to stick around the industry?

Do you have a project you used X for? What were the challenges, etc?

Similar to the first question, shows if you think critically about the technology and have an opinion and challenges to overcome with it.

Make sure to have a few projects available in X so you can show and discuss them. Make sure you are proud of them.

Previous work experiences with X?

If this is the interview for your first job as developer, you might be tempted to answer nope, but you can pivot it in your favour with open source projects!

If you have some open source contributions or projects (and if you don’t, you should), feel free to talk about those, challenges are similar and quality should be as well.

Regardless of what people say about having a good GitHub profile or open source contributions, if you have no degree and no previous work experience, this is the easiest way to get noticed.

Have any hobbies/What do you do on your free time?

The answer is not coding!
This question is mostly asked to get to know you more outside of development.
You’ll like not get asked this if the interview is not going well.

So, just be yourself and talk about what you like and what takes your time: family, D&D, travelling, whatever.

How would it be for you to move to X (location)?

Working remotely, I’ve never considered this question but a friend has recently been asked it.

Most jobs require to you move to a location that is different from where you are currently living. Before an interview you have to consider this as well, give it some thought, if you have a family how to handle it and all that.

The secret to ace your interview

Is to go in with the confidence that you’ll be hired, it’s just a weird dance you have to do to decide the details of the contract with the company.

This doesn’t mean you should be cocky, on the contrary, be humble, don’t come off as that person who knows everything but be sure in your positions.

Whiteboard tests

Honestly, I’m not a fan of whiteboard tests, but a lot of companies do them so let’s quickly get over them.

Most focus on solving the problem, that is not what is requested of you.
Analysing the problem is what most want to see, so make sure to explain how you are approaching the problem while you’re doing it.

Other than showing the way you think, you’ll get a few suggestions along the way, making the test easier to go through.

To provide a little help in this area I’ve been collecting a few interesting whiteboard exercises on GitHub to help practice this skill.
Whiteboard js challenges.

The exercises are not meant to be run, some do not provide the full code to execute, it’s just a faulty snippet that requires fixing.
Soon I’ll expand it with more exercises and provide detailed explanations of the solutions.

That should be enough to have you prepared a little bit more for your first interviews.

Always remember to be confident in yourself, always tell the truth (Unmasking lies is so easy during interviews..), and you will get the job you are looking for.