Post Migrated Here from stackoverflow.com
1 Post Made Community Wiki
source | link

Your question is very good, and it is the real life scenario for many just examined students. I also just graduated and during my entire time of the education, I felt the school gave me to little valuable knowledge, and to much pointless information.

The thing with college is that it does not have time to give you a very deep knowledge. In most of the courses, you only have time to focus on the foundations of one specific area inside the are of the area (yes, it's that fluffy). The approach is either that, or just try to give the students an overall knowledge about the area (this is of course different depending on the degree of difficulty for the course).

Myself had the luck to get a development job just after graduation. Many felt this was unfair, because I'm not an incredible programmer. I know the basics, and I know some area a bit deeper. What I generally think I'm good at and that people should be is HOW to get the knowledge. According to me, this is the most important knowledge school gave me. Like many says, you can't know everything. What matters is that you in the end do know what you are suppose to know. Therefor, knowing how to achieve the required knowledge is much more important, than in fact knowing it from the beginning.

One thing that shouldn't be underestimated is the value of social skills. You can be a really good programmer, but socially handicapped. You do not know how to promote yourself, or work together with people. Specifically the last thing, work together with people. In a project, you are (most of the time) forced to work with people. If you have big problems with this and actually got the job, you will probably have a hard time staying there.

Very interesting subject!