5 ms·
Ask HN: Is a computer science or computer engineering degree worth it?
I'm a high school student who is fortunate enough to be in a fully-state-funded college program at his local community college. I can take as many courses I want for the next two years while I'm in high school, and the state will pay for it all.
Naturally, I'm trying to take advantage of this and beat Sally Mae to how much I can save before I have to sell my soul to it.
The only problem is that I'm indecisive as to whether a degree in computer science or computer engineering is worth it; is there a reliable job market for it that I can fall back on in hard times?
I'm currently taking 18 credits this first semester with my declared major being Biology. This was at the insistence of my parents who assured me that this degree would ensure job security for life.
I'm having second thoughts about this, especially because of the fact that this is not very appealing work or study. I would be happy to code for a living, yet am not sure whether it is a very practical move on my part.
Advice?
- _pius 17y agoThe only problem is that I'm indecisive as to whether a degree in computer science or computer engineering is worth it; is there a reliable job market for it that I can fall back on in hard times? In my experience, definitely. I've never had a hard time finding work as someone with a computer science degree. Also, computer science is one of the few degrees that, along with relevant experience, makes it very easy to do lucrative, independent contracting work right out of school. That's something that practically no other science, engineering, or humanities discipline can give you.
- makecheck 17y agoAt least a BSc. is a very good idea (I have computer engineering), but I would definitely back it up with experience, too. For example, try to make some open-source thing in your spare time, or write a web site, or tinker with electronics in your garage, while you go to school. Definitely do internships, every summer at someplace new. Do not mow lawns, talk to companies and get a 4-month commitment to do something cool. Failing that, talk to professors and see if you can help with their projects over the summer. Engineering degrees open you up to jobs across the spectrum: software architecture, CAD tools, embedded systems, circuit design, logic design, power, and so forth. What's more, even if these better jobs aren't available in a bad economy, you are also qualified to do jobs that are "just" programming, which is a nice safety net. Sometimes, "any" engineering degree is enough, it shows you have discipline and can handle responsibility. For instance, I've seen civil, mechanical and chemical engineers in places I wouldn't expect. So pursue what most interests you. The degree programs cover topics that are favorites for interview questions. For example, many people ask about algorithms, and while you could buy a book on them or examine existing software projects, the computer science courses will really teach them to you well.
- wisty 17y agoBiology? That's fantastic. I'm not sure if it's as secure as CS / CE, but it's a lovely degree. Look into Bioinformatics - where all the cool research is being done. It requires programming (especially numerical algorithms and visualization), math (especially statistics), and biology. That's a nice mix for somebody who can't make up their mind. If worst comes to worst, you might get a job modeling health programs for the government, or insurance companies.
- bbgm 17y agoWith exceptions, you will not get a job doing algo development or hard core informatics without a PhD. You do have the choice of doing a CS degree and working in the life science space (there is a dearth of good application developers)
- CyberFonic 17y agoWhilst you can learn programming from a book, you can't learn software engineering from a book. The difference is like being able to build a dog kennel in the backyard or a forty story skyscraper. It takes serious knowledge and experience to build the skyscraper. If you get the kennel wrong, the dog will continue to sleep on your couch/bed, get the skyscraper wrong and ... If you don't have a passion for biology, then you might not enjoy it as a career. However, college experience and corporate experiences are very different. My vote for an engineering education is that it teaches you to be aware of how little you know and how much work it takes to increase your knowledge and experience just a little bit.
- jamesbritt 17y ago"Whilst you can learn programming from a book, you can't learn software engineering from a book." I have a CS degree, and I'm not so sure I learned software engineering in school. But I still think my time and money were well spent. I did learn a good deal of math and theory that has, over time, informed my progress as a developer. I was also exposed to things that helped me learn what I don't want to do as a career. I learned to be better writer, too, thanks to some kick-ass English profs. (No thanks to the guidance consoler who was against my minoring in tech writing, though.) BTW, I started off as EE, but didn't care for the abundance of physics courses (the math was kicking my butt). I was required to take an intro programming class, and that made me change majors. Why fight with the facts of the real world when software gives you your own opinionated reality? :) So, you never know ...
- omouse 17y agoGet a computer science degree. There should be almost no difference between the two aside from maybe more hardware things on the engineering side. Just remember that computer scientists used to build their own machines, compilers, etc. They were flexible in terms of what they worked on and you can be too. You just have a lot of reading and work to do (but that's true no matter what degree you go for...if you don't put in much effort, you won't get much out of it)
- rolf_nelson 17y agoIf you care about salary in addition to job security, the chart on p. 16 of this OOQ makes a good case that a computer science degree is a defensibly practical choice: http://www.bls.gov/opub/ooq/2008/summer/art02.pdf http://www.bls.gov/opub/ooq/2008/summer/art02.pdf
- bavcyc 17y agoAny major with lots of math will have a better payoff than one without math. As an engineer I can do what a computer scientist does but a computer scientist can not perform all engineering functions (specifically the case of work requiring professional registration). With that said, what do you like to do? Find a way to make that your major. If you like programming, then major in programming. If you like hardware and software then computer engineering. If you like hardware then electrical engineering. If you like rocks then study Geology. The key thing is to learn to learn, to do research and solve problems. I chose EE as it provided the most long-term flexibility. Although I'm working in a 'static' area of EE (power engineering), I use a lot of computer programming knowledge in solving problems that I run into. Other than working for yourself, there is no guarantee that you will ever have a job or that your abilities will land you a job (Jack Gansle has a good column on this). As such you are much better off focusing on learning as much as you can that will help you to continue learning which should give you more options as time passes.
- iterationx 17y agoI can't think of a degree that's more resilient to hard economic times than a programming degree. That being said you should look at the job boards now and decide what kind of work you want. For example a lot of .NET jobs want 2 years ASP.net. So if that's your cup of tea then get started programming ASP.NET sites now, and in two years it should be a piece of cake.