This article is for you, yes you! The person currently reading this, who saw the title and thought, "wow this article will probably have the answers I need to get a job as a Software Developer." Damn straight! Let's get you hired!
This article is for absolutely anyone looking for a way into Software Development.
If you identify as an individual that fits into one of the categories below, you will find answers in this article of what to do next.
As An Individual:
- You have a degree in the IT sector or a related field
- You already have some development work experience
- You are self-taught or somewhat skilled already
- You are unskilled but looking to start
- You do not have a degree
- You have no software work experience
Some Positive News
Anytime is the right time when it's right for you. Everybody's timing is unique to themselves and it is better not to compare your progress with someone who has been a journey different to yours.
As proof to this statement, consider Masako Wakamiya, an 82 year old Japanese woman who has been learning how to code.
For The Uncertain Yet Passionate Individual Searching For A Path
We are well within The Fourth Industrial Revolution, a time period which marks a significant change in the way we are living our lives.
Information is abundant and we currently have approximately 59% of the global population online.
With the rapid development of constellation based satellite internet, we will see the global internet presence increase rapidly within the years to come.
If you are passionate and serious about beginning a career in software but you are currently unskilled and have no tertiary education, do not panic! There is most certainly a variety options for you.
Firstly, you need to get an overview.
Where To Start?
The IT space is large and complex and there are many avenues in which you may find yourself being drawn towards. To discover them, follow the next steps:
A. Get an Overview About Computer Science
The following video provides an in depth overview of the field of computer science.
I would advise some additional research before you decide on any particular area to start learning so that you may find a good fit for yourself.
B. Learn About the Different Types of Programmers
There are also different types and levels of programmers.
C. Learn About Programming Languages
There are, of course, many different programming languages to choose from.
I found that keeping an eye on the most popular languages and why they are popular helped to come to a decision on which to learn.
D. Learn About Possible Career Paths
Another great search term to try on YouTube that will provide additional information is: "Career paths in software", here you will find many explanations of the various paths you may choose.
E. Find Out What People Are Talking About
Besides doing your own research, I suggest to check forums and read blogs to get familiar with what's going on in the industry. It will also help you to get familiar with terms and news in the field.
We Now Have An Overview, What's Next?
There is a lot of information to digest, so take your time to read absorb the content.
Now that you have a better idea on which direction you would like to go in, the next step is to jump into more in-depth content and get some practise to up-skill yourself.
Every person has a different learning style and, luck you, there are many learning formats available online.
You can check below my suggestion of a learning path, but feel free to adapt to your own preferences.
Content Sources And Learning Platforms
After getting your development environment set up, I would work through some tutorials on YouTube.
The instructors and courses you choose are of course very dependant upon the sector you plan on going into and the language you choose to learn so just adapt your learning material accordingly.
2. Udemy Courses
After a few of the free tutorials and projects, I would sign up for some paid courses on Udemy (They usually go for R180 or so).
The paid content extends into far more depth and you get access to development communities through Discord and Slack which can come in handy when building connections and expanding your contacts in a new field.
3. Documentation & Examples
Documentation and text-books are a rich source of information that provide an even deeper and thorough explanation of content. If you are reluctant to spend exorbitant amounts of money on text-books, you can usually find a free e-book PDF online.
Level The Playing Field
As you begin to improve it is important keep track of your progress. At first the experience may feel daunting and overwhelming but if you keep notice of your progress you will soon see a significant improvement.
If you are an individual without a tertiary education, someone previously unskilled and now self-taught, I would advise 2 things. First, personal projects, they are a great way to practise and display the skills you have been learning and help to boost your CV. Secondly keep track of all the tutorials and examples you have been going through and if you can, build yourself a resume website that displays the journey you have taken and to showcases your accomplishments and achievements.
Creating 'tools' for yourself also comes in very handy, they not only assist you but also showcase your abilities to potential employees.
The Job Hunt
At this point, the information that follows applies to everyone.
This includes the people that have a degree, those who don't but have been taking courses and learning and those who have been studying and practising by themselves.
You are now ready to send out your cv and start job interviews.
Displaying Your Skillset
You have got to present yourself properly. This is where a well made CV, good personal projects and a resume-website will put you ahead.
How To Structure Your CV
There a lot of tips available on how to build a great CV. My suggestions are to check the two videos below:
How To Showcase Personal Projects
How to Build a Resume-Website
Get Your Name In Front of Recruiters
The next step is 'pimp your LinkedIn' profile. This platform is perfect for getting your name out there.
I highly recommend downloading this free eBook: The Developer's LinkedIn Guide.
You will find exhaustive instructions on how to optimize your LinkedIn profile and how to start creating content in the platform to catch recruiter's attention.
Applying For Jobs
With the advent of social media, it has never been easier to get your name out there.
Here is what I would recommend after setting up your CV and LinkedIn profile.
- Set your LinkedIn profile to 'looking for work'
- Follow recruiters and professionals in the same company or department you would like to work fort
- Engage with their content, providing insightful comments that showcase your expertise, appreciation, and personality
- After engaging a bit, send a connection request with a notee explaining why you would like to connect with them.
- Start a conversation and show your interest in the company or in a specific position without being too pushy
- If the recruiter shows interest in you, ask if you could send your CV, resume-website, and even if you could have a video call together
Strategies on LinkedIn
- If you have a friend or relative that works in your dream company, ask If they can refer you
- Hand deliver CV's to companies (never goes out of fashion)
- Phone companies and talk to them
- Don't quit!!!
Preparing For Interviews
Alrighty then, we have a group of people who have some development skills who have been sending out CV's relentlessly and have possibly just received the all important phone call to arrange an interview.
Preparation begins way before the interview is ever arranged, nevertheless, here is what to do in preparation of the technical interview:
- Learn how the internet works (check the history and understand data transfer)
- Solve some practise interview questions
- Visit Leetcode and solve some problems
- Search for free websites that assist you with interview preparation
- Check out helpful technical videos on YouTube
- Practise planning how you would solve various problems (you may not be able to solve a problem right there but you can come up with a great plan which shows promise)
The Job Interview As Two Parts
Typically, when asked by a company to begin the interview process, it is divided into two sections.
1) Behavioral Interview
This is the first phase of the interview process. Usually, you will talk with someone from HR.
The objective of this interview is to find if you are a good cultural fit and if you know about the company you are applying for.
There are many behavioral questions that they might ask you, but there are three main question that they will ask you for sure:
- Tell me about your self
This is known as the Elevator Pitch. You must craft your pitch in a way that tells about your background, your strenghts, and how it add value to the position you are applying for.
2. Why did you choose to apply for our company?
Be sure to check the company's mission, vision, values, and latest news on their website. Show them that you took the time to do your own research.
3. Why should I hire you?
Here, you should focus on how what you would bring to the table and why you are the perfect candidate for the position.
2) Technical Interview
This is the interview you have probably spent the most time preparing for, the interview with the nice juicy technical questions that provide you the opportunity to flex the skills you have come to learn and now possess.
Take your time, breathe and try to relax. I would suggest chewing gum right up until the start of the interview because you can trick your mind into being relaxed before the interview. In nature, in general, if you are eating, you are relaxed and safe (wild dogs aside) and your mind thinks "I wouldn't be eating if weren't ok". This relaxes you and keeps you calm during the interview.
Another small trick I have used before is to picture the interviewer as a friend of yours that you are just chatting to (I mean you really need to convince yourself that know and care about this person and that it has just been a long time since you have seen them) and subconsciously you will be more relaxed as compared to talking to a stranger asking you difficult questions.
The last interview tip is to pivot from the mindset of "I'm nervous" to "I'm excited". Our bodies behave the same under both scenarios, so just remember you're not nervous, you're excited.
I also recommend Andrew Lacivita's YouTube page for interview and CV preparation.
The Untrained Junior
From personal experience I can tell you that it is not unheard of for companies to hire untrained individuals. I myself, was hired untrained in the field of Software Engineering and have been lucky enough to work alongside and learn from some amazing and talented individuals.
Build your cv and send it out, you never know what can happen.
The Best You That You Can Be
I absolutely love the 10 traits that require zero talent, you can even use these at the interviews:
- Being On Time
- Work Ethic
- Body Lannguage
- Being Coachable
- Doing Extra
- Being Prepared
Personally I gravitate towards number 8. Being Coachable. Most people with vast amounts of information want nothing more than to share it with others.
Helping other people has the single largest reward system, so if you are lucky enough to learn from someone, try to remember to listen to understand, not to respond. Apply these traits to your best efforts and surely good things will follow.
Find the field you are passionate about, learn as much as you can, practise everyday. Once you have some sense of what you are doing, send out your CV and start contacting people. Make sure you are on LinkedIn contacting recruiters, they will help you a lot. It is quite cliche' but sometimes all you have to do is start.
Note: Apply for positions you are ready for, there is nothing more frustrating for companies then when you apply for senior or mid-level positions and waste their time in interviews.
A Final Word
I sincerely hope that you have found some helpful guidance within this article that may assist you. I wish you luck as you progress forward in your career.