Difficulty

Moderately challenging

Share of students at each rating

What makes this major demanding?

Worth it?

85% would recommend it

Recommend

“… There are many job events, info sessions, and alumni chats, so you can learn how hiring works and get referrals. In Los Angeles, there are many startups and tech teams, and USC also has strong links to big companies. Many students land internships during the school year or in summer, then turn them into full time offers. Overall, USC CS feels busy and competitive, but the resources and the network make the effort worth it.”

Read full review
Anonymous studentGraduated
Recommend
Don’t recommend

“Computer science relies less on mathematics (unless you start getting into data science and machine learning) than I had originally thought. While I would choose this major again, I wouldn't recommend those future student who don't enjoy problem solving, for sometimes hours on end, to pursue computer science. Moreover, it's imperative that people learn that computer science as a major appears to be fading out (as its own career) and is more a skill. …”

Read full review
Anonymous studentSenior
Don’t recommend

1–2 of 58

Many students weren’t fully sure when they chose Computer Science.

MixedAdvice & things to know

“There are many things I wish I knew before I started CS. One of the main things is that I focused too much on academics to the point that I never made time for the more important things like leetcode, clubs, interview prep, etc and by the time I realized my mistake, two years had passed. I felt very behind my peers in that aspect and since then I have worked towards catching up with them. My advice is that get started early with things like that.”

Read full review
PositiveEnjoyment & fit
We asked: How has Computer Science prepared you for what you want to do next?

“It made me more innovative and exploratory to using ai and creating new things.”

Read full review
Anonymous studentJunior
4.0

Compare majors

Compare with Computer Science

Suggested instead

Alternatives named by students who wouldn’t recommend Computer Science.

    • Less math
    • More writing
    • Stronger career outlook
    • Stronger career outlook
    • More enjoyable
    • Heavier workload
    • More writing
    • Lighter workload

Studied together

  • Computer ScienceFinance
    2 students
  • Computer ScienceApplied Math
    1 student
  • Computer ScienceFilm and Media Studies
    1 student

Student paths

How students switch into and out of Computer Science

Switching in

14%of current students switched in (42 of 298 answers to this question)

1 dot = 1% of current students
Switching out

≈8%of those who started here left

1 dot = 1% of students who started here · est. 6–10%

Came from

Share of switchers
Computer Science17.4% double major

Went to

Share of leavers

What you will study and do

Curriculum and careers

Computer Science delves into the theory, development, and application of software and systems. Students learn programming, algorithms, data structures, and the principles of hardware design to solve complex problems.

Core course themes

Introduction to Programming

Covers fundamental programming concepts and problem-solving techniques using languages like Python or Java.

Data Structures and Algorithms

Focuses on the organization of data and the algorithms that manipulate them, crucial for efficient software development.

Operating Systems

Explores the design and function of operating systems, including processes, memory management, and file systems.

Computer Networks

Introduces the principles of computer networking, including protocols, architectures, and data transmission.

Database Management Systems

Covers the design, implementation, and management of databases, emphasizing SQL and data modeling.

Software Engineering

Examines the methodologies for designing, developing, testing, and maintaining software systems.

Common roles

  • Software Engineer
  • Data Scientist
  • Systems Analyst
  • Web Developer
  • Network Administrator

Why salary figures are not shownSalary data appears only when its source, geography, occupation mapping, and date can be verified.

Computer Science by school

Scores account for sample size
Preparing school differences…

Community

Big questions in Computer Science

Go beyond ratings and ask students about the decisions, tradeoffs, and experiences that matter to you.

Loading community questions…

Student reviews

353 reviews

Careers & next stepsMixed

Overall, I think Computer Science is a great fit if you're aiming for a high‑paying career. But what you learn in school alone — theory, algorithms, and systems — isn’t enough for today's market. Employers expect practical coding skills from day one. That’s why CS majors must be proactive—building side projects, mastering version control and DevOps tools, and studying new languages and frameworks beyond coursework.

Dracky Wei · SeniorComputer Science
Career
4.0/5
Jul 2025
Careers & next stepsPositive

As a USC CS student, I like how the program balances theory and real projects. The classes are fast paced, but they feel useful, and many courses connect to what companies use in practice. It is also easy to find a lab, a team, or a project group if you want research or hands on work. Career support is a big plus. There are many job events, info sessions, and alumni chats, so you can learn how hiring works and get referrals. In Los Angeles, there are many startups and tech teams, and USC also has strong links to big companies. Many students land internships during the school year or in summer, then turn them into full time offers. Overall, USC CS feels busy and competitive, but the resources and the network make the effort worth it.

Anonymous studentGraduated
Career
5.0/5
Mar 2026
Difficulty & workloadMixed

- In my observation, the difficulties of CS courses in UIUC could be reached at least TOP 10 throughout all colleges in the US. These courses are designed to those who are proficient in CS basis. So, be hard-working, be confident!

- The elementary-level CS courses in UIUC are usually difficult and project-based, since they also work on filtering the candidates who can transfer to CS-related majors. Yet, these courses will be much easier in 400-levels. So don't worry about any of your graduation problems - Just roll on.

- Please think about your specific future directions after graduation. Most people like to choose one of the following: becoming a software engineer, finding for a PhD in AI/Algorithms/Discrete Math (aka Theoretical CS)/etc., or doing some Quant Finance if he/she is also strong in math. Please find the relative summer research programs or internships starting from your Freshman year. Once you get a job, you don’t need to worry about money (theoretically)!

Anonymous studentSenior
Difficulty
4.0/5
Workload
5.0/5
Jul 2025
Courses & teachingMixed

The curriculum itself is really helpful for introducing programming and very theory heavy, however there aren't many courses that focus on what you'd actually be doing in the software engineering industry. Overall it's a great experience and there are outstanding professors here, but if you want to break into industry, you need to do a lot of work outside of curriculum, mainly clubs and personal projects will help you with recruiting.

Anonymous studentSophomore
Math
3.0/5
Writing
2.0/5
Apr 2026
Careers & next stepsMixed

The class quality is not bad, it's pretty good and definitely manageable. However, they have almost the bare minimum of a CS curriculum. They've recently started getting more variety of classes like computer vision and compiler construction, but it's still missing a lot of different topics like security or networking. Since Emory's not a target school, it's difficult in the job market. Emory also lacks a huge CS community or alumni network that can be helpful during recruiting. On the flip side, this means every student has a ton of opportunities to make great impact through club leadership or research labs because there's always space for more CS students. The people are great and very supportive. Essentially, it's really what you make of it and you can succeed in this field from Emory.

Switched from Biology(Biological Sciences)

Anonymous studentSenior
Career
3.0/5
Sep 2026
Careers & next stepsPositive

The most surprising aspect has been the realization that the gap between academic research and industry engineering is smaller than I thought, but the focus is fundamentally different. In industry, the goal is often "make it work, make it fast, make it reliable." In academia, the challenge is often "make it provable, make it generalizable, and make it explore the unknown." Transitioning between these two worlds—like moving from building production-grade Kubernetes agents (InfraPilot) to exploring multi-agent solutions—has shown me that the best engineers are the ones who can synthesize both perspectives

Anonymous studentGraduated
Career
4.0/5
Apr 2026
Difficulty & workloadMixed

I’m specifically a Computer Science Games major, so I have more projects and less math, which could be why I find it more manageable. The projects are more time-demanding, and there are especially a lot more group projects.

Anonymous studentFreshman
Difficulty
3.0/5
Workload
4.0/5
Oct 2025
Courses & teachingPositive

USC offers a comprehensive CS curriculum with strong core coverage (algorithms, systems, AI, machine learning, databases) and numerous electives across areas like machine learning (CS 467), cybersecurity, data science, and robotics (CS 499).

Anonymous studentJunior
Math
3.0/5
Writing
2.0/5
Jul 2025
Courses & teachingPositive

studying cs at ucla has been a lot more hands-on than I expected, especially getting into systems and low-level stuff. I’ve liked figuring out how things actually work under the hood instead of just using high-level tools. It’s been challenging, but being around people who are building cool things makes it really motivating.

Anonymous studentJunior
Math
4.0/5
Writing
3.0/5
Mar 2026
Courses & teachingMixed

At UCLA is a very theoretical major compared to other schools but it gives you a broad overview of a lot of different topics within Computer Science. More often than not I felt like I was taking classes that I honestly did not need whatsoever for my career I was planning to go into (Software Engineering), like Physics and Microprocessors and that made it difficult to stay motivated and do the work, but the classes that really applicable like Software Construction and Data Structures were fantastic. The connections are also really great here for Computer Science, everyone in the major is super smart, but you really have to fight for them and put yourself out there.

Anonymous studentSenior
Math
5.0/5
Writing
2.0/5
Mar 2026
Difficulty & workloadPositive

Machine Learning and Data Mining were some of the most demanding classes I’ve taken at Emory because understanding the math behind each model took real effort. It was rewarding to apply that work in a project where I used decision trees and random forests to predict which courses would fill up with waitlists.

  • Interested in Tech & software · Arts & media
Anonymous studentSenior
Difficulty
4.0/5
Workload
5.0/5
Oct 2026
Careers & next stepsPositive

Because computer science is in the engineering school at UCLA we are required to take heavy mathematics, physics, and electrical engineering classes. That being said, I was able to secure an internship at NASA and get internships at Amazon, IBM, TikTok because of the value and weight of my major and acknowledged course rigor. Additionally, computer science has provided me with a strong background in mathematics, computer fundamentals, and engineering concepts. It is an ABET accredited degree and I've been able to be relatively successful. It is quite stressful but alas that is what a college degree sometimes comes with.

Anonymous studentJunior
Career
4.0/5
Mar 2026
Difficulty & workloadMixed

Data structures were the hardest for me. Coming from design, AVL rotations and B-tree splits didn't click until I realized balancing a tree is a design problem: shaping a structure so it holds up under anything. GLSL shaders were similar: tough math, but it's where design and code meet.

  • Interested in Tech & software
Anonymous studentSenior
Difficulty
4.0/5
Workload
3.0/5
Oct 2026
Courses & teachingPositive

The theory-heavy classes (DSA, ML, etc.) are extremely mentally demanding, but the application classes make up for it by throwing you into real world scenarios that help stack your resume and prepare you for post-undergrad life

Anonymous studentSophomore
Math
3.0/5
Writing
4.0/5
Apr 2026
Courses & teachingPositive

Computer Science at UCLA is pretty chill all things considered. Major classes are easy to get since we have priority over other students, and typically a large percentage of class is made up of projects, so getting good grades isn't too difficult. The professors are overall somewhat interesting, and the basic classes teach good foundations for interviews.

Anonymous studentSophomore
Math
4.0/5
Writing
2.0/5
Mar 2026
338 more student reviewsJoin OpenMajors to read the rest.

Make the next decision

Compare the evidence—or improve it.

Put Computer Science beside another major, or share the experience future students need.

Compare this majorWrite a review