The value of a degree is less the information it teaches, and more as a filter for people who are unusually smart and/or self-motivated. Those people coming with the requisite CS theory is merely a bonus.
You don’t need much to be productive. There’s plenty of great guardrails like code reviews, pair programming and shadowing that can make someone surprisingly productive.
The value of a degree is social signaling that you are the “type” of person to be able get that degree, socioeconomically and temperamentally. Plenty of people out there for whom the economics of a degree didn’t make any sense, or they had bigger needs that had to be filled immediately so didn’t have the ability to sacrifice for the long term.
I took the intended sentiment to be that of finding talent among non-degree holders that won't necessarily present itself in a typical CS interview scenario. Thus we need a way to identify future CS talent that is merely in need of training and mentoring. And so the problem reduces to, in my opinion, to finding people who are smart and unusually self-motivated. But there is just no good way of doing this.
What do I mean by personal questions? My favorite interview so far left all the academic quizzing aside and asked me to talk in-depth about a particular real-world project I worked on. What patterns did I use? How did it interact with the database? How did I model the problem? This was not something that would be easily googled and it let me convey how I think about software on my own terms. Then it was up to the interviewer if my approach to software would be useful to them.