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
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.
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.