Alright, this is something I have been trying to decide for months now. I might as well post it here and see if you guys have any insight I am missing. Basically, I have to decided what to do after I graduate this May. Here are the options:
1. Continue to work where I work now. They have offered me a full time job with a standard salary for the field. The advantages are that I would be doing something cool (cell phone development, specifically for Windows 8/Metro phones). The disadvantages are that the company is fairly small and it's a little far from where I would like to live. (Where I want to live is the Denver area, which is where most of my family is)
2. Take a different job offer for another company in the Denver area. The salary is the same as the first job. I am a little concerned I may not be doing what I want to at this job, specifically, software development. Since this company doesn't do software as their core product, unlike company 1, I am concerned I will be doing more IT (information technology) and less CS (computer science). I like the science aspect of computer science and I am afraid I may turn more into an IT person rather than a software developer at this position. (IT people normally work with databases and other information specific technologies. They can also be software developers, but it's less likely) However, the location of this company is great and they offer a lot of vacation days.
3. Go to graduate school. Where I go to school now has offered me complete funding (including room and board) for going to graduate school in computer science. It's an assistantship, which means I help professors teach class in exchange for the funding. The advantage of this is being able to actually get involved in research, which is what I really want to do. It's also basically free graduate degree. The downside is that I will be poor and I am somewhat afraid it may set my career back a few years if I don't get involved in industry right away. Additionally, I need to be sure that if I make this decision, it's because I really want to do something more scientific and not just that I am avoiding a "real job".
So what do you all think? It's a decision I am having a hard time with and I have been anguishing over it for months. It really comes down to money, location, free time, and what I want to do with my career, which are a ton of variables. I would like to not be poor anymore and also have more free time to work on personal projects. Going to grad school results in more poor college student life and not very much free time to work on personal stuff, but it is the more scientific direction I'd like to take my career. Working at the first company would allow me to do cool development, but it's not where I want to live. Working at company 2 is not what I want to do in computer science, but it is where I want to live.
Give me your opinion on the matter. I realize no one can make the decision besides me, but I'd like to hear what other people would do.
Listening to: Dr. Horrible's Sing-a-long Blog
Reading: Differential Equations
Watching: My Little Pony