In my experience...
I started off as a contract student with the US DoD, which I enjoyed. I stayed there until I went to college.
At college I worked for a startup that did not pay much, which is ultimately the reason I left. The only real benefit I got there was free drinks (mountain dew)...
I worked for around five stable companies during college and did a lot of contract programming on the side.
After graduating I worked at one job for a while (with an established company) then went home where I was planning to work for a start-up that was in the running for a few years. While I was working out the deals with that startup, I got an extremely good offer from a US DoD contractor (different division than my first job, but same facility) that I couldn't resist, so I abandoned the deals with the startup and went to work the next day. About a month later, the startup was gone... bankrupt. Here I am now, with the DoD contractor enjoying my annual raises, bonuses, 401k, insurance, and intelligent co-workers.
I still do work on the side, and I'm planning to get a business off the ground in which I can gradually merge into full time.
My suggestion would be to start off with an established company, get the feel for how clients will be and what is required of you to make ends meet... get comfortable with the technologies, etc. If you really want job security, go to work for the government. If you want to focus on one thing and work in smaller teams, startups would be a good approach too. You will soon find out that companies want employees with experience, but if no one hires you because of that, how do you get the experience?
