How I Became a Software Developer
This is a short blog to tell my story of how I changed my career to software development, with the hopes that this will, somehow, help your decisions and help steer your journey into software development.
I always had an interest in computer science, how things are built. What logic goes into software to make it tick. But I was always under the impression that this is something you would need to start learning at a young age, go to a relevant university and study a Computer Science degree. But I was kind of wrong in that regard. Then I stumbled upon a couple of YouTube videos, of people who have made the change they were after without a CS degree, being self-taught. I came to realisation that having a CS degree is optimal, but not a necessity. And so, began my journey.
Now, there was no easy way to tackle diving into a completely different industry that you are used to. In my instance, I was working in a totally unrelated industry for the most part of 8 years (well, unrelated to a certain extent, technology does touch on everything nowadays). So, changing a career was daunting for me. The mere thought of it alone made me feel uncomfortable, but that just pushed me to pursue it. The first questions I had were, "Where do I even start? What language do I learn?". Well, I can say with confidence, even after 2-3 months of coding in my free time, I still had no clue where I was going with it. I started watching videos (YouTube of course) on what to learn for what field, what stack for what purpose etc. "What is even a stack!?". The more I watched, the more I felt confused and lost as to what I should be doing, how I should be doing it and in what sequence. Sound familiar? Well, if you too have just embarked on your own journey, you are not alone in experiencing this, so hopefully that puts you at ease.
How I started
I started with a Udemy course on HTML and CSS which I thought was really fun. To see what you can create from nothing to appear on the screen, felt like I was a magician. Well, that’s a bit extreme, but it felt great. I then jumped on to JavaScript after a couple of months, once I became comfortable working with the aforementioned technologies.
JavaScript however, changed the game for me. I truly felt like I hit my full potential with HTML and CSS. That’s it. I am done. I can assure you, again, you are not alone when you start learning JavaScript (or any other programming language for that matter) and have no idea what is going on, why it’s doing (or not doing) what you asked it to do. But to try and keep this short, the more you work with the tech, the better your understanding becomes. Now I am not saying that you will conquer JavaScript (again - or any other programming language for that matter), I still to this day have the ‘What am I even doing?’ moments. But once you understand the fundamentals of it and understand how it tick, it will click. And in that moment, the amount of dopamine you will experience is well… a lot! That just pushed me to work more towards my goal.
After I felt more comfortable with these 3 technologies, the world of frameworks and libraries opened up for me. Kind of like an achievement, just without the badge popup. I started with CSS frameworks like Materialise and Bootstrap, and then JavaScript frameworks/libraries such as React.js and later Vue.js and Quasar. Learning how to work with these was a journey in itself (and still am learning), but once again, once it clicks, it’s just another achievement you can add to your clipboard.
The one thing I did learn, despite reading about it over and over again, is building projects is key to your development. I did find myself stuck in ‘tutorial hell’ at the beginning. Because there is a plethora of content out there, where you can learn, you can get carried away and lost. But, once I realised this, I jumped straight into building projects. After each new technology I had learnt, I would start the whole process of building my own projects. Built one? I would build another. Sometimes I would just build the same project again, but in a different framework, although this was kind of monotonous, doing that established a clearer understanding of the framework and the core technology itself.
The next steps
After spending my free time in the mornings and evenings learning these technologies and building projects, I made my portfolio website. As mentioned before, try to keep tutorials to the minimum. Get the concepts being taught, and then go and build something. That way, you will solidify the concepts in yourself and feel more confident in your understanding. As an aspiring developer (or even an established developer), having a portfolio is key. This is where you showcase your work to potential employers. It’s all well and good to show that you ‘know’ this technology, that framework etc. but can you actually build something with them, is what they are interested in. Now, this is pretty obvious, it’s not like I am the first person to say this or come up with this. But as a self-taught developer, this is key to enter the industry with no degree. Networking is also very important, but more on that maybe in a separate blog. Once I felt my portfolio was complete after adding a few projects, I deployed it and then started to apply to job openings.
To be honest, even at this point, I didn’t feel ready. I didn’t feel like I am the ‘perfect candidate’ for the job. But, in my opinion, you will never feel ready. You will never feel like the right person for the job. Because, naturally, you don’t want to start working with something, until you know everything there is to know. But, again, like feeling uncomfortable, this pushed me to do it. Feeling comfortable, is so, well, comfortable. Why would you want to change that? For me, it was for my goals. I needed to break that comfort to achieve it.
The overall interviewing process was quite tiring, with a good few ‘rejections’ (I like to call them ‘redirections’). But that was to be expected. I have no degree, no work experience in the industry and only a portfolio showcasing a number of projects. Because of my CV work history was not related to software development, it was difficult to get the attention of the employers and even recruiters.
So, I decided on a different tactic.
I emailed the companies directly, giving a bit of a background on my journey, my aspirations, what I can work with, what I am learning etc. This approach proved to be more successful in the sense that I managed to get more ‘talk time’ with the employers which is all I wanted really. Make them aware that I am here, working hard towards a goal and looking for an opportunity. After a couple of attempts, one employer was open to have a chat, talk about what their company works with, what they are looking for. This in my view was already a step forward, as made the ‘application’ more personable, rather than just reading my skills off of a piece of paper and seeing my experience in a not-similar field. After an interview and a couple of chats back and forth, to my surprise, I was offered a position as a Junior Software Developer. I can tell you now, when I received that email, I was ecstatic. I couldn’t believe it. After discussing the necessities that come with every new job, I signed the contract and so began my transition.
Finally
Now, this is not intended to be a ‘success’ story. I did change my career to what I wanted. I merely got my foot (finally) in the door. I am still learning, every day, and very grateful to have a good team around me to show me the ropes and already feel I have learnt a lot. But, now onto my next goal, become a great developer. Point being, you will never stop learning. And that just makes me excited for the future even more.
So, if you are learning to code and want to work in the Software Development field, I hope this blog helped steer you in some way. You are not alone when you are feeling lost, but take your time, build projects and build some more. When you get that nice portfolio and feel comfortable in a number of technologies, start applying. You will lose nothing, but gain more insight into what they are after, and like in my instance, you will land the role you worked so hard towards.