Becoming a Developer
January 03, 2020
I've been a developer for about seven years now and during every single one of those years, someone has asked me questions about becoming a developer. I'm going to try to create a resource that answers those questions here. I hope it's helpful for you.
First, on "Should I go get a four-year degree?" To do what I do (web development) I don't think you have to. I got a degree in Computer Science. It's been a great foundation for everything I do but also much of what I learned I don't use. If you are financially able to and have the time I'd recommend going to college and getting a CS degree. It will set you up well and allow you to go into a million different fields depending on your interest. Many jobs would be happy to hire you with a CS degree even if you don't know the languages and frameworks they use.
If that's not an option for you that's ok. You can learn everything you need to know from the internet for free. I've listed a lot of links below where you can get started learning to code. See if you like coding by trying the free stuff. When you're ready to really go for it do some research to figure out what path to take. There are many programming languages and frameworks. Maybe look at job postings for a company you'd like to work at and learn the languages and framework for that job. Also don't be too cheap. When you decide on a path you'll probably want to spend some money on a quality course or bootcamp.
Next, I would highly recommend joining a community with other developers. Read blog posts, tweets, whatever to stay up to date. A huge part of being a developer is not knowing what you're doing and then learning how to do it. Having a community will remind you that no one knows what they're doing. I really recommend checking out dev.to.
Finally, I'd urge you to take your time in your job hunt and explore all your options. Being a developer allows you a lot of freedom and opportunities. Do you want to work for an enterprise company or a startup? Do you want to live someone new? Work remotely? Is this a job I can continue learning and growing at? What is the company culture like? (The most important question to ask during an interview!) I don't have a "do this and you'll get a job" link but hopefully, some of the ones below will help. Also as much as most of us hate networking, I'd recommend networking while you hunt for a job. Tell your friends and family. Go to some local meetups and talk to people and tell them you're looking for a job.
I hope that is helpful to you. Let me know if you have any thoughts or feedback.
Self guided Learning
- freeCodeCamp - Free courses to get going with learning how to code going all the way into advanced topics.
- Frontend Masters
- Codecademy - Subscription based service with different paths. On on Ruby on Rails
- egghead.io - Great courses on web development topics, including many free courses. Checkout this free course on React.
- web.dev - Created by Google and covers a lot, including the basics.
- codepen.io - Great resource for experimentation and examples of how to do stuff.
- Docs - The documentation for most frameworks are great. Learn Rails, Node, React, Vue, Gatsby, and anything else you think looks cool.
- pluralsight.com - An extensive library of courses that cover everything in the "tech" space.
Any bootcamp is what you make of it. Pick one that fits you and your interests. Read this thread for some red flags when choosing a bootcamp. You can learn everything you would learn from a bootcamp at home for free. What bootcamps can provide though is a lot of structure and a fire under your butt to keep you motivated. Most are relatively new and without a history to prove their programs so always do your own research before signing up.
- Tech Elevator
lambdaschool.com - Very unique opportunity as they take no money upfront and then take a % of your salary after with a cap.Update: Some new developments have caused me to no longer recommend Lambda School.
- dev.to - great website and community with people of all abilities.
- github.com - The backbone of software development.
- twitter.com - There are a lot of people on Twitter, including lots of cool people in tech.
- meetup.com - There are likely a lot of tech meetups in your area. Conferences - Find a conference in the area you want to get into. They often have scholarships available.
Finding a Job
- dev.to/listings/jobs - Job board on dev.to.
- linkedin.com - No one likes LinkedIn but it's probably a good idea to maintain a basic profile.
- angel.co - Like LinkedIn but for startups.
- overleaf.com - Awesome website for making a super clean resume.
- workatastartup.com - Work for potentially one of the next big startups. Gain experience working for an early-stage startup backed by the biggest startup incubator.
- Personal Website - Your website allows you to establish your brand and show off your skills. It does not need to be elaborate.
Free Resources for Students
As a student you get A TON of free stuff. Take advantage and try lots of different stuff out while it's free! Don't miss the free month of Flatiron School, free 6 months of Frontend Masters, and GO RAILS.
- Github Student Developer Pack has all kinds of free stuff for domains, game engines, hosting, software, SaaS compaines, and a ton more.
- This Github repo of collected links
One last thing; all of this is reflective of my experience and the space I'm in. I've also not gone through many of these courses. They just look legit to me from the outside and from what the community says about them. There are A TON of jobs in tech and pretty much everything I've linked to here would get you a job as a web developer. But maybe you want to make video games, maybe you want to launch rockets into space, maybe something else. That's awesome, I just don't have any links for that yet...