For years, we’ve been hearing about the shortfall of women in tech and the general boom of the industry. “Want to make six figures at an entry level?” they say. There are countless websites that claim ways to get your coding skills up to scratch in a few months or even a day. But how can you actually learn to code and separate useful resources from clickbait online?
This article teaches you how to learn to code (for free in some cases!), offering three different paths. It also provides advice on getting a job in tech once you have learned to code.
Affiliate disclaimer: This post may contain affiliate links, which means I’ll receive a commission if you purchase through my link, at no extra cost to you. Please read my full disclosure here.
How to Learn to Code (Three Paths)
First, let’s go through the ways you can actually learn to code from scratch.
Plenty of people are able to teach themselves to code, using free or paid online resources and books. The trick to this one, though, is discipline. Most resources will have the content you need to know, but be wary of any courses from online “gurus” which cost loads of money and make outlandish promises about your potential results.
In terms of free resources, my favorite is freecodecamp.com. If you prefer more formal independent learning, you could also follow a track on edX. I like the W3C Front-End Web Developer course (you can pay for a certificate if you want), but there are loads of other free computer science courses from top universities on the site.
There are of course some paid resources too, which may motivate you to stick with it. Skillcrush is one a lot of people have had success with. It has been around for a while and is particularly reputable. Codecademy is also pretty popular.
If you’re looking to learn data science, I’d recommend Data Camp, which has a free trial option. I’ll be writing a more detailed post on how to learn data science, so check back for that.
The most important thing when teaching yourself is to do lots of projects to help solidify your skills. It is more motivating to see the results of your learning in project form. Second, you’ll need a portfolio when it comes to applying for jobs.
Even if you studied something completely different in your undergrad, a one year master’s program can teach you what you need to know to get a job in the tech industry. As a bonus, it’ll also give you access to your chosen university’s career resources, increasing the chances you’ll get a job offer. In many cases, you can also do these part time in the evenings, so you don’t have to quit your current job if you aren’t able to.
These became incredibly popular a few years ago, with big name celebrities like Karlie Kloss endorsing them. One of the most reputable ones, General Assembly, is available around the world and even online. In three months or so of intensive learning, these programs claim you’ll be able to get a job in tech.
Generally, they expect you to be there full-time and put in extra hours after class. They even have their own career development programs. Some, such as Flatiron School, also provide a money-back guarantee if you don’t get a job. However, in a lot of cases, people have found that they need to put on additional work after the course in order to get enough experience and polish the skills they need for employment in this field.
What should you learn?
What do you actually need to know to get a job in tech? Well, that depends on what kind of job you’re looking for. freeCodeCamp offers the following certifications which include various topics:
- Responsive Web Design:
- HTML and HMTL5
- Applied visual design
- Applied accessibility
- Responsive web design principles
- CSS Flexbox
- CSS grid
- Responsive web design projects
- Regular expressions
- Basic data structures
- Basic algorithm scripting
- Object-oriented programming
- Functional programming
- Intermediate algorithm scripting
- Data structures projects
- Front End Libraries:
- Front end libraries projects
- Data Visualization:
- Data visualisation with D3
- JSON APIs and Ajax
- Data visualization projects
- APIs and Microservices:
- Managing packages with Npm
- Basic Node and Express
- MongoDB and Mongoose
- APIs and microservices projects
- Quality Assurance:
- Quality assurance and testing with Chai
- Advanced Node and Express
- Quality assurance projects.
- Scientific Computing with Python:
- Python for everybody
- Scientific computing with Python projects
- Data Analysis with Python:
- Data analysis with Python
- Data analysis with Python projects
- Information Security:
- Information security with HelmetJS
- Python for penetration testing
- Information security projects
- Machine Learning with Python:
- Neural networks
- Machine learning with Python projects
Each of these courses takes about 300 hours to complete. They also offer coding interview prep to help you get a job after you complete the certification.
Skillcrush has courses in Python for web apps and data, WordPress development, and front end web development, as well as design and marketing courses.
Coding bootcamps generally offer software engineering, data science, and UX courses.
Master’s courses offer some flexibility, and focus more on theory than the above options. I think understanding the theory behind how these things work is important, particularly when learning data science and machine learning. For example, many will include intro courses on algorithms, architecture and hardware, database management, and design modules.
How I learned to Code
For years, I told myself I’d learn how to code, got through a few basic online courses, but nothing stuck. In the end, it wasn’t until went the traditional education route and started doing my own projects that I managed to learn. It was so much easier for me to remain motivated when I had specific research to work on. I also do better in a more traditional classroom environment in terms of staying engaged and paying attention.
How to Get a Job in Tech
Now, how to actually get a job in tech. For this one, I’ll focus primarily on how to get a job as a self-taught coder as the other tracks come with their own career resources.
First off, some free online options, such as freeCodeCamp, also include interview prep courses.
In many cases, you can get paid work while you are learning to code, which is really the best way to learn. Once you master a particular skill, check on Fiverr and Upwork for potential projects. Check out the Skillcrush “Code your Way to $1K” guide for more tips.
Now is also a good time to reach out to your personal network to see if anyone you know has any projects for you or can introduce you to someone who does.
You can also look up professional conferences in your area. Many of these cost money, but some offer discounts for young professionals and students.
If you go the traditional education route, you may even be able to get a job pretty soon after you begin. I know someone who started her master’s degree and got a full-time tech job within three months (and she didn’t come from a technical background at all). Ultimately, they were so pleased with her work they practically begged her to come onboard full time and put her master’s degree on hold. So, even though this may not be for everyone (and I’d recommend finishing your degree at some point even if you do take a break for the sake of your CV), it’s an encouraging result. You can also take on some part-time consulting projects during your studies as you go.
If you’re doing your PhD, why not apply to be a teaching assistant for an introductory coding class. Teaching is one of the best ways to learn and, as a bonus, you can make some extra cash!
I hope this helps you figure out how to learn to code and break into the tech industry when you don’t come from a technical background. If you’re still unsure about whether or not you should learn to code, check out this article.
As always, let me know in the comments below if you have any questions and check back for more tips on getting into tech.