Computer science is the exploration, design and innovation of computing. Computer science is responsible for the tools we use daily, like web search, email, social networks and databases, as well as advanced systems like robots, driverless cars and modern aviation. All engineering, scientific, business and social science disciplines depend on different areas within computer science, and it has been and will continue to be the driving force behind many emerging fields.
Blending innovative research with exceptional educational programs, Carnegie Mellon University in Qatar provides students with both the theoretical foundations and the practical experience necessary for success in a wide range of fields.
Carnegie Mellon University in Qatar follows the curriculum for Carnegie Mellon University’s School of Computer Science, which is recognized as a world leader in different areas of computer science education. Students in the Computer Science Program acquire skills that transcend technological trends. The program encourages creativity and provides the fundamental skills to develop new technologies.
The Computer Science Program provides students with a core set of skills: mathematical reasoning, algorithmic thinking, and the fundamentals of programming. Students also gain substantial depth in a different field through a minor in a second discipline. As computing has strong links to many other fields, this provides students with unparalleled flexibility to pursue their interests.
The theoretical component of the computer science curriculum ensures that students have the formal tools to remain current as technologies change. Students also gain insight into the practical issues of building and maintaining systems by participating in intensive project-oriented courses.
Big Data and Machine Learning
In this data-driven world, many applications, businesses, and scientific disciplines must collect, store, clean and analyze massive amounts of data to extract critical information. Students learn machine learning techniques to extract information, create large-scale database management systems, and leverage cloud systems and architectures to process this information.
Robust and Secure Systems
A critical area in our fully connected world is ensuring that operations are secure, data maintains its integrity and resources and systems are available when they are needed. For effective collaboration among many devices in various settings, students must have a solid understanding of the system software, including device operating systems, networked systems and protocols, and fundamental distributed systems challenges.
Robotics and Artificial Intelligence
Many traditional roles and jobs are being automated and delegated so they can be more efficiently, effectively, and safely conducted by robots or intelligent software systems. Different areas of computing merge to enable applications that range from large-scale industrial automated factories, to robots navigating dangerous disaster areas, to driverless vehicles that can operate more safely.
Cutting-Edge Applications
Many applications have become so popular that they are now sub-disciplines within the world of computer science. These include web applications, natural language processing that enables human to machine communication and automated translation, and computational biology that uses the power of computer science to analyze and understand different biological systems.
Theory and Logic
Knowing how to program is the first step; knowing how to program well is the next challenge. The theory and logic courses at CMU-Q explore areas such as sequential and parallel algorithms, complexity, languages and automata and graph theory. Students with a strong foundation in these concepts can answer questions like: How do you know your program solves the problem? How do you know it finishes within a reasonable amount of time? If the problem is framed differently, can you use well-known and studied algorithms and data-structures?
Programming Paradigms
Programming is our way of communicating with computers and thus a basic tool for every computer scientist. At CMU-Q, students learn how to program imperative, functional and object-oriented paradigms, with emphasis on proving programs correct. To better develop certain solutions, students may study how to design and implement their own programming languages.
Cutting Edge Research
Exposure to cutting-edge research is critical for our computer science students. As undergraduates, they learn to tackle real-world problems by developing practical, efficient and novel solutions. Students at CMU-Q have many opportunities to engage in research: they have the option of a senior thesis project, independent study guided by a faculty mentor, or internships with one of the CMU-Q research groups.