Hello – After researching a number of first hand accounts from current students in top tier comp sci programs outlining how they are not enjoying their college experience, have sacrificed their entire well being (sleep), and are hopelessly unhappy, I wondered: Are there any software engineering programs that are more “balanced”/“fun” and still of high caliber such that one could still be competitive in the upper end tech market (Google/FB/etc)? Which university programs, if any, are known to have a better quality of life? Would love to explore. Not necessarily looking for an EECS degree – a BA in Comp Sci would suffice as well.
Thanks so much!
Many students do not actually know if they will enjoy doing CS before they go to college. Those who enjoy doing CS are less likely to be the ones complaining about it.
CS is not an easy major. Any place where you can skate through the program probably wouldn’t be a place worth going to. That said, I was a CS major and had plenty of time to do other things while in school. It was when I started working that work-life balance really became an issue.
CS is a tough major anywhere.
If you’re looking for a less rigorous major maybe IT or Information Systems?
In your title, you mention “software engineering” programs. Keep in mind that, while there’s some overlap, software engineering and computer science are not the same thing. Generally speaking, in my experience, software engineering is to computer science as engineering technology is to engineering. Like ET degrees, SE degrees focus on practical knowledge. On the other hand, a computer science degree is like an engineering degree in that it is primarily theoretical and involves a significant amount of math (which is why many schools have “Computer Science and Engineering” departments).
Which degree or program is right for you depends on your goals. Someone with a CS degree will have all the options available to those with an SE degree, but someone with an SE degree will not necessarily have all the opportunities as someone with a CS degree.
This might matter if you’re looking to get into a field or company that does a lot of research work where fundamental knowledge of algorithms and mathematics is important, as these companies/areas may have a heavy bias toward individuals with strong mathematical foundations. Examples include algorithm development for a variety of applications, machine learning and computer vision, robotics, high-performance computing, graphics and visualization, etc.
Outside of that, it probably won’t matter too much.
Thanks for all the helpful info. Much appreciated.
This is not always the case. In some schools, like SJSU, software engineering and computer science have similar lower level course work (including math and lower level CS courses) and significant upper level course work overlap, but software engineering has more courses focused on software engineering methodology, while computer science allows for more additional upper level topics courses. Computer science is somewhat more desirable (one overview course on software engineering methodology is probably enough in school), but it is not like software engineering is that much less technical, or that it shuts out a graduate from many software jobs.
Of course, some other school may label a less technical major “software engineering”.
Majors like IT, MIS, CIS (where the “S” is “systems” rather than “science”) typically are less technical, business-based majors that are more for those who want to manage computers and software, rather than design and develop them.