How I changed career from school teacher to Front-end Dev in less than 7 months

Hello to anyone reading this. Last year, I successfully changed careers, from teaching to being a junior front-end developer, in what I think is a relatively short time (6-7 months).
When I decided to change career path, I did quite a lot of research, wanting to know how I could make it happen. Now that I’ve found myself working full-time as a dev, I would like to share my experiences in the hope that others may benefit.

Reason for choosing coding

Last year I was a teacher and doing well in the profession. However, I didn’t want to do it forever and found myself getting frustrated with the working hours. I had always been intrigued by coding and after discovering FreeCodeCamp, started to teach myself some basic HTML and CSS. After a few weeks I realised I was hooked and my mind made up. Despite having close to zero experience and no knowledge on the subject I was going to leave teaching to become a front-end developer!

When I broke the news, my family were concerned and my friends bemused. There was a sense that I was throwing away my livelihood and that after a few months of being unemployed, I would come crawling back.
Obviously, I wanted to prove them all wrong but I needed to have a plan so that I didn’t sound clueless whenever I was asked to why I’d left a decent career.
I needed to strategise.
I dabbled with taking a bootcamp and looked at some Udemy courses, but instead focused almost entirely on the FreeCodeCamp website. The reason I stuck with FreeCodeCamp is because I recognised early on that it has a thorough curriculum which underpins so many principles of Front-end development. If you can achieve all the end-of-unit challenges, independently, then you are in a great place to progress onto documentation, Udemy courses or YouTube videos to expand your knowledge.
The initial stages involved a lot of making contingency plans, as I didn’t want to get in to financial hardship, but I never let those doubts cloud my self-belief and commitment.

This is what my process looked a bit like:
• Learn HTML, CSS and keep practicing them as often as possible. No copying and pasting!
• Use the FreeCodeCamp curriculum to practice and learn important concepts of JavaScript.
• Practice, practice, practice… (repeat infinitum)
• Use YouTube/Udemy to add extra context to any areas you are unsure about.
• Stay disciplined and focused on your goals.
• Once you have a broad understanding of HTML, CSS, JS focus on learning how to use text editors and learn to traverse the DOM (if you want to be a Front-end developer). Using Event listeners with JavaScript, CSS and HTML is amazing because you can actually use what you’ve learned and see the results in real time.
• Create your own portfolio website. Upload your projects and sell yourself on it. Make it look professional because it will be HR who will see your website first. They probably won’t know what a div is but they’ll recognise a quality User Interface.
• Get some evidence of freelancing – even if it’s charging your mum five pounds for a website about cats.
• Create a professional looking CV no matter how limited your experience – you need to sell your qualities/experience
• Send out loads, and loads, and loads… (repeat infinitum) of applications and get in touch with recruiters.
• Don’t stop practicing HTML and CSS, even if JS is your passion. You may not forget, but it surprising how quickly you become rusty
• Be prepared for rejection. That’s just part of life unless you’re some sort of mystical unicorn.
• Celebrate your successes no matter how small they are.

Throughout this journey, I would also recommend having a good philosophy that will support your self-belief/determination.

There have been plenty of times while teaching myself code that I have doubted myself or questioned whether I am really able to do it. Fortunately, I have come from a teaching background and have learned from some amazing students. They all have the same trait in common – they are all doggedly determined to learn!
I figured that if a six year old child can learn countless computations of graphemes and read fluently, I think I can work out how a for loop works. I figured it may take longer for me than other people, but didn’t let that discourage me. I always believed that with enough time, I would learn.
Of course, I also know my limits. I am by no means bad at maths, but put me in a job interview against people who have degrees in computer science, and I figure I’ll be in a dire situation. That was my reasoning, rightly or wrongly, for not choosing to go down the back-end dev path just yet.

Another thing I would suggest is not getting paranoid by googling whatever you are learning or want to learn. Literally every Google search throws back an article about how the technology you are learning is dying and will be extinct in a few years time. Become a good programmer and people will want to hire you for your problem solving ability and work ethic. Also, don’t underestimate being a good team player and communicator. If I hadn’t have promoted those traits, I wouldn’t have gotten a job.

After about 6 months of following my plan I felt confident enough to send out some applications and get in touch with recruiters. Suddenly, I had two job interviews within a month, happening in the same week. Then, to my complete surprise, one of them offered me a job as a junior dev.

The work and commitment had paid off - result! Time to brag about it to my family and friends!

I hope there may be some nuggets of usefulness in this. Without a doubt, I was in a good position to change careers. I’d made sure I had plenty of savings so I wouldn’t live like a pauper. I was able to study for several months without working. I don’t have children but do have an understanding partner who didn’t resent me for spending several hours a day glaring at my laptop. After a few months, I could do temp work to keep me afloat and I also live in a city with plenty of opportunities.

I do believe I have been incredibly fortunate, but I have also had to work hard to earn that luck to an extent. Without a lot of hard work, there won’t be much success.
FreeCodeCamp is an amazing resource and it did help me to find a career. I wish success to anyone who uses it to find a new career themselves.

41 Likes

Thanks so much for sharing this information. It was helpful for me!

2 Likes

Hi @FeltPro !

Thank you for sharing your story. :slight_smile:

Any amount of work experience goes a long way.
I did some contract work before landing my first job and I do think that helped.

I stress this all the time with people applying to jobs.
It is soooo important.
Thank you for bringing that up.

4 Likes

Hello,

What does CV mean?

Outside of the states, people will refer to resumes as cvs. In my experience, people will use those terms interchangeably.

If you are based in the states, then a resume will suffice.
If you are just starting out, then 1 page resume is good.
The only people will ask for a CV in the states is for academic institutions like for professor jobs.

CV stands for Curriculum Vitae and it is a very detailed version of your resume.
It often spans several pages and is not asked for in the states that often except for certain situations like academic jobs.

Hope that helps!

9 Likes

Golden nuggets of wisdom this is. Many thanks for sharing @FeltPro. I’m truly inspired.

4 Likes
I feel you 💯 & we keep working till we hit it...Hardwork pays off!!!
2 Likes

Thanks for sharing. May I ask? Do you feel that it is your grasp of html and css that was the main factor in landing that job? What kind of tasks are you doing as a junior dev in that company?

2 Likes

Hi tioung! In the interview I was given a couple of CSS and JavaScript tests. The JS was essentially to write a function that would take the average score of two football teams over a season and compare them. The CSS was more how I would go about creating a geometrical pattern with styles. I did a lot of preparation going over HTML, CSS JS basics (forms, navbars etc) before the interview and that gave me confidence and they were pleased with my answers. However, I don’t think I’d have ever gotten the interview in the first place though if my portfolio website and resume weren’t of a high standard. I polished both of them as well as I could and suddenly starting to get a quite a lot more attention.

My work has been really varied. A lot of it has been adding new sections to pages on the company site, writing logic for functionality and validation in forms and updating prexisting code in React components – I haven’t actually needed to know React to do this though. It has involved all of my HTML, CSS and JavaScript skills but I have also had to learn how to use the company’ content management own coding environment which is complex. If I wasn’t fairly confident with HTML, CSS and JS it would be a real struggle to take on so much learning. It is very engaging and I’m enjoying it a lot.

9 Likes

This is an unfortunate aspect of confirmation bias. It is a lot of work to learn to code. So for many people, the most clickable google result a given query will be “it’s OK you don’t have to learn this.” This has the effect of driving it up toward the top of the search results. Hopelessness is contagious.

But so is hopefulness. So I am grateful you shared your coding journey – and the insights you learned along the way – to inspire us. :pray:

6 Likes

This is so encouraging, especially for a person like me who has always wanted to get into tech but kept loosing focus when things get rough. I’m transforming my career in 6 months, and freeCodeCamp is getting most of the credits.

4 Likes

Thank you! Thank you! Thank you! Sharing your concise plan is truly helpful. It allows me to see my own progress from zero experience in this field to five months in. I LOVE IT HERE!

2 Likes

Thank you for posting! So since you were focusing on front end, did you just focus on earning the front-end related certifications?

Additionally, what was the catalyst that made you feel confident enough to do freelance work? What sites were you using? How much pro-bono work did you need to do before charging people?

Did you just include the link to your portfolio towards the top of your resume?

On your resume, how did you balance your prior experience teaching with your freelance work?

1 Like

Hi TechnoPanther, thanks for your questions. They’re really good ones.
What I’ve written below is just my experience plus opinions and you may want to do things differently. I hope you might see something that helps though.

It took me what felt like a long time to get to the Front-end Certificates. I did the Responsive Web design, JavaScript Algorithms and Data Structures first.
For me, I needed to have what felt like a very solid foundation in HTML, CSS and JS before I tried learning libraries. I wouldn’t recommend jumping straight into Bootstrap, SASS and React, especially React, without knowing the basics really well.

At the beginning the certificates gave me a goal and direction when I wasn’t really sure where I was going with coding. That is an awesome feature of FCC.
I made sure that I had a go at collecting all of them but, personally, never considered them the be-all and end-all of whether I would get a job or not. I’ll be the first to admit that I bombed a lot of the challenges and it took me several attempts to pass them and there were a few I left for months because I simply wasn’t at the right level at the time.
The certificates are an excellent way of assessing what you have learned and testing your capabilities but for me they were just a means of getting better at coding. I still referenced them in my resume though but by that stage had created my own projects to put on my portfolio.

The catalyst for doing freelance work was that I needed to prove to potential employers that I was committed to coding and could also show what I could do. I don’t come from a tech background and didn’t have a degree or bootcamp to back me up so it made a lot of sense to me. I didn’t feel confident at all to be honest. One of my neighbours changed careers to be a personal trainer and I asked if she would like a website. I promised to make it as professional as I could and she would pay me however much she thought it was worth once it was complete. She also allowed me to use it whilst it was still in development on my portfolio website. I actually got offered a job whilst finishing the website for her and I’m glad I did it - making a website by yourself for the first time is a lot of work, you meet a lot of obstacles but it’s a great learning process.

I did include my portfolio web address at the top of my resume.

I barely mentioned my teaching career on my resume, only a few lines about the level I achieved and soft skills that were transferrable. I figured I could talk about that more in the interview stage and that it was most important to focus on the coding.
Do spend a lot of time researching how to write a concise, professional resume. I cannot stress that enough. It’s really important. The layout for mine was like this:
Super short Intro (sell yourself)
Experience - achievements (good place to mention freelance/voluntary work)
Projects - links to portfolio, github/gitlab
Technologies and Languages
Previous Work Experience
Education and Certificates
I only wrote a page and always included an accompanying cover letter too.

3 Likes

Thank you for sharing your story. It inspired me

2 Likes

Hi FeltPro,

Thanks for sharing your journey! It’s always inspiring to hear how people faced learning roadblocks and overcame them by persisting through the concepts.

I was wondering how you approached your learning curve to xml and json, and what kind of projects you worked for implementing/learning “documentation”.

Also, is it difficult to connect your css/html/.js to a server and create a website? Is there like a checklist you recommend for what you need to choose the right server for your pages (example: why choose amazon EC2 vs Github vs Hostinger vs Bluehost…)?

Sincerely,
Philip.

2 Likes

Hi Philip_B,
Thanks for your questions. I hope I can answer them ok.
To be honest I haven’t had to work much with XML so far. I’ve stumbled across a couple of archaic files but it is not a data format I can say much about.

I’ve used json a lot for GET and POST methods. I learned the most by creating my own projects which use web APIs and practised parsing and stringifying the data and logging it to the console to see what it looked like.

The devs at the company I work for have written documentation for a few form jobs and implementing tracking/captcha etc. I’ve done a couple of jobs just working from those and there’s a lot of googling and using stack overflow of course too. I’ve learned in coding that there is nearly always a solution available for you if you look hard enough. It can take a while to get your head around it though!

I started using Github to check that my projects worked. Then I decided on using a webhosting service as I thought it would make my portfolio site look more professional. I used Hostinger just because I found a tutorial on YouTube and there was also a good deal on at the time :joy:

Finally, I found the process of connecting the html, css, js files a straightforward process. They link up together on a web hosting service exactly like they would in a repository on your computer. There are a few YouTube videos you can watch first to give you an idea before you do it yourself.

I hope some of this may help you. Apologies if I misunderstood any questions!

4 Likes

That was motivating, thanks for sharing,
Would you mind sharing your portfolio site with us, it would be great to see what projects you have worked on, that got you the first job.

If you have any tip or recommendation about what project I should develop and work on as a beginner trying to get my first job would be appreciated.

1 Like

thanks for sharing this amazing story

1 Like

Thank you for this information.

1 Like