It is no guarantee that he will have a successful career, but it is a good starting point. No college teaches you everything, once you get out and spend some time in the real world you will understand that better (or find another career, the wash out rate in industry for cs graduates is pretty high.) We are at full employment in the industry right now, so anybody who graduates with a degree or even takes a class in prison is probably getting a job of some sort. This is a boom and bust field though, and it tends to shed those who are not in the top third or so every once in a while.
Speed coding definitely has its place in industry, and the major architecture decisions are not made by people who just entered the field unless it is something stupid simple like a basic CMS. A lot of people who do not have a formal education miss things like algorithmic efficiency, but that alone is not even close to enough to optimize a program well, and I can refer them to a reference for what they would miss during a CS degree (which proceeds at such a slow pace that someone who will end up doing well can likely cover it in their free time in less than six months with a little motivation... they already know how to program after all.)
You probably only think you have worked on a big project, I would put the starting point on that at a few million lines of code. You do not have time to make a substantial contribution to a code base like that over a class or two.
Looking around the office at people with at least ten years in the field and who are not assigned disposable tasks (with commensurate pay), it is almost evenly split between those with a degree and and those who do not have one. The thing is that most with a degree do not have it in CS.
You learned maybe 20% of what you need to have a moderately successful career in school if you are really lucky, paid attention, and went to a top university. That does give you a leg up, but only against those with no real experience. I will almost always take someone with four years of paid work as a programmer over someone with a degree, and in my opinion the best degree to see on a programmer is in physics or another hard science anyway (for a pure programmer at least... I give some weight to a degree in the subject the programs I expect them to write will cover.)
In short: A new programmer needs a lot of training no matter if they have a degree or not, what I want to see is logic and the ability to learn from a written reference. I do not feel a CS degree is a good indicator of that, even if it should be.