From Sociology degree to Software Developer

Hannah changed her career to being a software developer after wanting a change from working in retail. Despite having a Sociology degree she was able to use online resources like the Zero to Mastery course to learn to code and get her first job in the tech industry. I interviewed Hannah to find out her tips for learning programming, persevering with coding and finding her job as a developer.

Hey, so can you introduce yourself?

Hey, I’m Hannah, I’m currently living in my hometown of Manchester, in the UK. I recently moved back after 6 years away to start a career in coding. I’m currently working as a Junior Web Developer, doing frontend and backend.

How did you learn coding?

I started a course - Zero to Mastery, in between I also completed many FreeCodeCamp exercises to try to consolidate the knowledge. I got to a certain point and it was suggested somewhere to create a Twitter account as there was a great tech community on there. This opened up a whole new world for me, with so many resources being shared and I started the #100DaysOfCode which helps me stay consistent. I got stuck into all this and decided rather than to follow the course exactly I would build my own things.

Every time I learnt a concept I would try to implement it in a small project. A tip calculator, some single page websites, rock paper scissors game, etc. I learnt the most creating these. However, it was always a back and forth, once I felt like I had a grasp of the concept I would go back to learning on Udemy, Youtube and FreeCodeCamp too. If I was to do anything differently it would probably be to start building my own things sooner.

Zero to Mastery coding course

Why did you learn to code?

For as long as I can remember I’ve been sitting at a computer. I did Information and Computer Technology at high school and also spent ages customising my MySpace page every week. Unfortunately, I didn’t continue my education in IT as it seemed very male dominated, I didn’t think I really had a chance, so I went with the (slightly useless but interesting) Sociology Degree. Fast forward a decade and a couple of friends told me they thought I’d be good at coding.

I signed up for a MS edX course but I wasn’t long living in Berlin and was too distracted by the new city and nightlife to start it. A couple of years later I decided to quit my job and head off travelling for 6 months (which actually turned into 4 years) but the whole time the thought of coding never left me. It was during the 3rd year travelling that I got my MacBook out and started to properly teach myself to code, there is plenty of downtime traveling between destinations so it was perfect to slot in. Once I started I just became obsessed and didn’t want to stop.

What job were you doing before software development?

So I had been a Retail Manager for about 4 years, which I then quit to travel. While I was travelling I picked up so many different jobs from working on a basil farm, to being a Horse Trekking Guide, working at a green energy solar company and more, but I always thought when I returned to Europe I’d just get stuck back into retail, as that’s what I knew how to do.

This is where I really dreaded the return home, mainly because I didn’t want to go back to working in a shop. That’s probably one of the reasons I stayed travelling so long. It was always looming though, I couldn’t travel forever and I felt like something was missing. When you meet people often they ask you what you do, well I didn’t feel after all that time away I even knew anymore. I’m so glad I pushed myself to make a career change. I have to give credit to my partner who really encouraged and believed in me every step of the way.  

When we arrived back in England I had 6 months before I found a job and I was learning every day, morning to evening. There were times I really doubted I could do it, I would sit and think, “What on earth are you doing?!”, and I actually started applying to other jobs, I even got offered one, but something inside me said to turn it down and continue. I’ve really never been happier that I stuck it out and I actually enjoy and look forward to work for once!

No-CS-OK-screenshot

How has your life changed since learning to code?

Well, to start with I am much happier. I feel like I have a career I can really be interested in. I am much more excited about the future and the possibilities that being able to code allows. I don’t think I realised what being passionate about your job really meant before. I put a lot of effort into everything I do and want to be successful but this was totally different.

I’ve never felt such hunger to learn and improve. I honestly think my brain has lit up a bit, it definitely went stale for a while there haha! I just feel so much more engaged and alert on so many levels. My confidence has improved, it had taken a dip before, as I mentioned earlier something was missing, I felt lost. Now I really have a goal and future I can believe in and be excited about.

What does a typical day as a software developer apprentice look like for you?

On a typical day I arrive to work and check over Trello and if there are any urgent tickets that need working on. I also like to see what tickets have been so I can keep an understanding of the whole project and what is going on. At this point I can then plan what I work on first, maybe its finishing something I was working on the day before. Then we have a short stand up meeting. Here I can explain what I’m working on and any issues I may be having. This is really useful as you can get help from colleagues and also offer any insight into their issues too.

After this I check emails and then start coding. We work mainly with Angular/Typescript and an in house framework on the backend. Occasionally I need to work with JQuery too. Also, I like to check other tickets completed by my colleagues. I read through the code so I can see how they fixed the bug, or how they solved a certain problem, this really helps me improve.

The tickets I complete can be so varied, I may be working on a new checkout following a figma design, fixing bugs from CSS related to forms not submitting to errors, adding a payment handler, building SQL queries. It really can be a lot of different things even in the same day.

What was the interview process like for your first developer apprenticeship?

I actually had a few interviews. They were all slightly different. I was so nervous for all of them and really felt overwhelmed and that I didn’t have a chance at all. The first we had to do pre-work to follow a tutorial and create a Tanks game on Unity and then put our own twist on it. The interview was in a group where we had to demo our game and talk about what we did, what didn’t go well and what we would do next time. Then we had some break out rooms to test how we could work as a team. One of the tasks was to plan building an app as a group. if you passed these you went through and had to solve some bugs in PHP.

Another one was a written test with various questions to solve bugs and solving some basic coding problems. I actually wrote for one of the answers, “I have no idea how to do this but this is what I would google…" and this answer went down really well.

I submitted by GitHub portfolio to all and I am pretty sure all but one looked at it and was a deciding factor in getting to the interview stage.
I would say the one thing that was consistent through all was how you approached an issue, the answer. Whether you solved the problem or not didn’t always matter  if you knew how to break down the problem, and where to look and who to ask. Don’t be afraid to communicate/clarify things if you are struggling.

Do you have tips for people who want to learn to code without doing a degree?

Start with the basics, HTML and CSS then move onto something like JavaScript. Whatever you learn just build something, no matter how small and keep building. There are so many free resources online that can help you. Buying a ton of Udemy courses will not get you anywhere unless you practice everything. You will come across times when you feel like you can’t do it, take a break and come back to it, or move on to something else. So often I have spent ages, frustrated at the end of the day trying to fix a bug, only to solve it within 5 minutes the following day.

Everyone gets imposter syndrome, and this is ok, but try not to compare your code and what you are doing to anyone else. Most of all I would say be consistent. Try to code as much as you can as often as you can, especially at the start, it will really help. Take breaks of course but if you code one day, then take 4 days off, then code again you can waste a lot of time trying to remember and pick up where you left off.

What are your career goals for the future?

My main goal right now is to just keep improving and growing in my current role. I am learning so much every day that I didn’t even know was possible. I also have an ever growing list of things I want to build so I should probably start on these soon.

I am also super interested in Cryptocurrency so in the future maybe I will explore blockchain and Web3. I spend a lot of my spare time on charts and seeing where to invest. Currently I’m really excited about a new token called SavePlanetEarth, $SPE, combining cryptocurrency and carbon credits amongst many other things, which is going to be a huge market in the future.

Thanks so much for inviting me to tell my story. If anyone would like to follow my journey they can find me on Twitter @HanWhoCodes, I’ll be happy to answer questions from anyone, just drop me a dm and make sure to check out @SPE_Token_BSC too!

Thanks for the interview!

Join a community of self-taught developers - get help with your code and ask experienced developers for career tips in our exclusive voice calls.

Pete Codes

Hey, I'm Pete and the creator of this site. I am a self-taught web developer and I'm based in Edinburgh, Scotland.

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.