It's As Easy As 1,2,3...4,5,6,7,8...You Get the Idea
No single plan will work for everyone. The right path to your career as a developer will depend on your background, your learning style, your resources and so much more.
However, we can layout a broad guide to help you find the right way forward.
- Develop a "learning mindset"
- Pick a language
- Test the waters: Try something online for free
- Take an intro class
- Online or in-person bootcamp
- Job search!
Developing Your Learning Mindset
The biggest obstacle you have to overcome in order to learn to code is your own attitude. As a beginner (or anyone really), its easy to get discouraged when you reach a difficult topic or struggle to understand something.
How can you overcome this obstacle? You need to learn to embrace challenges and frustrating experiences. The more experience you gain, the more you'll see that getting stuck on a concept or problem isn't just part of learning to code, its part of coding professionally too. If you can thrive on that frustrated feeling, and let it push you to figure out new solutions, you'll make a great programmer. So, how can you learn to change your attitude? Check out our post on "How to Learn to Learn to Code".
Pick a Language and Build a Foundation
There is SO much out there to learn! It's easy to get overwhelmed and feel like you'll never "catch up" to the other devs out there. But if you build a solid foundation of some core programming skills, you can break into the tech world and land your first dev job.
The best way to learn to code is to pick one thing to focus on. I strongly recommend a beginner-friendly language like Ruby to get you started. Ruby is semantic--it reads like English which makes it easy to puzzle out how things work. It also has a robust community of developers who love to share what they know and support newcomers.
One you pick a language to start with, keep focused on building a strong foundation. Learn what you need to actually build a program that runs or an app that works before moving on to a new language or framework. Learn more about how to build your programming foundation in our post: "Want to Be a Professional Dev? Build a Strong Foundation" (coming soon!)
Test The Waters
There are a lot of great free resources out there for people learning to code. If you're in the early stages of exploring this career path, take a free online intro course in the language of your choosing. Code Academy offers some great free intro courses. In particular, look for an offering or course that provides about 9-15 hours of content. If this is your first foray into coding, set a reasonable learning goal.
Take an Intro Class
Once you've played around with learning and writing some code, you're ready to step it up a notch. Sign up for a longer, more in-depth intro course. This allows you to gain the knowledge you need to:
- Decide if you want to seriously pursue programming as a career
- Have a strong foundation for applying to online and in-person bootcamp programs
There are a number of online and in-person intro courses you can check out.
- Udemy Introduction to Programming: A 12-20 hour online course that covers the basics of HTML, CSS and Python.
- Treehouse: Lots of online course offerings, including Ruby for beginners.
- Flatiron School bootcamp prep course: Prepares you to apply to the Flatiron bootcamp program or the program of your choosing with around 75+ hours of FREE coursework.
Attend a Programming Bootcamp
It's possible to teach yourself everything you need to know to land your first engineering jobs. In fact, one of my colleagues is a completely self-taught programmer who landed his first job after about a year of studying on his own.
However, more and more people who build careers in tech without a programming background do so through attending an online or in-person bootcamp. A programming bootcamp is specifically designed to teach you everything you need to know to land your first dev job and to provide you with the resources you need to go on the job hunt.
Bootcamps require a lot of work and time. After all, they are trying to teach you everything you need to know to enter this industry in a short period of time. They are designed for people who didn't study computer science and who've never worked as a programmer before.
Finding the right bootcamp for you depends on a lot of factors: location, time, and money, just to name a few.
Course Report is a great resource to help you find the right fit.
If you're looking for an online program that let's you keep your full-time job or provides you the flexibility you need to care for your family, this Course Report report is a great place to start.
If you're looking for programs and resources for women learning to code, check out this report.
To explore scholarship or tuition deferral options, this report is the way to go.
I can't vouch for every immersive program out there, but I can vouch for the Flatiron School. As a Flatiron grad and former Flatiron teacher, I can tell you that attending the Flatiron School changed by life. Flatiron is where I fell in love with coding and where I learned the skills to succeed in my first engineering job. Flatiron offers an online and in-person program and and has robustly documented outcomes regarding job placement and salaries for grads. I've been lucky enough to work with two Flatiron online grads in my previous role as an engineer at TuneCore, a music distribution company. Together with WeWork, Flatiron now offers a new initiative for people who can't afford the full tuition upfront. You can learn more about Access Labs here.
Find a Job!
Whether you graduated from an in-person immersive or online program, you'll have the skills you need to get hired. You're ready to write your first tech resume, start showing off the projects you've built and practice for the in-person interviews you'll go on. Upcoming issues of Break In will help you develop the interviewing skills you need to blow away the competition and land your first programming job. Here's a preview of some of the job search posts we have coming up:
- How to Write your First Tech Resume
- Professional Devs Share Their Resume Dos and Don'ts
- How To Ace The Whiteboard Interview
- How to Ace The Take-Home Interview Challenge
- How To Pair Program in your Interview
- What To Ask Your Interviewer
Keep Leveling Up
No matter where you are in your journey to learn to code, you can take advantage of a few strategies, resources and support systems to help you succeed.
Build Your Community
Go out into the world and meet other people who are learning to code! Meetups are a great way to start doing this and we have an article coming up that will help you find the right meetup and build your learning community online and IRL
- Learning to Code? Find Your People
Build Side Projects
The best way to cement what you've already learned and to push yourself to develop new coding skills is to build something! How and when should you build your own programs and apps? We have an article coming up just for you:
- How (and Why) To Build Side Project
One of the hardest parts of learning to code is learning how to ask questions. Whether you're just starting to learn, working your first dev job or even later down the line in your programming career, you will always have questions that need answers. Learn how and where to ask questions by reading some of our upcoming posts:
- How to Ask a Question on Stack Overflow
- How to Communicate With Your Team
- How to Get Unstuck
It's important to remember that the path to a career in programming will be different for everyone. No matter who you are or how you go about breaking in to tech, you'll have to work hard, overcome obstacles and deal with frustrations along the way. Break In is here to provide you with the resources you need to navigate your journey. Stay tuned for more and happy coding!