author | title | date | image | authorImage | tags |
---|---|---|---|---|---|
Trevor Lane |
The Simple System I Would Follow To Get A Software Development Job If I Had To Start From Zero |
11/25/2021 |
programming, learning, how to |
Learning how to code is hard. So is learning how to learn how to code. Since everyone learns in different ways, there is no one correct way to learn how to code. The actual answer to "how do I learn how to code?" is "whatever works best for you." Since few of us have extra time and resources to devote to learning new things, the realistic answer is actually "whatever works."
This question is a constant source of debate for software engineers. Since learning how to code is hard, everyone has battle scars. Along with scars come the ideas of how the scars could have been avoided. The causes of scars are vast but they usually have to do with wasted time and energy.
Because of this, many engineers have a "grass is greener" approach when it comes to learning how to code. We recognize errors in how we learned, so we optimize for new systems without the errors we experienced. Of course this doesn't account for the unknown errors in other systems.
Its also important to understand that if you are able to learn how to code, the path you take ultimately does not matter. If you are lucky enough to learn how to code, you can easily enter the top 10% of earners in the US. Furthermore, you would likely be one of the wealthiest humans to ever live on planet earth [0].
With that being said, here's what I would do If I had to do it again:
-
Learn HTML & CSS using freeCodeCamp.org
-
Learn Javascript on freeCodeCamp.org
-
Learn ReactJS (web front-end) on freeCodeCamp.org
-
Learn NodeJS (web back-end) onfreeCodeCamp.org
I would complete the freeCodeCamp HTML & CSS exercises then start building as soon as possible.
The "what" of what I'm building wouldn't matter too much at this point. The main focus would be practice and repetitions.
If I was really at a loss, I would take a look at this list of services businesses. Usually these kinds of businesses are small and locally owned. This means finding one with a bad website is easy. I would use google to search for any of these kinds of businesses in my area. I would do this until I've found a website that seems pretty bad. Then I would rebuild it using my new HTML & CSS skills. I would award myself extra points if I called up the business and asked if they wanted to buy it.
I might also consult this list of popular app ideas. These lists are very common, there are tons of them that can be found via google.
As I learn and build, I would rely on online communities to ask questions and receive feedback. I would post questions and links to projects in these communities:
After getting comfortable with HTML & CSS I would move on to more advanced topics. While the content would change (Javascript, then React, then Node) the process for learning would be the same. I would complete the freeCodeCamp exercises, start building stuff and continue to seek feedback from the community.
Since Javascript, React, and Node are more complex than HTML & CSS, I would understand that more time would be needed to learn these topics.
Once I was comfortable with Javascript and React, I would start applying for front-end positions. If I was comfortable with both the front-end and back-end I would also look for a full-stack or back-end position.
After reaching a comfortable level of competency I would learn the fundamentals of computer science using the teachyourselfcs.com curriculum. This would likely take up to 3 or 4 years to complete.
My reasoning for this approach instead of going to a bootcamp or University is that the biggest differentiation between junior, mid-level and senior devs is how many years of experience they have.
The process I outlined enables one to learn the minimum set of skills needed to become employed full-time as a software developer. In the time it takes to get a degree I would already have between 2-4 years of experience.
If you found this post interesting or helpful, follow me on twitter 🙏
- Assuming total human count is around 100 Billion and that global wealth has continuously increased throughout history.