ranking and rating every class i took at uc berkeley
· 2 min read · uc berkeley, course reviews, academics
During my four years at UC Berkeley studying Computer Science & Data Science, I took over 20 rigorous technical courses spanning software systems, machine learning theory, data engineering pipelines, advanced probability, and physics.
Berkeley courses have a notorious reputation for intense problem sets, massive 40-hour projects, and brutal exams. Now that I've graduated (Class of 2026, 3.70 GPA), I wanted to look back and give an honest, unvarnished review and rating of every single class I completed—including difficulty, workload, key takeaways, and whether they were worth the grind.
Quick Summary Matrix
Here is the breakdown across all courses grouped and ordered as in my academics section:
| Category | Course | Title | Rating | Difficulty | Workload |
|---|---|---|---|---|---|
| Computer Science | CS 61A | Structure & Interpretation of Programs | 9/10 | 7/10 | 8/10 |
| CS 61B | Data Structures | 10/10 | 9/10 | 9/10 | |
| CS 61C | Computer Architecture | 8/10 | 7/10 | 8/10 | |
| CS 161 | Computer Security | 8/10 | 7/10 | 9/10 | |
| CS 162 | Operating Systems & Systems Programming | 9/10 | 9/10 | 8/10 | |
| CS 170 | Algorithms & Intractable Problems | 10/10 | 10/10 | 8/10 | |
| CS 186 | Database Systems | 9/10 | 8/10 | 7/10 | |
| CS 188 | Artificial Intelligence | 7/10 | 6/10 | 6/10 | |
| CS 189 | Machine Learning | 10/10 | 10/10 | 10/10 | |
| CS 198 | Web Development DeCal | 5/10 | 2/10 | 2/10 | |
| Data Science | DATA 8 | Foundations of Data Science | 8/10 | 4/10 | 5/10 |
| DATA 100 | Principles of Data Science | 10/10 | 6/10 | 7/10 | |
| DATA C101 | Data Engineering | 9/10 | 7/10 | 7/10 | |
| DATA C104 | Human Contexts & Ethics of Data | 4/10 | 5/10 | 8/10 | |
| DATA 140 | Probability for Data Science | 7/10 | 10/10 | 8/10 | |
| Engineering & Analytics | EECS 127 | Optimization Models in Engineering | 7/10 | 10/10 | 8/10 |
| INFO 159 | Natural Language Processing | 10/10 | 7/10 | 7/10 | |
| IEOR 162 | Linear Programming & Network Flows | 5/10 | 6/10 | 6/10 | |
| Physics | PHYSICS 7A | Mechanics & Waves | 7/10 | 8/10 | 7/10 |
| PHYSICS 7B | Electricity, Magnetism & Thermodynamics | 7/10 | 10/10 | 7/10 | |
| PHYSICS 7C | Waves, Optics, Relativity & Quantum | 10/10 | 8/10 | 7/10 |
Top 5 Recommendations for Cal CS/DS Students
- CS 170 (Algorithms): Do not graduate without taking this. Essential for developing structured problem-solving intuition and succeeding in technical interviews. Even if you can learn yourself, makes life easier by starting somewhere.
- CS 189 (Introduction to ML): Getting your foot through the door, learning the basics in today's age.
- DATA C101 (Data Engineering): Hands-on experience with modern big data pipelines (Spark, streaming, distributed architectures).
- DATA 140 (Probability): The best math/probability course offered at Berkeley (there are alternatives).
- DATA 100 (Data Science): The class I actually learned and enjoyed taking the most.
Overall, the Berkeley curriculum pushed me beyond what I thought I was capable of. The combination of deep theoretical rigor with large-scale systems implementation gave me the confidence to design, debug, and ship complex software in any domain. But learning in school is barely enough for real job applications and interviews. You have to network through clubs, hackathons, research, etc. But overall, Berkeley was an amazing experience that I would not trade for anything.