91Ě˝»¨

The Best Computer Science Undergraduate Programs in the United States

Potential careers for computer scientists include becoming an analyst or scientist of computer research, a software engineer/developer, a database administrator, or a computer network architect. Computer scientists are skilled at every aspect of computer communication, which means they can create frameworks to solve software issues via research, development, or a combination of the two.

The following 10 schools have unique Computer Science programs and an abundance of research and post-graduation opportunities.


  1. If you are a student interested in computer science, and particularly in the science and programming aspects, but not engineering, then the BA in Computer Science at UC, Berkeley is exactly your speed. The program is taught within the Electrical Engineering and Computer Sciences department but is different than their BS in Computer Engineering offering in that you will receive your degree from the College of Letters & Sciences. Coursework focuses on information processing, hardware & software design, and applications and has a strong liberal arts and sciences backbone. In addition to all of the lower division requirements of the CS major, students must complete 36 upper division units, and 6 of them must be outside of your major’s department.


  2. The undergraduate major in Computer Science program is housed within the Department of Computing and Mathematics. The program serves as an introduction to the practical mathematical foundations and theories of the computer science discipline with a set of “core” courses. Students then choose one of the following upper-level tracks to take a series of courses in and expand their knowledge and expertise: algorithms and complexity; algorithmic economics; biocomputes; graphics; machine learning & artificial intelligence; networks & distributed systems; robotics & control; and systems. Students finish their work with a capstone project sequence their senior year. Computer science is the most popular major at Caltech.


  3. The College of Computing offers a BS in Computer Science that is world-renowned. Georgia Tech’s “” curriculum gives students the opportunity to customize their computing curriculum so that they can focus on which computer science subjects they are most interested in along with other concentrations that make for a compelling and unique curriculum. The 8 “threads” to choose from are: devices; info internetworks; intelligence; media; modeling & simulation; people; systems & architecture; and theory. Each thread has three clear aspects: early preparation (foundational concepts), knowledge goals (big-picture theoretical deliverables and understanding), and skill outcome (practical knowledge required of computing students).


  4. CM’s School of Computer Science offers two BS degrees that incorporate computer science. The first is a BS in Computer Science: students receive a foundational knowledge in the principles of computer science and then choose a required minor in a second subject. The second degree, a BCSA in Computer Science and Arts, is what makes this school truly stand out. This degree is ideal for students who are interested in combining technology and the benefits of The College of Fine Arts in their undergraduate education. Some examples of this are game design, computer animation, recording technologies, robotic art, and many others. Along with your computer science focus, students choose an arts concentration from either the architecture, art, design, drama, or music school at CM. Students who pursue this degree option have the benefit of extensive advising to help guide them through the program.


  5. Students can earn their AB (Bachelor of Arts) in Computer Science through the John A. Paulson School of Engineering and Applied Sciences. Harvard’s approach to computer science is slightly more theoretical than other programs. In addition to being able to choose one of the core requirements to focus on, students are encouraged to pursue a secondary field of focus. Students interested in combining an interest in neuroscience and cognition and computer science can do so by pursuing The Mind, Brain, and Behavior Program, a special honors program affiliated with Harvard’s Mind, Brain, and Behavior Institute. There are similar programs that students can pursue in partner with Anthropology, History and Science, Human Evolutionary Biology, Linguistics, Neurobiology, Philosophy, and Psychology departments.


  6. Outside of the core requirements of all students pursuing their BS in Computer Science, students at Stanford choose from 10 degree tracks: artificial intelligence; biocomputation; computer engineering; graphics; human-computer interaction; information; systems; theory; unspecialized; individually designed. The latter two make Stanford’s program particularly unique, in that you are allowed to take a course in the majority of the tracks to get a full understanding of the field or you are able to propose a track consisting of a minimum of 7 courses, 4 of which need to be taught at an advanced level.


  7. There are two Computer Science degrees offered at University of Michigan-Ann Arbor. The is offered through the engineering school and is a BSE (Bachelor of Science Engineering). The , a BS in Computer Science, is offered through the College of Literature, Science, and the Arts. The program requirements are nearly identical in that there are the same core requirements, a similar senior capstone “Major Design Experience” and technical electives, and identical upper level course requirements. The difference is in the general requirements that are required of students who are enrolled in LSA and those who are enrolled in the engineering school. LSA requires 120 credits vs. the engineering school’s 128 credit requirements. It is also easier to double-major with other LSA departments through the LSA program and similarly easier to earn a dual-degree with other engineering programs through the BSE program. It truly depends on which school offers more of what you’re interested in focusing on.


  8. The Department of Computer Science at Yale offers three degree paths: a BS, a BA or a combined BS/MS in Computer Science. Students can additionally easily pursue joint majors with the Electrical Engineering (circuits, programming, continuous math), Math (algorithm design and analysis, computational theory), and Psychology (artificial intelligence, cognitive science, biological perception) departments. The BS option is ideal for students who want to pursue computing, technical management, or consulting after graduation. The BA option is suited to students who have interests in the humanities and desire the flexibility to explore those fields. That said, Yale’s emphasis on the importance of a liberal education results in a CS program with fewer required courses than many other comparable programs. Yale encourages its students to pursue courses in other fields, like music or political science. The computer science education facility is open 24/7/365 to give students unlimited access to critical resources.


  9. UVA’s Department of Computer Science offers students the opportunity to pursue a BS in Computer Science through the School of Engineering and Applied Sciences (SEAS) or a BA in Computer Science through the College of Liberal Arts and Sciences (CLAS). The differences lie in the core course: pursuing your BS means that you will take all of the core courses required of every other engineering degree in the school—introduction of engineering, physics, calculus, and chemistry and >=5 courses in the humanities. 46 computer science credits must be completed. Pursuing your BA requires that you complete the core requirements of all other degrees in the CLAS, including foreign language, history, writing, humanities, non-western perspective, etc. Then, 27 computer science credits must be completed, along with 12 additional credits consisting of computing-related courses taken outside of the CS department. Both degrees have significant benefits and result in competitive employment opportunities.


  10. The Engineering Department at UCLA has two degrees: a BS in Computer Science and a BS in Computer Science & Engineering (CS&E). The CS&E degree is ideal for students who want to pursue their interests in both computer science and computer system hardware, whereas the BS in Computer Science delves deep into computer science alone. As the largest university on this list, UCLA has an immense amount of resources for undergraduates to utilize. UCLA offers over 12 research laboratories, including the Cognitive Systems Laboratory, which is dedicated to the study and development of computer systems that imitate human reasoning. Other laboratory work is being done on topics like multimedia computer communications, computer graphics, bioinformatics, artificial intelligence, distributed sensor networks, and more.

Computer science is one of the broadest and most relevant fields today. It’s never too early to start reading relevant books on the topic of computer science or beginning to learn the basics by taking online courses. With this summer coming up quickly, we know a lot of programs that could be great if you’re interested in computer science. More than anything, you want to get your college list together. If you’re thinking about computer science, you need to really know the difference between programs so you find the right fit.