Working as a contractor, with a military background and a well documented solid computer science background (not traditional of course but still rock solid), he can pretty much right his own tickets in any R&D field. I can't think of a better person to contract out too: worked intel, speaks Korean (Southern dialect I presume), and proably has held a clearance because of his MOS.
He could work on anything that goes kaboom, vroom, flys, or pushes the boundries of human understanding (maybe even a combination of the three!).
Hell, you could even just do "boring" old software development on contract and make sure the infrastructure behind the world doesn't fall apart (That's what contracting programmers do). If you can branch into embeded development you could work on medial, networking, sensor, mining, and aerospace gear.
I understand the appeal of Google, but I'd probably say that if you're the type who likes to self study, who is so motivated that you will devote 8 months of your life to getting something right, who will pour over a book for days on end until you've soaked up every bit of knowladge, and you're someone who can take all of that and put it into solving problems then I don't think your talent will be adaquatly used at Google. Google isn't that special unless you're going to Google to say "I work at Google!"
Working for yourself, on your own timeframe, doing what this person obviously enjoys (learning and applying that learnt knowladge), all while being paid exorbitant amounts of money to build or help build things that push the boundries of human knowladge and possibilites sounds more fufilling then fixing support ticket #449,823,335,465 for Module #32,388,556 in Chrome/Search/AdSense/Cloud software.
But I don't know, that could just be me.
Some are good at datastructures, some are good with algorithms, some are still studying concurancy, parallelism, and distributed systems, and the rest know cryptography (which I hold as not being a Computer Science discipline).
Very very few people have a rock solid grasp of everything (that I consider) in the CS field. If he underwent this curriculum and actually learned all of what he said he did he's a genious. He'd run circles around most people in a university who claim to know the material but are 5, 10, 15 years out of study.
One of my professors is running a class on C and writes everything like K&R (and doesn't use free after he allocates memory. He just allocates and forgets!). Another I have is teaching a programming language concepts class and he says "All of these crazy lazy evaluation nonsense languages are useless" in regards to the entire LISP liniage.
Again, by doing all of these you're far ahead of the curve.
This guy doesn't know all that. He might have it on his list, but he's still in the middle of learning the core subjects of a CS curriculum.
And pretty much any programmer could take the time to study these topics in depth and achieve that level of competence with them. Most choose not to.
That's the point I'm making. He's ahead of the game just for trying.
It's because they're hoping to get rich--make the perhaps $10M+ so that they can do whatever they want with the rest of their lives. You almost make it sound like the startup is part of their Google interview strategy and acquisition is how they get hired, but I'd venture that most founders probably don't want to spend more than a couple years at the parent company. They want to start the next phase of their lives.
What you're describing is a good career path for a self-taught programmer without the necessary network/luck to get into a Fancy Software Company.
Building one's own company to the point where it sustains you is two levels above that.
Here is my model to fit your perspective:
Self-taught programmer/moderately-ranked state school ->
Junior developer at unknown startup ->
Intermediate/senior developer at that startup or another one ->
Software Dev at Fancy Company ->
Start company with colleagues OR high-paid, remote consulting gigs Junior developer at unknown startup [Medium risk, low reward]
Intermediate/senior developer at that startup or another one [Medium risk, medium reward]
Software Dev at Fancy Company [Low risk, high reward]
Start company with colleagues OR high-paid, remote consulting gigs [High risk, high reward]
I'd characterize the last one as a step backwards IF you consider "low risk, high reward" to be the best possible situation.I think it very much depends on what you actually want to be doing.