There are lots of tech companies hiring too. The hard part is finding them, and convincing them you are the one. Most of the resumes I see for a "senior" programmer don't have the experience.
Yet... we still see ageism in hiring too. I'm continually surprised at people advertising for 'senior' positions that require 3 years of 'foo' experience. If that's how you label 'senior'... don't be surprised when people with little experience apply for senior positions.
Not poking at you directly. I've got 25 years of experience. I was on a team a few years ago with people with... 2-4 years experience. We were both labelled to the end client (contracting company) as 'senior developers'. It's just weird all around. When everyone is 'senior', it loses any useful meaning.
Although 3 years is a little low, I work with plenty of people with 5 years of experience who are just as good as the best programmers with 25 years. The early years experience matters a lot, but the difference between 5 and 25 years is insignificant.
The levels are fresh out of school, have learned enough to not need hand holding, and able to make good decisions about code. You cover them very fast. There is a staff level about that, but most people don't reach that level. There just isn't need for too many of them.