I'm guessing you're looking for a job in a saturated market (west coast, NY). I'll suggest looking elsewhere at companies that are not primarily tech (but have large IT shops). I mean Fortune 500s, not mom-and-pop. And be willing to shift out of front-end, unless you just love UIs. The pay will be lower, but the cost-of-living will also be muuuuch lower. And you may have the opportunity to be a bigger fish in a smaller pond. It worked for me :).

Show those folks that you learn outside of work. Your silly Raspberry Pi project or learning a new JS framework for the fun of it shows that it's something you care about. But don't ever expect on-the-job training or mention it. Show that you'll pick up anything they need you too as the industry changes.

Nothing pisses me off more than peers complaining about not getting training. This is IT, our job is to keep up. If you're not getting it at work, then you need to work on it outside. It sucks, but it's true. Show that you're the teach yourself person, vs the whine about lack of training person. Unless you're pulling genuine 60 hour weeks. Then you're just getting ripped off.

Look at companies where folks put in 10+ years, vs. hot tech companies where 2-3 is the norm. They're more willing to invest in learners vs people who know everything they ask for. Honestly, I wouldn't trust a company that wants you to know everything you need to do the job, because they don't care about you developing. And any hiring manager who expects to hire experts in the position is a fool. You want people to develop, and you don't want them to come in with 1000 preconceptions about how to do X based on prior (possibly irrelevant) experience.

As someone shopping a position at one of those big companies where we have 1000's of developers with 10+ year anniversaries in a fly-over state, it's impossible to find folks with 2-5 years of on-the-job experience that have not only done contract programming.

We just hired a person with almost no relevant experience because they showed the ability to learn fairly unrelated technology in their previous position in a mom-and-pop setting. Everyone else who applied used "the tech lead/business owner rejected my user story" as the answer to every behavioral question and ended with "I accepted their decision." I hate behavioral interviews, but with a big company our hands are tied in the interview process and an answer like that just shows that you just work tasks.

Contract-to-hire is a rip-off that you should avoid unless you're jobless. No one invests education in a contractor because there's no ROI, and you'll never get any experience making decisions in those type of positions.

Also consider the fact that maybe you are not interviewing well. Make sure to show your flexibility, problem solving, self-motivation, and positive attitude, even if you think it's not necessarily work-related. If you don't have those traits, work to develop them. A lot of times interviews are more about these than technical skill. Senior vs. Junior is more about leadership than out-nerding your peers. At least if the interviewers know what they're doing. If they didn't then you're probably better off for not landing the gig,