This question already has an answer here:
I'm going to ask this question knowing that I risk it being closed for being like some other questions that have been asked in the past. I have read them, I promise. example here: Bridging the gap between learning language fundamentals and actually making useful software?
I'm teaching myself programming, using any resources I can get my hands on, though mostly through online tutorials, guides, and most importantly documentation. The problem I'm having is that there seems to be a very wide gap in available education (without paying more money than I have to go back to school for CS), between learning syntax/fundamentals in languages and being hirable as a developer.
Common suggestions to this problem from experienced devs are to get involved in open source and write some programs. Every open source project I've looked at still seems way over my head. The programs I can write are too small to be considered worthwhile or noteworthy. Taking on a big project has the same problem as getting involved in an open source project.
The most helpful advice I've seen in response to this question is get involved in a team so that you can learn from more experienced people and work together on things. This would be my holy grail. But the real question here is: how to do you become part of a dev team when you're not experienced enough to contribute. And if you were experienced enough, wouldn't you already have a job as a dev?
I know that my inexperience with programming in general makes my perspective perhaps naive, especially due to my not having a job in the field yet. So please, if you offer similar advice to the things I've listed already, can you explain in a little more detail how it fits in the path from noob to hirable.
Thanks in advance.