Four Lessons After One Year of Self-Teaching
One of the most notable things about the tech industry is that you don't necessarily need a college degree to get a job. While a degree may help, demonstrating skills and presenting what you made is what really matters.
There are many different forms of credentials you can earn, like a certificate of completion or a nano-degree, in order to boost your resume and heighten your chances of landing the job. Another viable path to employment is self-teaching. This usually means utilizing free or low-cost resources and forgoing a formal classroom setting. This was the path I chose back in February 2019.
I decided I would seriously commit to teaching myself; no nano-degrees, no MOOCs and no paid courses or bootcamps. After a year of self-teaching and coding nearly every day, there were many lessons I took away from the experience. (especially considering I am about to begin a full-time bootcamp in March)
Among resources for learning and inspiration were:
freeCodeCamp.org: excellent choice for beginners.
Reading materials (books, blogs and articles):
- Medium is full of various blogs about programming/ web development
Viewing materials (Youtube, mostly):
Make no mistake: these last 12 months felt grueling at times. Up until very recently, I was working a full-time job at the time so there were few opportunities to sit and get a meaningful amount of work done. I went through many periods of self-doubt and moments when I wanted to quit. However, I kept reminding myself about why I was doing this and what this means for my personal and professional growth. .
There were many important lessons I learned in that year of self-directed learning. But there are especially 4 lessons that I want to share in this post:
Community is Key
Strength lies in differences, not in similarities. - Stephen Covey
Engaging with a large community of developers and maintaining a support system of family, friends and peers is essential for long-term success.
These are the people who will encourage you and help you keep yourself accountable. Your support system could be:
- Spouse/ Partner/ Significant Other
- Close friend or two
- Someone you know who is already working in tech
Tapping in to the massive developer community, whether online or in person, is also essential for long-term growth and success. Depending on where you live, you may be able to go to meetups and interact with other developers in real life. There are also many online options. Stack Overflow and freeCodeCamp's forum are good places to start, I think.
Exposing yourself to many different perspectives and experiences makes you a better developer in the long run.
When I discovered Youtube channels by individuals like Chris Sean and saw how candid he was about his struggles as a developer, it made me feel better knowing that I wasn't the only one who felt like they weren't good enough. Even if employed, some "successful" developers are susceptible to imposter syndrome.
As long as you keep yourself surrounded by good people, you will go far.
Time Isn't Just Quantity. It's Also Quality.
Do what you can, with what you have, where you are. -Theodore Roosevelt
As I said before, I worked full-time while teaching myself how to code on the side. For most of the time, I was pushing late nights and wake up early just so I had a fighting chance of clocking in some decent coding time.
I realized, however, that it doesn't really matter how much time you put in per se. What counts is what one does with that time.
While it's always nice to have extra time for coding (and I will once I begin my bootcamp in March), I have to utilize the time I currently have and plan out what I'm going to use that time for.
I'm not gonna pretend like this is easy. It's very hard to balance this with other essential needs in life, like family and the job you may happen to currently be working.
But whatever free blocks of time you do have, think about all the things you could get done with it.
Don't Be Afraid To Ask For (and Give) Help
The greatest gift is not being afraid to question. - Ruby Dee
This particular skill is like a muscle; you have to keep asking questions to keep asking good questions.
While this skill may sound obvious, this is a hard art. Even to this day, I have a difficult time asking for help when I'm stuck on a problem. Like some of you, I get anxious about going online, posting a question on a forum and waiting for strangers to reply. But remember, these are other developers and engineers who were once beginners themselves.
Asking good questions is essential to progressing as a developer. And getting answers from others helps you make your questions better.
Continue to Self-Teach
He who learns but does not think, is lost! He who thinks but does not learn is in great danger. - Confucius
If there's one thing I'd take away from a year of self-directed learning, it's that continuing education (whether it's traditional, a MOOC, more self-teaching, etc) is vital to staying fresh and competitive as a developer.
Learning is in and of itself a life-long exercise and the brain is the muscle. Utilize that muscle by exercising everyday.
Asking Good Questions (Stack Overflow)