Problem there is you can't just go get a security clearance - you have to be ... sponsored(?) - is that the word - by a company already. At least, that was my reading of the situation a few years back. I gave up applying to defense positions years ago because every one required existing security clearance. It's the defense industry version of "you have to have experience before we'll hire you to get the experience".
Right after I graduated with my BSCS in 2002, I went into the Army for four years (which is how I got my clearance). The only employers willing to even look at me ("if you love programming so much, why haven't you been doing it for the past four years?") were defense companies, and only because I already had a clearance. :)
We sometimes hire fresh grads without a clearance, but experienced hires are generally expected to already have them. It's not cheap (and definitely not fast) to get someone a clearance. Though, some companies/contracts/projects are probably more flexible on this, especially if they have something unclassified you can work on while they wait for your clearance to come through.
Out of curiosity what's your take on people who had a clearance and then let it expire? They go inactive after 2 years so getting back seems like an issue.
They will say existing security clearance required, because that greatly speeds up their hiring process. However there really is a severe drought of qualified developers with clearance, to the degree that even the worthless ones don't really get fired if they show up and don't anger security. And while for some of the jobs that may indeed be a hard requirement, for most of them its more of a preference. If you are a good programmer and fairly confident you will be able to be cleared, then they will sponsor you through the clearance process. Pro-tip just don't lie about shit and should be able to get clearance, they will look over most past issues if you acknowledge them and state that they are no longer an issue.
Clearance requests must be accompanied by a justification, which basically means "needed to work on Project XYZ". You cannot get a clearance unless you actually need it to do work, and should not be cleared any higher than is necessary[1]. This leads to the chicken-and-egg situation with cleared positions: you need a clearance to work on these programs, but you can't get a clearance for the first time until asked to work on one of these programs.
[1] Some companies will try to put you through for higher clearances than you actually need right now in anticipation of future work, but they aren't supposed to.
The rationale is to minimize the number of clearances. Even though you can't get information without a need-to-know, the government still likes to limit the number of clearances.
Interesting, I didn't realize it was considered an ongoing process. I guess that makes sense; otherwise a bad actor would just apply for clearance, get cleared, and then start doing things they shouldn't.
They don't actually tell you explicitly it is an ongoing process, but everyone with clearance I know seems to acknowledge they are probably being kept tabs on at least a little. I mean it would seem kind of irrational to have all these watch lists and not watch the people with privileged information.