Graduating Early/Work/Graduate School in CS

<p>Hey,</p>

<p>I'm currently in my 4th semester at Berkeley majoring in EECS. I have about 4 more classes to go to graduate, but I'm not sure if its a good idea to graduate next semester (after only 5 semesters in college). My GPA isn't very high (around 3.3), and I have no research experience. I don't even have a great relationship with professors, they don't know who I am. But, I've managed to secure an internship as a developer last summer at a very good company, and I'm continuing with them again this summer.</p>

<p>My question, should I graduate early and apply for grad school? If I do, what are the chances that I could go to a higher tier school (CMU, Columbia, Cornell, Stanford)?</p>

<p>My other options are to graduate early, work for two years, and the apply to graduate school or just continue in college in the hope that my GPA will go up and that I could do research,etc. I'm just not sure what to do at this point =/</p>

<p>Thanks for the help.</p>