The barrier to entry for programming is very low. Anyone can get started and build things. They can put their code up on github and start displaying what they've learned. They need to keep learning and challenging themselves though.
The problem is that there isn't a lot of demand for "smart" or "talented" people who can't contribute quickly. Someone who writes bad code and adds bugs to production software is a drag on everyone else's productivity. In most companies there just isn't the time or resources necessary to teach basic programming skills.
You probably don't need to know skill X to land a job, but you need to show that you can learn it quickly. If you can learn it quickly, then start learning it on your own. Most companies in SF don't care how old you are, they care that you can be productive quickly.
Also, SF is expensive, and if you are staying somewhere expensive in the city while trying to find a job, you're doing it wrong. Move out to Oakland/Berkeley or even Hayward/Fremont, one of the other cheaper places and stretch out your money til you find a job... Then be prepared to look for a place to live, which is harder than finding a job in my experience... Especially if you are out of money by the time you get a job and don't have enough for the deposit of wherever you live.
Be prepared for things to take a long time, and with that in mind try to stretch out your money.
I've got a $500/month place in Chinatown, and really haven't found anything near that price with English speaking landlords. It's not to the point of missing rent or anything that dramatic yet, but I have taken on some $11/hr writing and translation work via various freelancing sites as well as some similarly priced work on a rails project. It's the surest way I see of surviving long enough to beat the chicken and egg problem of getting relevant experience.
I've been actively seeking something paid at a higher rate using platforms I've already worked on (iOS or JS/CSS), but it's going slowly. Translation is good for helping me continue to use and strengthen my 2nd (or 3rd) language. The rails work is priced as it is because I've never used rails before and I'm spending at least half the time reading docs. It's not a good long-term money-making solution, but I am learning and I'm adding something to my portfolio.
What would someone with good judgement do if their funds were running out and finding a real gig was clearly in sight but moving slowly? Missing rent would bring all kinds of pain I don't want to deal with and wreak my credit.
(the exception being for VP/COO at larger companies where a board would need to sign off)
From all that I have heard and read, do NOT move to Oakland.
"From what I understand it's due to two things-- at 34, I'm older than others going for junior positions."
I hope any HR people who have had your resume cross their desk are sweating at the thought of age discrimination scrutiny.
It may be there's a shortage of HR talent, not tech talent.
Did Glinda flit in from Oz and wave her magic wand, correcting the past two generations' worth of age discrimination problems in the Valley? Did the EEOC's jack-booted thugs suddenly start raiding offices last week and I didn't read about it in the Murky News?
>It may be there's a shortage of HR talent, not tech talent.
But they not only have certificates, they have college degrees in HR now! A shortage? That's unpossible.
One thing I'll add is that, at least for me, the problem of employers only looking for people with X skill right now is not as bad in SF as it is elsewhere. I'm in Washington, DC and the only interest I've gotten has been from companies in the Bay area.
Of course, those aren't super exciting startup-like jobs, but they are places where you'll get a bunch of experience.
For the contractors I've been talking to, when I tell them that I write python when I can, PHP when I'm patching stuff I wrote a few years ago, and javascript when it needs to run client-side, and that I spend my days maintaining systems running Ubuntu server I get a response something like "yeah... that's not really what we're looking for.
And maybe I've been too quick to dismiss working in a Windows/ASP/VB shop. Those folks have challenging problems to solve too, and reasons for using the tools they use. Thanks for reminding me of that.
If you want to find work, make yourself easiest to get a hold of. ;)
Also, start hacking up a portfolio.
From what I understand it's due to two things-- at 34, I'm older than others going for junior positions. I spent a decade abroad after graduation and have only a year of experience at a tech start-up in Asia. I can kind of understand the pursuit of someone who already knows what they're doing, but on the other hand everyone has to start learning somewhere. Sure my bohemian background and experience starting and running a non-tech business and learning multiple foreign languages doesn't translate directly into usable skills here, but I would have thought that it would have been a strong signal I'm capable of working hard and learning quickly.
Not to overstate things, I am getting a lot of interest and a few interviews and even repeat interviews. It's just that things are moving very slowly, and I'm not getting a great return on the time I put into it. Also, SF is a very expensive city to live in off of savings earned in a developing country!
I think the shortage isn't so much general talent; it's a shortage of people who already have X skill a given business wants right now.