Remember it is not about HOW WELL you know the language (either C, C++,
Java, VB, or anything..), it's all about :
HOW GOOD IS YOUR PROBLEM-SOLVING SKILLS.
Eventhough you know all languages, all the syntax and tricks, but if you
can't derive an algorithm from a problem, then you are NO USE
(although you might be successful as an entry-level programmer ONLY).
edit : If you think you are good programmer, try solve this
ACM problem set (there
are around 700 problems there).
My friend thought he is good at programming, until he try
to solve one of the problems there, took him about 1-2 weeks
to solve one problem (they are not complicated, its about
1 page of code, but require lots of thinking).
A good programmer should be able to solve one and finish
writing the program in about 1 hour or less in total