Doubts about Computer Science major.

Hello,

I just transferred to University of Maryland College park (UMD). I’v been thinking for about a year now of getting a computer science major. I really like it and I know I can do it as I am really passionate about it.

Problem is I can become very paranoid. From time to time I believe that the computer science major won’t pay well or is very hard to get a job. I have done a lot of research and have seen that it indeed it is a good major but from time I see people saying bad things about it which makes me doubt.

I am here just to ask people that are either studying computer science major or has one, about their experience and what they think. Also I am in summer visiting my parents but once I am back in the USA I would like to get ahead before school starts. So I am wondering what can I study to get ahead before my semester starts. As this will be my start to Computer science after my first semester of studying I will be looking for a internship, what kind of internships will benefit me?

TLDR:

  1. After first semester ill be getting a internship. So what kind of internships are recommended or good for a computer science major?
  2. People studying computer science or with a degree, what do you think about the major? Job, pay and fun? What jobs can I get with the major after college?
  3. What can I do to get ahead before the semester starts? Things to learn? Books to buy? Anything to get me started.

I really appreciate the people that answer. Thanks a lot.

  1. After just one semester without any prior experience, you probably are not ready for an internship, or at the very least will struggle a bit more ti find one - you need more experience than that to be useful at most places - at the very least a full year.
  2. As far as the what, nearly all jobs (and internships) are software development, data analytics and the like. There's also some other research fields, but you'll need upper-level electives and more experience again to get those.

The job pays well for now and most will agree the foreseeable future - no one can predict the future, though. If you are heavily about the money and its the reason you’re doing CS, I would strongly advise against it. CS is terribly boring and uninteresting to some while it’s incredibly rewarding for others. If you don’t truly enjoy it, it will be hard to be fulfilled by a career in CS.

  1. Trying to teach yourself CS, especially in such a short period of time, can often do more harm than good if you pick up bad practices and habits. I would say wait until you get to school since it's only a few months.

If you really want to get a simple intro, check out codeacademy - I would recommend Python. It will give you a quick idea of CS. I believe once you get to school, UMD uses Java as its starter language.


How do you know that you like CS and have a passion for it? Have you self-taught yourself at all? Tried it once in a class?

PengsPhils, first of all thanks a lot for the response.

Regarding the internship I will definitely think about it well before I look for a internship maybe after my first year as you mentioned. Ill definitely try to talk to counsellors/professors in school about this also.

I am not picking CS for money as the primary reason at all, I am just looking for a major that will allow me to get a job and pay me well enough to live a standard life. Enough to travel, live in a nice apartment and allow me to buy me gadgets from time to time haha. I am a pretty simple guy. Basically stability is what I am looking for. Around 80k (early to mid) to 120k(later career) is what I want in an ideal world.

I understand what you mean when you say I should wait till school starts instead of starting by myself. I guess ill just mostly wait and enjoy the holidays after such a long and hard semester haha. I will use code academy in my free time in order to see how it all works.

In regards to how I have a passion for CS, well since I was small I always spent a lot of time with computers. Built my own gaming rig and ever since I built that rig I have a deep interest in how it all works, in how when I click something something else happens. I really want to learn to be able to do it, I might be wrong and I guess I will know during my first semester of school.

A follow up question:

So once I have my degree what jobs will I be able to do? I also heard that CS majors have a pretty good starting salary jobs and also that there is a lot of demand. Is this true?

Once I have my bachelors I wanna get a job of course so I can stop being a dependant. But I really wanna get a masters after my bachelors. What masters do you recommend? Would you recommend a CS student to get a masters?

Thanks a lot again.

I do caution that a love for computers doesn’t always translate to CS - If you are interested in hardware, then computer or electrical engineering would probably be a better route. As for CS, it’s very problem-solving and math based. Your first semester will be really the time to decide if you enjoy it, so you’ll have to wait until then.

As far as jobs, I think my last post covered that - software development, data analytics, software management, research fields and academia would be a slightly more comprehensive list.

Yes, CS has very good job prospects right now. A lot of that can be answered by google. The national average starting salary for CS is around 60K, varying most in tech hubs and high cost of living cities.

Most people in CS don’t go to grad school, and if they do, they do it while working and their company pays for it. Why do you really want to go to grad school?

I want to go to grad school because doing research I found that a masters will make me more attractive to companies and also will probably end up with a higher pay. Also I learnt from my family, my brother didn’t do his masters until he was 40 and he told me its better to do it after bachelors(he did finance). Yes of course once I get my degree I will be looking for a job, once I get my job I will search for a masters. Problems is I am not sure what to get it in? Or is this something I should decide later on?

Also quick question:

What laptop do you recommend? I am waiting for the new macbook pro 2016. I did research and people are divided but the end conclusion i got is that it docent matter.

Once again thanks again for the response.

Overall, a masters degree won’t be too much of a boost - if you do a full masters program after a BS, the difference in experience of someone with a BS could even completely offset the pay of a CS masters degree. If you must get a masters, look into combined BS/MS programs.

The value of a masters varies a lot by the field - just because it mattered for your brother in finance does not mean it will for CS.

If you aren’t getting a masters in CS or a related field, how will that add anything significant to your salary? If the goal is to be attractive for more pay, a masters in another field would be a bit of an odd choice.

As far as laptops, it really doesn’t matter too much. I personally prefer Mac, so if you’re comfortable with that, go for it. The only important thing is that you get a lot of RAM (minimum 8GB, 16GB recommended).

Don’t worry about money. There will be more demand for CS majors than there will EVER be supply. Those with computer science related jobs are the 2nd most happy people with their professions. There are a ton of books and resources online to get you started, you will have no problem looking. So many that you can learn coding without even going to school.

I did my masters 8 years after undergrad. Admission requirements are more relaxed for experienced engineers. If you have a nice tuition reimbursement check coming from your employer?..many grad programs will take you without a GRE.

Don’t worry about the masters at all right now. And if you include info systems jobs (supporting computer systems for businesses) and consulting in the job pool, it is even bigger.

Computer fields are very much a “what can you do” field, not so much what degree do you have (which is why you should not worry about the masters right now). It is also a field where you will constantly learn new things, and you want to keep building new skills to stay relevant. But that is not hard to do if you want to – MOOCs, code academies, books, training your employer covers all will help.

I’d suggest you do something online to start learning Python or Java this summer. Having a jump on language syntax and a little experience will give you a leg up in the fall.