My company, a C++ house, is always looking to hire recent grads. However due to the Java Schools phenomenon, we typically end up interviewing strong Java programmers with maybe a minute smattering of C++. Often the C++ classes don't really prepare students for working in C++. Nevertheless, often these are bright kids, eager to learn and do their best.
Every interview, I struggle with this fundamental question:
How hard is it to turn a "Java School" programmer into a C or C++ programmer? Has your company had experience turning the stereotypical "Java Schools" programmer into a strong C++ programmer? Is it worth the effort?
One of the reasons I struggle with this is not just due to a C or C++ vs Java language difference, it's the fundamental skills that come with learning C or C++ that I think often get lost at the Java School. These include data structures, computational complexity, manual memory management, really everything Joel Spolsky says here.
Often, as far as I can tell, a student will have some of those fundamental skills (be able to answer a few questions), but I'll still have this large part of my mind that's extremely skeptical with how well someone can learn these skills without getting their hands dirty in some C or C++. Maybe I need to be disabused of this stereotype. Am I just being unfair?
Anyway whats your experience with turning the "Java School" programmer into a C or C++ programmer?