As a self-taught programmer, the thoughts of going to your first interview can be daunting.
You should not worry as this article will help you prepare for your interview as a self-taught programmer.
Introduction to How to Prepare for your interview as a Self-taught Software Engineer
Self-taught programmer can come from a lot of different background. Usually, these kind of programmers jumped straight into programming and try to learn as much as they can to land that job as a programmer.
Once they feel that they are ready and equipped with the right skills, they will start to apply for jobs and get that interview invitation.
However, often times, they are clueless as to how interviews for programmer are done and have no idea how to prepare for it. If by chance you are one of the above, the tips below will help you to prepare for the interviews and hopefully increase your chance of landing that job.
1. Learn and know basic programming concepts, methodologies and terms.
As a self-taught programmer myself, when I went to my very first interview, I was bombarded with a lot of words that I have never heard before. Terms like Scrum, Agile, Lean, Waterfall, Extreme Programming, Polymorphism, data structures, control structures just to name a few, these are things that I have no knowledge of.
Of course, I flunked that very first interview. But you know what I did when I got home?
I googled all the terms that I heard during the interview and learn about it. I always try to learn something from every interview that I had.
But, there is just no way you can know about everything..
Yes, you are absolutely correct, there’s no way you would be able to know about everything.
But, it’s better to know about a few things rather than not knowing about anything.
It’s fine if you can’t answer all the questions during the interview, but never ever let a learning opportunity goes by.
2. Choose your best programming language.
Often time, a self-taught developer get too absorbed in learning new languages thinking that if they know a lot of programming languages, it will somehow put them at the top of hiring list. While this is true to a certain point, it’s in your best interest that you should have at least one programming language that you are most comfortable with and have deep knowledge in it.
Don’t get me wrong, I am not against the idea of knowing a lot of programming languages, what I’m saying is pick one language that you like the most and study deeper into it. Most of the times, during an interview, interviewers like to ask questions that are specific to a programming language to help them gauge your skill and knowledge in that specific language.
Remember, it’s always better to be great at one thing rather than being average in few things.
Additionally, when you are asked to complete tasks during an interview with time limit, being able to use your best language will benefit you a lot.
3. Prepare for the technical assessment.
This is the dreaded part of any interview for programming position.
Technical assessment can be a take-home-assignment or on-the-spot-assignment. Consider yourself lucky if you got a take-home-assignment but do not fret though if you got the second one.
There are a lot of ways that can help you to prepare for that technical assessment. Usually, a technical assessment will often involves question to test your knowledge in programming.
These questions range from testing algorithm skills, software architecture knowledge, understanding in programming concepts, database design, mastery and knowledge in your programming languages, problem solving skills and personally I think the most popular is the question about sorting (almost every interviews that I went ask this type of question).
Below are some of the sites that can help you to prepare for the technical assessment:
- freecodecamp (You can learn about sorting in this site)
- Software Architecture (this article can help you understand about software architecture
4. Re-work Your Resume.
If you came from a different industry and self-taught yourself to become a programmer, you might want to re-do your resume. From my personal experience as a self-taught developer, I realised that the things below are important.
- One page resume is usually enough. Unless if you have a lot of projects that you did before and want to showcase it then make sure to ONLY have two-pages resume. Even then, try to only include your best projects.
- Avoid putting your picture in your resume. Yes, there has been a lot of discussions and arguments to answer the question ‘Should I put my picture in my resume?’ but a lot of interviewers find that putting your picture in your resume is just unnecessary.
- Make sure you have a killer one-liner in your resume to tell them who you are and what are you looking for as a programmer. For example, a not so killer one-liner : “A self-taught developer with 1 year of experience who is looking for an opportunity as a mobile apps developer”. You can build from this example if you want to or come out with something better yourself. Goodluck!
- Make sure to include your skills and programming languages. Have a section in your resume and list down all the programming languages that you know.
- Showcase your project/portfolio. It is very important as a programmer that you list down your projects in your resume. If you have a lot projects, try to list down the projects that are the biggest, hardest and most complex. If you are new and has never work on a project before, I would suggest that you create and work on a mock projects and then you can list it down.
As a bonus content for you, I have included my own resume template that I have used for years. Be creative!
In the end…
Well folks, I hope the above would be able to help you to land a job.
For those who are trying to land their first job as a programmer/developer, if you have been going to lots of interviews, don’t stop and keep on trying and keep on giving your best in every interview.