I'm not sure whether my recent experience will carry any weight or not, but here it is.
I've been doing software development of one form or another since about 6 months after leaving high school. After graduating high school, I came to Phoenix, Arizona to go to a local technical school to learn "computer electronics"; basically troubleshooting and building circuits (analog and digital - though analog is still, to me, somewhat a "black art" that only the truly skilled master), with an emphasis on computers and industrial control. Anyhow, about 6 months into that schooling I quit my job at Osco (they had cut my hours back to nothing), and cold-called for an apprenticeship job in electronics - and somehow I landed a job as a "computer operator" at a small mom-n-pop shop.
At the time, I had been programming on my own since I was about 10 years old - so I had a base of understanding of software development from that vantage point; mainly in BASIC and some assembler. I learned a bit more while going to the tech school (I'll tell you something - 68K assembler isn't bad - we were coding on the Amiga at the time). This place that hired me, though, told me they wouldn't hire me as a programmer because I didn't have a degree. So - they stuck me in the small computer room with a chattering line printer and taught me how to run reports and mount a 9-track tape on a vacuum column drive. I was being paid more than at Osco, and I thought I would graduate and leave back for home...
6 months passed and I got my associates degree (today I think going to that tech school was probably the worst decision of my life - but that's life); at the place I was working, by that time I had already shown them I could code (they had given me an account on the machine - and they were gradually teaching me the discipline of professional coding - vs my old-style self-taught spaghetti coding methods) - and they offered me a permanent position, and a (what I thought) was a fairly substantial raise (something like 50 percent!). What I didn't know was that they had got me for a song...
Well - that launched my professional software developer career. It's been 20 years now, and I'm still coding (and approaching the "big 4-0" - lol). Currently I work for a web applications development company out of Scottsdale. That's got a little backstory to it...
Back near the tail-end of October, I was up to my eyeballs in a few projects: I had taken on two free online Stanford classes (the AI and the ML classes), plus I was involved in a heavy project for my previous employer. That was taking a ton of my time, but so were the classes. It was a constant struggle to do everything and still make the grades and understanding of the material for the classes. I'll admit freely - I had bit off more than I could chew, but at the same time, if it hadn't been for the project at my work - I could've did it (barely, most likely). But that project was eating into my time - at times forcing me to stay late - sometime 'til 1 or 2 in the morning (and then my boss wanting me to come in the following day at my normal time - 9 am).
Oh - I forgot to mention - I was also owed about a month's worth of back-pay by him (over a year due), and I hadn't had health insurance coverage for about 1.5 years. I had given everything to try to stick with it, stay loyal, help the company recover, and hopefully get back what I originally was promised (and had gotten) when I had started working there 5 years earlier. I'm nothing if not loyal to a fault. With all of this - wondering if the project would ever finish; worrying about my school work; wondering if I was ever going to get health insurance coverage or if I was going to see my back-pay I was owed...something had to give. At the end of October, something did...
I was staying late one more day for this project, knowing I wouldn't have time to do the homework for my classes - I tried to tell my boss that I couldn't do it anymore, that I wanted off the project, on something else, that it was impacting my education. Here I was - learning new things via an online class about a love of mine (Artificial Intelligence and Machine Learning) - cramming and understanding math which I had barely encountered before (probabilities and statistics) - this was a dream of mine. I'll never have a chance to actually go to Stanford (couldn't afford it even if I had the transcripts to go) - but this was helping me, and it made me feel good to participate. My boss didn't seem to care; he basically told me I could either drop my classes or resign.
So I resigned.
I went home late - again - that night; frustrated, angry, and upset. Someone I thought who would understand my hopes and dreams cared more about wringing every last ounce outta me; yeah, I'm approaching 40 and I am still naive, I guess. But anyhow - I talked it over with my wife, and decided I had finally had it. Fortunately for us, we had some savings, so I did something that I thought I was crazy to do, and stepped into the void of unemployment in a down economy - wondering if I had made the biggest mistake of my life (second only to not getting a real degree in computer science). I went back to my work a couple hours later (about 4 in the morning), cleaned out my desk, left behind a bunch of old computer junk I wanted (better not to take such stuff when you're quitting, though - I'm not stupid), and wrote my resignation letter. I carried out my box-o-crap, and left the key behind as I locked the door and reset the alarm. Then I drove back home - still wondering about what the future would hold.
The next day I dropped my AI class (which made me upset, and a somewhat bitter - but I kept going with my ML class)...
Ok - well, this is getting a bit long in the tooth, but to make the story a bit shorter, I put my resume out on Career Builder, Dice, etc - and hit up Craigslist and anywhere/anyone else I could think of. Eventually, the recruiters started calling me back, and helping me out. Ultimately, though, I answered a Craigslist posting for this place in Scottsdale. I took along with me an extra copy of my resume, and more importantly, a sample of my code (from my personal website), as well as a sample of the code I had wrote for my ML class (where I learned a new programming language called Octave - kinda like Matlab). They asked me some questions, I showed them my code, talked about my skills and interests, etc. I made sure to mention that what I was learning in the ML class was for my personal edification (and my hobbyist robotics projects), but that I enjoyed keeping my skills up like that, because I feel such knowledge could be of assistance to my employer as well.
It must've did the trick - less than a week after I had walked out of my old job, I ended up getting an offer (which I accepted) for my current position - ultimately for more pay, and after 90 days - more benefits.
This past Thursday I had my review (a few days early, I might add) - they wanted to keep me on. They got me set up with the medical insurance package, plus they gave me a raise. They told me that they had gone through more than a few programmers prior to me, but that none had the skill level or talent that I had brought to the company. They've hinted at wanting to transition me to management (in the software dev group, I imagine), depending on company growth. I'm now working on new projects with, I feel, a competent set of real business-oriented people; they don't seem to take any flak from their employees and expect the highest from them. They also seem to be bringing in the business needed to keep the company going, and they know when to say "no" to projects and clients as well (that's always an important point).
I tend to think that being able to present and discuss those code examples was the edge I needed. I don't know what the future holds, but I do know that for me, my software development career seems to have a turnover of 5-10 years with any given employer. My hope is to finish up this robotics project, and turn that into my "ultimate" portfolio (that, or a business venture). In the thick of it, I should have documentation on my mechanical design skills, my programming chops (mobile, web application, microcontroller, etc), electronics design and implementation, possibly some machining skills (I'm getting my mini-mill slowly set up!), AI/ML, etc. I think having such a portfolio is what will help keep me employable, if not something better.
So I would advise to try coming up with that portfolio, and focus it toward the type of job/career you are trying to land. Continue in the meantime to work on your projects, and throw that in the portfolio as well. Above all, keep learning the new stuff, and don't get complacent or apathetic; don't get stuck in a rut, so to speak. Try to keep your skills general (in my case, I always emphasize to employers that I don't consider myself to be focused on one particular language or platform above all others, but that I am flexible and capable enough to learn a new platform or language very quickly - that I have learned over the years that most languages/platforms all have the same general principles behind them, and it is those principles that I study and know).
I hope this long post helps in some manner - good luck on your search!