Making a Career Change to IT: From Zero to Coding Hero
IT-related careers are some of the hottest in the industry, as they boast high wages and increasing demand. Have you ever considered learning to code but felt it’s impossible because you chose to study non-technical subjects? Think again—it’s actually never too late to learn how to code.
Are you sure you want to do this?
Currently, a computer science degree is not necessarily required to find a job in IT. The need for developers in the job market is so high that CS graduates are not enough.
Pursuing a coding career has become so popular that many professionals have decided to pursue career rebranding. Pay is certainly one motivating factor. But you also need to be passionate about programming if you intend to do it for a living.
Programming may seem like a super trendy, well-paid career path, and that’s true. But it also takes a lot of hard work, commitment, learning, and hundreds of hours in front of the computer. Are you ready to be a lifelong learner? Are you okay with running through the code you’ve written over and over again in search of bugs? Would you be willing to take a coding job even for an average wage? If you can honestly answer yes to all these questions, you should definitely should give it a try.
Keep calm and learn to code
Once you’re sure this is it, you just start learning to code. That’s it. Easier said than done, right? First of all, you need to figure out what to learn. And to do that, you must know why you want to start learning. Do you want to change your career path or improve your existing one? Or maybe you just fancy having a programming side project? If you plan to change your job, do you want to be a back-end programmer, web developer, data scientist, UX designer, or something else? No matter what you choose to pursue, there’s one constant: you’ll need to learn.
A humanities graduate in IT
When I first got into coding, I hadn’t really heard of the many positions one can hold as a programmer. I watched videos from MIT’s python programming lectures, and it felt like rocket science to me. But at the same time, I was excited that I was keeping up with the lecture. And here I am today—actually working in IT!
I’m actually a linguistics and culture studies graduate. And as you can imagine, my coursework had very little to do with IT. I did enjoy my specialization; I loved working with texts and books. But I was also always eager to pursue something different. I was quite alone in this: none of my friends at that time worked in IT or was interested in coding. I had only a slight idea of where to look for information in this field, so I was mainly firing shots in the dark and hoping they’d land.
I tried everything: online tutorials, in-house courses, workshops organized by the IT community. Everything. I explored many of the available coding resources, just to figure out what interested me the most—and eventually, through this persistence, I discovered my passion for front-end technologies.
Here’s the thing: I really like to see the effects of my work instantly, and I get discouraged easily when I don’t. Front-end development was a perfect match to me! I was writing code, and the next moment, I could see its effect in my browser. I stuck to that idea and focused on learning web technologies.
From that moment, as my plan became clearer, it was much easier for me to focus on certain domains within IT and to search for more information. I knew what skills I needed. Now, I just had to learn them.
N roads diverged in a yellow wood
There’s a lot you can do within IT—too much to cover in a single article. But whatever path you choose, take a moment to research which technologies you need to master. There’s no point in learning every technology available—there are far too many of them. Instead, you need to focus only on these relevant to the space that interests you.
Briefly, I’ll cover the basic steps you should take to pursue front-end development, back-end development, and data science. These, of course, are not the only career paths available in IT. But they certainly are some of the most popular.
1. Getting started with front-end development
For front-end development, it’s pretty obvious to start with HTML and CSS and proceed to JavaScript. Front-end development is mainly about making websites and the visual part of web applications. It’s like translating graphic design into markup and code. The above-mentioned technologies are the very basics you need to create a website. Actually, you can use these basics to branch out into many other specializations. For example, back-end developers would still use HTML and JavaScript in their line of work, while UX designers or graphic designers would certainly benefit from some knowledge of HTML and CSS.
2. Getting started with back-end development
In back-end programming, things are getting more complicated. Start with Java, Python, PHP, or C#. Try Golang, Swift or Ruby, too. There are hundreds of possibilities, so it’s sometimes easier to decide what you want to do and then choose the right technology for it. Numerous industries need programmers, from education (mobile apps for learning) to finance, medicine, aviation, gaming, space exploration, automation, and so much more. Decide what you want to do, and find the right skills to achieve your goals.
3. Getting started with data science
Data science seems a bit easier because you can focus on SQL and databases, R programming, Python programming, or data visualization. And often, you can learn all of these essential data science skills on just a single platform.
Another great thing is that SQL is a universal skill—you can make use of it both as a programmer and a data analyst, and it’s a beginner-friendly language. So even if you learn SQL and choose to pursue something else down the road, you will not have wasted any time.
Online education is amazing
Checking lists of top programming languages won’t help you much in the way of getting into IT; you really need to know how you plan to use these languages and what you want to get out of them.
Each language has its own unique characteristics, and languages also share core similarities that you can learn about either on your own or through traditional CS courses. Some languages are easier to pick up than others. Don’t worry; it’s not a once-in-a-lifetime decision. With so many online programming courses and tutorials, you can experiment all you want until you find a technology that suits you best. It just takes time.
This is one of the main reasons why it’s always best to start learning new technologies online. With online education, you can always change your mind and try another technology, look for additional resources, or redo some exercises when you don’t understand something.
Flexibility. That’s what’s so amazing about online courses. If you find that video courses distract you, you can instead opt for more interactive programming courses. There are plenty of reasonably priced (and even free) online programming resources, so experimenting certainly won’t break your bank.
Vertabelo Academy is a good example here; all of their courses have free trial versions, so you can check if a particular language and course format are right for you. In the worst case, you’ll simply spend some time experimenting until you finally find something that works for you.
Knowledge overflow
Don’t learn everything. Simply because doing so is impossible—and because you won’t need every single existing language or technology.
Instead, learn one language at a time, and try to put these languages to practice as soon as possible—you won’t become fluent in technology that you hardly use. Learning but failing to apply your knowledge doesn’t make much sense in IT.
Online courses are just the beginning. As soon as you feel confident in a particular language or technology, you should proceed to starting your own project. Otherwise, you’ll get stuck in an endless loop of online tutorials, as I did at the beginning. Like most beginners, I felt overwhelmed by the abundance of resources and things to learn; I wanted to try more and more of them.
After a month or two, I realized I was going in circles. My solution was to work on my own project—anything, no matter how small. I joined a Facebook group for web developers who shared free websites’ templates. I could post the results of my work there and ask others for feedback. The next step was creating a simple website for my friend’s law firm. That taught me how to deal with real-life problems with my code and work with other people.
Whatever technology you choose, you should think of a project that will help you apply your knowledge and make progress more quickly. Don’t worry; your project doesn’t need to be big or flawless from the start—it can grow and evolve along with your coding skills. Remember, when you’re just starting out, “done” is much better than “perfect.”
What if you get stuck? Don’t be afraid to ask for help, which is also incredibly easy online: there are lots of forums and websites (e.g., Reddit, Stack Overflow) for chatting with other programmers. There’s a huge chance that someone had the same problem as you do and that it’s already been solved. The IT industry is very supportive; you’re not alone.
When to start learning to code?
Anytime, really. The sooner you start, the sooner you’ll see progress. Choosing to learn programming doesn’t mean you’ll have to start a career in IT—you can just be curious, code as a hobby, or try to get promoted in your current job. Whatever your motivation for learning, don’t wait for any special moment to start. In fact, start right now. There are no perfect moments—there will always be windows to clean, laundry to make, and cats to watch on the Internet.
I won’t tell you it’ll always be easy to learn coding and that you won’t be disappointed or frustrated when your code doesn’t work and you have no idea why. But don’t get discouraged easily. If you have any questions or doubts, don’t hesitate to comment here; I’d be more than happy to hear from you.