The problem with this request is that entry level programmers rarely tackle projects alone. Usually, you'll be handed a function to tune or a small block of code to finish.
Oh man, I wish had that when I first started. Goodness. I was tackling an XSLT project two months into my first, entry level job out of college. I always worked alone, even in bigger teams down my professional career, i was still working alone (but reporting to a team or working alongside senior devs to get stuff done).
As far as C++ projects are concerned, good point, that's a toughy. He should look into developing using C#, Java or Ruby on Rails - there are tons of projects he can committ too, get experience and put on a resume.
Yeah .. I think it really depends on the company and the development practices that they embrace. What you describe would rarely happen in an workplace dedicated to agile development (working alone doesn't allow for much peer review, for instance) but is relatively common in workplaces that still use a waterfall dev model.
I second the recommendation for C# .. being proficient with that language almost guarantees a job these days.
Not to be trite, but I also recommend Ruby on Rails. My buddy, a C# guy, got into Ruby on Rails and he's never looked back since. In fact, even I'm thinking about it myself!
C# or RoR, they're both winners.
edit to add: Yeah, Agile shops are very much into pair programming. That's fine though.
I wish I had more experience working in an Agile shop, much of my work has been in the .NET realm and Microsoft's tools aren't exactly Agile minded (plus a lot of MS shops are traditional developer minded).
My RoR friend is HUGE on Agile. I'm big on it too, but most of my work is based off of personal projects and I usually only take bits and pieces of it. For the most part, much of my pet projects follow these mantras:
* Code is truth. So documentation is really rare for me.
* Clients don't know what they want. So I do iterative releases that addresses a small problem/request set.
* Test driven is the way to go. In some cases, test driven is how I base my contracts. If all tests meets the criteria, I've met my base requirement, thus can do a deploy or at least satisfy the client.