How to make a career change to programming
Tags: devjournal, career, gratitude, devpride
Published: 2021-09-09 20:18:10

Hi 👋 My name is Brittany and I can officially call myself a full-time developer. 

I haven't always been a developer. In college I studied business with an emphasis in marketing, and a minor in accounting. Throughout high school and college I had various marketing jobs and my own businesses, and after college, I started full time doing marketing for tech companies while outsourcing my marketing expertise in my free time. 

Several years ago, I started to think I might not want to do marketing forever, and I had been thinking about programming as a possible career change. It seemed like a long shot. I had a lot of questions like...

- Don't I have to be good at math?
- Isn't it really hard?
- Do I have to learn every language?
- Will I have to quit my job to study?
- How much will it cost? 
- Do I have to go through a bootcamp?
- Should I learn front end or back end?
- What is front end and back end?

If you're contemplating the same and have those questions, take some comfort in the fact I was right there and felt the same, and as of July 1st, I'm finally a full-time developer! (You can read a quick synopsis of the [journey on the Elastic blog](https://www.elastic.co/blog/culture-someone-like-me-how-i-pivoted-to-a-new-career-and-found-support-sharing-my-whole-self-at-work).)

I'm starting this blog as a place to document my journey and things I learn along the way. I'm still a junior developer... but I'm a lot farther along than where I started, so I figure this could help out some people to get to where I'm at, and to keep making progress and document my growth. 

In this first post, I'm going to list out some amazing resources that I recommend and have helped me out a lot, since I've gotten a ton of questions about that. 

Stay tuned because in the future, some of these might turn into their own blog posts. 

## Websites

- [freeCodeCamp](https://www.freecodecamp.org/) - lots of great content, and even some simple courses and exercise if you're just getting started. they also have a lot of tutorials on youtube I recommend following along on.
- [Mozilla Javascript Docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript) - great way to understand specific methods and how they work.
- [React Cheatsheet](https://devhints.io/react) - handy React functions and syntax
- [Git Game](https://learngitbranching.js.org/) - Git is just another way of keeping track of versions of your code, but it can feel kinda complicated. Games like this one help you wrap your mind around it a bit and practice (you can also google other Git Game Tutorials)
- [Codewars](https://www.codewars.com/) - once you start to get your feet wet with some languages, practice trying to solve problems like these!
- [Elevator Saga](https://play.elevatorsaga.com/) - I haven't actually played this myself but a lot of people have recommended it. Fun game and way to practice programming.
- [CodeCademy](https://www.codecademy.com/) - Lots of good courses here, some are free and some are paid.

## Courses/Bootcamps

*For both of these, I found the instructors extremely helpful and ready to answer questions anytime I was stuck. Also had a variety of text and video based content, and exercises to help me practice what I was learning.*

- [AltCademy](https://www.altcademy.com/) - this is the front-end development course I took
- [FundaFunda Academy - Python](https://www.fundafundaacademy.com/product/python-programming/)

## Books
- [Javascript and Jquery](https://www.amazon.com/JavaScript-JQuery-Interactive-Front-End-Development/dp/1118531647/ref=sr_1_1?crid=169WPHVH4GIVK&dchild=1&keywords=javascript+and+jquery+interactive+front-end+web+development&qid=1625258020&sprefix=javascript+and+jquery+%2Caps%2C184&sr=8-1)
- [Pragmatic Programmer](https://www.amazon.com/Pragmatic-Programmer-Anniversary-Journey-Mastery/dp/B0833FBNHV/ref=sr_1_1?dchild=1&keywords=pragmatic+programmer&qid=1625258043&sr=8-1)



## Tips

- *Don't rush yourself.* You don't have to learn how to code in a day. Take your time, it took me a couple years to get there... it wasn't three months of 12 hours a day of programming. Take a break when you need a break. If you've had a long day at work, don't force yourself to code all night.
- *Do tutorials... but don't just watch.* When you're doing tutorials, try to change small pieces in their code to get a feeling for what works. Even if it's just changing the text that displays... you don't want to just get in a habit of blindly copying and pasting cause then you won't learn.
- *Get a buddy.* Have a couple friends on the journey with you. It's always more fun when you have someone to show what you're working on things with and can bounce ideas off of when you get stuck.
- *If you don't know where to start, start with frontend.* I prefer this because it's a little easier to see what you're working on, and you get some more instant gratification with being able to build stuff and view it quickly and share it with your friends. That being said, back end is great too. 
- *You don't have to go through a bootcamp. But it's helpful.* A lot of developers are extremely self made and just go about googling things as they build. That works for a lot of people. For me, I preferred a bit more structure that would let me login and say "here's what you should work on today". I found the Python and Frontend courses listed above did just that for me.
- *Keep track of all your work*. Keep track of every tutorial you do and every project you make... it'll come in handy when you go to build a resume.

Best of luck!! Feel free to reach out if you have any questions, need some inspiration, or just wanna connect!