While I have been self-employed for a few decades, I do see and hear about what's happening out there. I have many friends who have had challenges and others who are afraid to leave their jobs, even when paid well under what they are worth. One of them finally gave up and took a job in the oil fields in New Mexico. This, after sending hundreds of applications and enduring a few 5 to 7 stage interviews, only to be told they chose someone else.

Age discrimination has been a real problem in tech for a very long time, this isn't new at all. Yet, somehow, it feels like it has gotten progressively worse over time. There are companies where you have the young (25-ish, just out of school) comprise the majority and the managers are just a few years older than that. They simply do not want to see "Mom" or "Dad" join the team.

You are going to find very few 40, 50 or 60+ year old engineer in those environments. Their experience and capabilities do not matter at all except for a few domains where they almost have no options (RF electronics, signal/power integrity, embedded systems, gov/mil, etc.).

I am not saying that age discrimination is the only filter being applied, of course not. That is, however, likely one of the main filters for a large group in the application pool.

The other problem seems to be that a massive portion of the job posting on sites like LinkedIn seem to be fake. I have seen reports claiming that the number might be as high as 80%. These postings are fake for a lot of reasons. One of them, at least in the US, are rules/laws that require posting a job opening even when you have already identified someone you will hire (or retain) for that role. Companies have to be able to show they evaluated N applications before declaring they will hire someone from the inside or retain/bring-in an H1B.

This is terrible and --while there is no indication that this will be an objective-- I hope the new administration gives this issue some thought and modifies the rules of the game to create a real market for jobs, one where opportunities are fair for everyone (whatever that metric might be).

For example, people have been told to go study coding all the way back to the Obama administration (maybe earlier, I don't remember). So, lots of people did. And then they were dropped on their collective heads. No offense to anyone, but, if the US is telling its young to study CS, H1B visas should have become rare and exceptional. Nothing else is fair.

There are other problems, of course, many problems. One of the is that university CS programs in the US and elsewhere, well, suck. People come out of programs with their degrees and are incapable of writing code. In the US, they can argue with you about Socialism and Karl Marx, and they can't code shit. They are taught what I call "coding by library". I am going to stretch and suggest that the vast majority of them would drown if you gave them C and a raw embedded system and asked them to implement a neural network or a genetic algorithm (and many other things). Give them Python and Pybullet and they are all geniuses. Brilliant.

So, yeah, education has to change. A CS/Engineering degree should consist of three years of core, from the ground-up, subjects and one more year specializing at a higher level. Yes, that means that the $50K students are forced to pay for bullshit non-degree topics must go. They are a waste of time. General education should happen in high school, not university at $30K to $50K per year.

You should be able to graduate with a solid CS foundation in three years, a generalist, if you will. Anyone wishing to specialize should be able to add one year to their BS degree for this purpose and a Masters after that.

About two years ago I helped a recent CS graduate prepare for an interview. What I learned from this single data point was astounding. It is embarrassing that our universities are doing such a horrible job in preparing people for their future. The issues had to do both with breath and depth of knowledge. To be sure, encyclopedic knowledge isn't necessary, but you have to be able to code using something other than JS, P5.js or Python and a pile of fat libraries you do not understand.

Questions like "What's a pointer?" and "Can the data in a non-mutable Python object ever change?" should have intelligent answers that reveal understanding. BTW, the answer to the second question is: Yes, absolutely.

Getting back to the issue of finding employment, frankly, I am not sure what people can do about it. If I were looking for a job I would likely take one of two approaches. The first would be to join everyone else carpet-bombing job postings with applications. Well, that does not work. The other might be to be extremely selective and, perhaps, look for niche positions with few applicants and attempt to tailor the application to make a case for hiring you.

One thing is sure: Trying to second-guess a software-based application filter (AI or otherwise) is a waste of time. You are throwing your application into a black box and have not idea what happens inside it. Whatever guess you might make is far more likely to be random, rather than stochastic. In other words, in the first case your guesses will have almost completely unpredictable results while, in the second case, with some knowledge, the guesses are made in the context of something that resembles a probability distribution.

And yet, in the end, either case might be equally pointless. This is particularly true when the posting's intent was to support internal hire or H1B.

The other angle on this is entrepreneurship. This isn't for everyone. Most will fail and do so multiple times, dozens of times in some cases. I nearly lost everything I owned before I experienced success. Like I said, not for most.

In the end, I don't really know how this can be fixed. I don't believe in big government, so I am not comfortable with the suggestion that legislation is a solution. Then again, I also have to admit that there might be a need for this on a temporary basis to bring balance into the relevant markets.