So I'm not really selfishly worried about this. We'll go eventually, but we'll probably be amongst the last to go. By then society will have to figure out how to deal with mass unemployment, it's already a massive issue today and it's not going to improve any time soon.
GP doesn't seem to get much attention so we are far from this method being practical. Actually, I'm puzzled why GP is so unpopular compared to say, type system research, since it could have a vastly greater impact if it were to make progress.
That's an extremely difficult task for any but the most trivial problems. It shares many of the same issues with formal verification, which has also failed to catch on beyond the odd niche project.
Differentiable Neural Computers [1] are getting us closer (by incorporating an explicit I/O operations on a memory) but it's uncertain how much test data you would need to build complex code routines.
Turning any kind of genetic / ML system loose on that? How would you even write test cases, short of backfeeding production data? And expecting the result to pass muster with auditors?
Genetic Programming is not getting much attention because it is inherently inefficient, and there are much better optimization methods out there. Genetic Programming, similarly to Monte Carlo methods, is often the "easy way out" when you are trying to solve an optimization task where you cannot (bother to) model the process.
For example: You could train Neural Networks' weights with Genetic Programming, but that's extremely inefficient compared to gradient descent.
Bottom-line: Genetic Programming is not a magic bullet, and is not guaranteed to converge to a workable solution in a "reasonable" time.
And then there's the idea that new jobs are created when others disappear. I'm sure there will be jobs in the future that we can't imagine yet. Maybe we'll actually forcibly create new jobs in order to keep people busy.
Theoretically that role is generally called "business analyst" or "product manager" or "product owner" but you know the difference between theory and practice.
If we'd ever reach that point of automation my money's on many programmers just switching to some sort of "business analysis". After all, this job is all about making decisions, tons of micro-decisions.
The history of what used to be called "CASE" is absolutely full of people promising tools that would automate parts of programming that fail to deliver. The difficult (or at least most time-consuming) parts of programming are all to do with meaning, intent, purpose, communication, and prioritisation.
What is likely is that "code assistants" will gradually improve, both in the form of language constraints (Rust borrow checker) and IDE advice (Visual Studio's endless tooltips).
Meanwhile anything that has to do with the semantics and meaning is a much harder, much longer term problem. And one that's very different from the current fixation on ml.
For some reason I had this thought even 15 years back. I used to think once software is written it will continue to run with occasional interference by maintainer. But then people convinced me, look, there is lot of software is to be written so don't worry about losing job.
I now think the kind of software I and many others were writing at typical IT company (CRUDy apps) was very immature and buggy. But over 2 decades people have recognized some patterns and made the software run with much less maintenance work.
I have noticed 5 years back at my workplace where every weekend there will be firefighting with production issues. But now everything seems stable and generally better. No brand new software was written, no stack was replaced. It was things like upgrading to newer versions of software, more logging, more monitoring, more automation, better release process etc.
There used to be ~10 people in team and now there are ~4 people. Everyone who left was supposed to have replacement but no one was hired. The point I am trying to make is, yes, there can be new whizbang features, NoSQL backend with 10 more ppl on team and so on but from business perspective this thing is working fine and just keep it up and running without too many customer issues.
Software engineering is not a zero-sum game where the AIs rise to the exclusion of humans - it's an expanding space.
*and then there's the meta: does using an oven qualify as cooked-by-machine?
It's just not gonna happen on a large scale. Nothing beyond simple CRUD if that.
I think it's often difficult to appreciate that one's own profession could be replaced by some code, but it's an issue that many areas of the working population will have to deal with in our (and our children's) lifetimes - what has happened with physical work - automation such as robots and machines will happen with the work we do with our minds in many cases.