There are a couple things that my college degree never taught me:
- source control. If you're going to be in the MSFT stack, learn how to use VSS. If you'll be in the LAMP stack, then learn svn. You don't have to know how to administer them, just how to use them on a day to day basis.
- databases. Learn to write queries (select, update, insert, join, create, alter, etc.). Learn SQL Server and mysql and oracle syntax (probably not in an out, but enough to know that there is a difference).
- use cases and UML. Large companies and consultant shops will tend to produce a lot of documents. If you know some UML and are able to make use case documents, then you'll be ahead of the game.
- build and deployment. Learn (n)ant, build, make, shell script, whatever. Be able to build a piece of software and deploy it. It amazes me how many pieces of software have no automated build or deploy scripts.
The question is how do you get this knowledge. It's too late now, but you should have tried to either get an internship or a job while you were in school. Now, I would pick something that you think would make a good project and actually build it. Not just start hacking, but think about the problem and really build it. If you are going to get a corporate or consulting job, this is what you'll have to do, so get used to it :)
Pick something you're reasonably knowledgeable about and that you think that you'd want to use or someone else would.
Here's a couple good ideas: - student/employee/company directory application (I've written at least 3 employee directory apps for clients. If you could write a good one, this would be a definite way in to some places). - movie/bar/store/music/concert review webapp - twitter clone - facebook clone - cms tool (think lightweight cms) - carpool creation site
All of these can be shelled out in a couple days with RoR/Django and would give you a HUGE confidence boost and would be a great addition to a portfolio. Of course, using a framework with obscure the sql details so maybe you'll want to do it in ASP.NET with C# (VB.NET is not what you want to know if you want to be "in demand") and then do it in RoR/Django to get a feel for one vs. the other. In fact, you could make a business out of them (if they didn't suck too bad!).
I would use them as a learning tool, writing some rudimentary use cases for what you want the app to do, diagramming a bit of your preliminary design (and it will change, it always does), building a db schema, running queries, writing code and integrating with a source control system. Treat it like a job too and dedicate at least 3-4 hours a day 5 days a week to it.
I think the biggest change for full time students that don't work to handle is going from 12-15 hours a week in school to 40+ hours a week at a job. At school you have 5 times more free time than you do at a job.