If you really want to code, you need to figure out what libraries/frameworks/tooling/etc are popular in your area, and spend at least a year or two working on open projects which use them; learning them inside out.
The good news is that it's possible. I, and others, have gotten jobs without a degree. The bad news is you need to be damned good to do it.
It's a marathon. Not a sprint. You're looking at 2 to 5 years spending 20 hours a week on this. It will most likely not make you money during this time; so you need to love doing it.
So if you consider that (1yr)x(70hrs/week)=3640hrs falls right into the (2-5yrs)x(20hrs/week)=2080-5200hrs bracket, then in theory I have 'paid' my dues.
Otherwise if you're the kind to factor in the notion that "it takes time for the concepts to sink in", that's another story.
Specifically focus on working with others. Find an OSS project you like and contribute to it significantly. Or, better yet, find an OSS project that companies in your area want experience with and start contributing to that.
If I saw "Active contributor to Angular/D3/Entity Framework/SignalR/Mono/Whatever" on a resume, I'd definitely be interested in talking to that person.
I went totally broke learning to code. Now I have to donate my time to OSS? Something is backwards
If I had the time to be writing code, I would be building out a backlist of ideas I personally have.
Thanks for the input though
If you don't have kids at this point, then I'd go with the Pat Rothfuss method: http://blog.patrickrothfuss.com/2010/02/fanmail-q-advice-for...
If you do have kids at this point, your situation is significantly harder.
That said, if you don't have kids, are you really working/commuting 90 hours a week and don't have 20 to spare?
You're essentially suggesting that I recluse myself even more than I did in the past year, in a low rent city (which in Canada will definitely have 0 tech scene) or far away in the burbs where the commute is long enough that I could code on it. Essentially, to become a full fledged renegade of society.
I prefer the more rational approach that involves being a city, and going to meetups, conferences and hackathons to meet other engineers that are actually working in tech.
Not fair on your part to downplay these efforts by condescendingly calling apps I built "test apps" (what just because I read a tutorial? How did you learn????). You maybe don't realize it, but the only reason you're able to get a job as a self-taught developer is because you're in the US and you have a Bachelor's. That is the way the tech industry works.
IMO I don't think Rails or Swift are the best languages to start out with if you're looking to get a job. Primarily because they are mostly used at Startups or smaller companies and those companies generally want senior coders (as they don't have time to train juniors).
I think the best languages to easily get a job are Java, PHP, C# or C++. There are many enterprises, banks and governments who can't get enough coders for those languages because the jobs are boring and routine and most coders tend to stay away from them, or quickly move on to more fun things after they've gained a few years of experience.
The fact that you know Rails or Swift too won't be a waste. It's still a huge asset to you because hiring managers at these big boring companies are used to seeing resumes of recent graduates who have taken programming for the money, not for the passion. Seeing that you've learnt languages that they don't teach in college puts you above the rest of the field.
As most resumes are screened initially by an HR person, your resume is probably being binned before anyone from engineering sees it because you don't have a degree. This completely sucks but is the reality.
Therefore, your best bet if you're looking to change strategy could be to narrow how wide you cast your net a bit and focus more attention on each individual application. Sounds like you've got passion by the bucketloads and engineers love people who love what they do. So try and find some engineers - are you going to meetups?
Meetups are a great way to get some informal time to meet people from the local community and learn what's in demand and what opportunities are going. More importantly, they're great places to learn a lot of information rapidly for free.
I also just recently started going to meetups. The engineering centric ones are much more scarce where I am than the 'startup business networking' ones unfortunately, but... doing my best!!
I really want to attend a hackathon at some point and really have high hopes that that could be my shot. Maybe I'll save up and try and sneak my way in to one in a big city....
I also suggest apply to fewer targeted companies and tailor your cv to their job spec. Staying honest of course!
Also learn technologies that are easier to market albeit less fun such as Java, JS and C#.
Get a friend who is in the industry to review your cv or attend meet ups and get people there to have a look and give honest feedback.
Having a blog, a github and giving talks would help too.
I learned the fundamentals of Ruby on Rails with Michael Hartl's tutorial and built an e-commerce application on Heroku from scratch (html/css/js/jquery/postgresql) It featured an admin panel, inventory management, user accounts and a reasonable RSpec test suite. It took me about 3 months of plowing 90hours+/week. I used it as a portfolio application to start looking for jobs. After blasting hundreds of resumes (>600), I got about 20 interviews. None of them worked out except for two unpaid internships which I financially could not accept.
I gave up Rails, but I didn't give up coding, so I asked the internet what was more likely than Rails to land me a job? iOS was probably more niche and more in demand. So I spent a month learning the basics of iOS development with Swift and released 2 apps on the App Store over the following 6 months (build-learn-build-learn cycle), both using Parse, Firebase and a panoply of 3rd party APIs. They were well architected (imo) using fundamental OOP principles, as well as the classic iOS patterns, singleton, observer etc.
This time I sent over 3 thousand resumes over the course of 5 months, all over the world: Canada, USA, Mexico, UK, Australia, Netherlands, Germany, Argentina... you name it.
I got 2 remote pair-programming sessions, which I nailed, I also got about 8 coding assignments, which I completed within hours of receiving the instructions (4 of which never even had the decency to respond or give feedback). All in all response was the same. I even got a couple of absolutely ridiculous contract offers such as building a full fledged real time web and iOS landlord/tenant management system for 2000$, solo.
Without trying to start a pity party, I am now doing manual labor on a curtain assembly line, going door to door after my shifts trying to sell Wordpress websites, which are easiest to setup and sell.
I guess I had to stop coding because I couldn't find a job, because it takes up time I don't have and even though I am passionate about it, passion doesn't pay the bills.