9 answers
Asked
725 views
What is a computer science degree?
I’m a current high school junior taking AP Computer Science A, because I’m interested in majoring computer science. But what courses do you take for a computer science degree? Is it just coding classes? And in what language?
With all of this, what jobs can you get with a bachelors degree in computer science?
Login to comment
9 answers
Updated
Doc’s Answer
Yenifer computer science is a major for problem solvers who want to learn how to use computers and computational processes to build websites, program robots, mine data and more. As a computer science major you'll gain experience with the theory and practice of computer science as you explore algorithms, programming languages and operating systems, for example. Computer science incorporates hardware, software, and computer theory, as well as more advanced topics like architecture, networks, databases, artificial intelligence, graphics, and even computer game design. You’ll also learn a ton of tech-related acronyms: MS, IT, OS, TCP/IP, HTML, and these acronyms are always changing. If you enjoy computers and can keep up with rapid advancements in technology, then you’re probably a good fit for the computer science major.
The time has arguably never been better to pursue a career in computer science. There is a high demand for those working in the sector, which is likely to increase. Moreover, there is a need for computer scientists in various fields.
SOFTWARE DEVELOPER — Software Developers are tasked with creating and developing websites, programs, and other applications that run on computers or other devices.
WEB DEVELOPER — Web Developers are programmers that are concentrated on coding, designing, and building out the layout of a website.
UX DESIGNER — UX Designers are in charge of creating significant and relevant experiences for users of a particular product or platform. They’re part of the reason why you love your favorite apps and their interfaces.
MOBILE APP DEVELOPER — Mobile App Developers are similar to Web Developers, except their area of expertise is creating, coding, and testing for mobile applications.
SYSTEMS ARCHITECT — Systems Architects analyze a company holistically and figure out how to bring the best possible IT strategy for their department’s goals. They define and design the architecture of said system to create the highest quality experience possible.
AI ENGINEER — AI (Artificial Intelligence) Engineers create, test, and develop computer systems with a goal of mimicking human intelligence in said systems.
HARDWARE ENGINEER — Computer Hardware Engineers are responsible for designing, researching, developing, and building computer systems and components like chips, memory devices, and circuit boards.
VIDEO GAME DEVELOPER — These developers are the coding heroes behind the games you play in your free time. They code on various systems and conceptualize with other developers to create playable games.
The computer science major requires hard work and patience, and it can take some getting used to. But if you enjoy exploring computers, technology, and mathematics, you may find that you’re passionate about computer science—and that you’re definitely up to the challenge Yenifer.
The time has arguably never been better to pursue a career in computer science. There is a high demand for those working in the sector, which is likely to increase. Moreover, there is a need for computer scientists in various fields.
SOFTWARE DEVELOPER — Software Developers are tasked with creating and developing websites, programs, and other applications that run on computers or other devices.
WEB DEVELOPER — Web Developers are programmers that are concentrated on coding, designing, and building out the layout of a website.
UX DESIGNER — UX Designers are in charge of creating significant and relevant experiences for users of a particular product or platform. They’re part of the reason why you love your favorite apps and their interfaces.
MOBILE APP DEVELOPER — Mobile App Developers are similar to Web Developers, except their area of expertise is creating, coding, and testing for mobile applications.
SYSTEMS ARCHITECT — Systems Architects analyze a company holistically and figure out how to bring the best possible IT strategy for their department’s goals. They define and design the architecture of said system to create the highest quality experience possible.
AI ENGINEER — AI (Artificial Intelligence) Engineers create, test, and develop computer systems with a goal of mimicking human intelligence in said systems.
HARDWARE ENGINEER — Computer Hardware Engineers are responsible for designing, researching, developing, and building computer systems and components like chips, memory devices, and circuit boards.
VIDEO GAME DEVELOPER — These developers are the coding heroes behind the games you play in your free time. They code on various systems and conceptualize with other developers to create playable games.
The computer science major requires hard work and patience, and it can take some getting used to. But if you enjoy exploring computers, technology, and mathematics, you may find that you’re passionate about computer science—and that you’re definitely up to the challenge Yenifer.
Houcine Lakhchach
Career Development Specialist | U.S Department exchange Alumnus | EFL/ESL trainer | Program manager
139
Answers
Updated
Houcine’s Answer
A computer science degree is an academic program that provides students with a comprehensive understanding of computer systems, programming languages, algorithms, and the theoretical foundations of computing. It encompasses a range of topics beyond coding, exploring areas such as software development, algorithms, data structures, artificial intelligence, computer networks, cybersecurity, and more.
While the specific courses may vary among universities, a typical computer science degree includes:
Introduction to Programming: Usually taught in a language like Python, Java, or C++, this course focuses on the fundamentals of coding and problem-solving.
Data Structures and Algorithms: Covers the design and analysis of algorithms, emphasizing efficiency, and explores various data structures such as arrays, linked lists, trees, and graphs.
Computer Organization and Architecture: Examines the hardware components of computers and how they interact, including topics like processor architecture and memory systems.
Operating Systems: Explores the principles behind operating systems, including process management, memory management, and file systems.
Database Systems: Introduces the design and implementation of databases, covering concepts like normalization, SQL, and database management systems.
Software Engineering: Focuses on the software development life cycle, project management, and collaborative development practices.
Artificial Intelligence and Machine Learning: Explores the principles and applications of AI and machine learning, including algorithms for pattern recognition and decision-making.
Computer Networks: Covers the design and functioning of computer networks, including protocols, data transmission, and network security.
Cybersecurity: Addresses principles and techniques for securing computer systems and networks from cyber threats.
Web Development: Teaches the principles of building dynamic and interactive websites, often covering front-end and back-end development.
With a bachelor's degree in computer science, you can pursue various jobs in the technology industry, including:
Software Developer/Engineer: Design and develop software applications for various platforms.
Data Scientist/Analyst: Analyze and interpret complex data sets to inform business decision-making.
Systems Analyst: Evaluate and improve computer systems for organizations to meet their business requirements.
Network Administrator: Manage and maintain computer networks within an organization.
Cybersecurity Analyst: Protect computer systems and networks from security breaches and cyber threats.
Database Administrator: Design, implement, and manage databases to store and organize data efficiently.
Artificial Intelligence/Machine Learning Engineer: Develop AI and machine learning algorithms and applications.
Web Developer: Build and maintain websites, focusing on both front-end and back-end development.
The field of computer science offers diverse career paths, and the skills acquired during your degree can be applied across various industries, including finance, healthcare, entertainment, and more.
While the specific courses may vary among universities, a typical computer science degree includes:
Introduction to Programming: Usually taught in a language like Python, Java, or C++, this course focuses on the fundamentals of coding and problem-solving.
Data Structures and Algorithms: Covers the design and analysis of algorithms, emphasizing efficiency, and explores various data structures such as arrays, linked lists, trees, and graphs.
Computer Organization and Architecture: Examines the hardware components of computers and how they interact, including topics like processor architecture and memory systems.
Operating Systems: Explores the principles behind operating systems, including process management, memory management, and file systems.
Database Systems: Introduces the design and implementation of databases, covering concepts like normalization, SQL, and database management systems.
Software Engineering: Focuses on the software development life cycle, project management, and collaborative development practices.
Artificial Intelligence and Machine Learning: Explores the principles and applications of AI and machine learning, including algorithms for pattern recognition and decision-making.
Computer Networks: Covers the design and functioning of computer networks, including protocols, data transmission, and network security.
Cybersecurity: Addresses principles and techniques for securing computer systems and networks from cyber threats.
Web Development: Teaches the principles of building dynamic and interactive websites, often covering front-end and back-end development.
With a bachelor's degree in computer science, you can pursue various jobs in the technology industry, including:
Software Developer/Engineer: Design and develop software applications for various platforms.
Data Scientist/Analyst: Analyze and interpret complex data sets to inform business decision-making.
Systems Analyst: Evaluate and improve computer systems for organizations to meet their business requirements.
Network Administrator: Manage and maintain computer networks within an organization.
Cybersecurity Analyst: Protect computer systems and networks from security breaches and cyber threats.
Database Administrator: Design, implement, and manage databases to store and organize data efficiently.
Artificial Intelligence/Machine Learning Engineer: Develop AI and machine learning algorithms and applications.
Web Developer: Build and maintain websites, focusing on both front-end and back-end development.
The field of computer science offers diverse career paths, and the skills acquired during your degree can be applied across various industries, including finance, healthcare, entertainment, and more.
Updated
Dr. Drew’s Answer
That's a fantastic question! In a Computer Science course, you're pretty much guaranteed to dive into the world of coding. The specific language you'll learn can vary based on the school and the course, but you'll often see Python, Java, and C/C++ in the mix. Different languages excel at different tasks, so don't be surprised if you end up learning a few of them across different courses. To find out which language a course uses, just check out the course description provided by the school.
Coding is a key part of most curriculum because it sharpens your logic and reasoning skills, which are vital for any Computer Science career.
You can expect to take core courses like 'Intro to Computer Science' and 'Data Structures'. Most institutions also offer, or even mandate, additional courses like 'Operating Systems' and 'Data Structures'. But there's more to Computer Science than just coding. Before you apply, take a good look at the school's course offerings. Some schools might specialize in areas like Game Design, Networking, Web Development, Database Design, Cybersecurity, or Machine Learning/Artificial Intelligence.
You might also have the chance to choose electives like 'History of Game Development', 'Compiler Design', 'Linux', 'Technology Leadership', 'Cryptography', 'Big Data', or 'Computer Architecture'. If you're unsure about the area you want to specialize in, don't worry! You'll likely have a clearer idea once you've completed a few courses.
In a nutshell, Computer Science is a broad field with numerous specific areas you can concentrate on for your career. And remember, if a coding career doesn't appeal to you, there are many other paths you can explore within this exciting field.
Coding is a key part of most curriculum because it sharpens your logic and reasoning skills, which are vital for any Computer Science career.
You can expect to take core courses like 'Intro to Computer Science' and 'Data Structures'. Most institutions also offer, or even mandate, additional courses like 'Operating Systems' and 'Data Structures'. But there's more to Computer Science than just coding. Before you apply, take a good look at the school's course offerings. Some schools might specialize in areas like Game Design, Networking, Web Development, Database Design, Cybersecurity, or Machine Learning/Artificial Intelligence.
You might also have the chance to choose electives like 'History of Game Development', 'Compiler Design', 'Linux', 'Technology Leadership', 'Cryptography', 'Big Data', or 'Computer Architecture'. If you're unsure about the area you want to specialize in, don't worry! You'll likely have a clearer idea once you've completed a few courses.
In a nutshell, Computer Science is a broad field with numerous specific areas you can concentrate on for your career. And remember, if a coding career doesn't appeal to you, there are many other paths you can explore within this exciting field.
Updated
patrick’s Answer
Hi, Yenifer: as other people already give good overview on topic of coding/non-coding, my take on your question of " in what language?" is below, lot of school are teaching c/c++, those are good for "learning/training", but as you know the computer science are evolving fast, specifically c/c++ very much are used in "low level" programming ( not sure if that make much sense to you, basically it means they are more "useful" to be used in area where are "close" to hardware/operating system , i.e.,, as those language offer efficiency on that level) , but computer science are evolving fast that there are much more "high level " languages ( like java/python) as time go by... now so more "useful language" is python, if you want to pick one, in my opinion, it is way easier to learn than, for example, java ( not saying java is not useful ), plus python is very easy to get started and running itself very easy as unlike java/c/c++, no compile is needed, i.e., it can run interactively , run line by line as it goes, very helpful especially for starter.
and it can be used in lot of area, including data analysis, data science....
the best part, it has large library that basically do lot of work for you, and all you need is just call up those library to get your job done.
and it can be used in lot of area, including data analysis, data science....
the best part, it has large library that basically do lot of work for you, and all you need is just call up those library to get your job done.
Updated
Alex’s Answer
Hi Yenifer,
My friends who were CS majors at Berkeley took a lot of algorithms classes, data structures classes, math, statistics, databases, and more. It's very rigorous and prepares you for programming jobs at almost any level (AI, Machine Learning, front-end, back-end, etc). So now, it won't be only coding classes there will be other classes that help you think through and understand the algorithms behind the code. Also, you'll probably have some humanities / english requirements to graduate.
The languages that you code in will differ by school. Java is super common for data structure classes at Berkeley. Also Python is common and C+ is common. However, there are lots more classes you can take to learn more languages just depends on what you want to specialize in. Some stats focused people learn R. Sometimes there are app classes that let you take things like Swift.
What jobs you can get range from any type of computer programming (front-end, back-end, networking, security, quality assurance, app development, web development, full-stack, engineering management, and more). However, many people who are also interested in business and strategy will make the jump to product management and work with engineers and designers. Some move into data engineering focused jobs working on mining insights or setting up data foundations for companies. Then some people go to work for themselves coding shopify apps or mobile apps or websites.
CS is probably the most useful degree right now in my opinion and I don't think that is trending down at all.
Hope this helps!
My friends who were CS majors at Berkeley took a lot of algorithms classes, data structures classes, math, statistics, databases, and more. It's very rigorous and prepares you for programming jobs at almost any level (AI, Machine Learning, front-end, back-end, etc). So now, it won't be only coding classes there will be other classes that help you think through and understand the algorithms behind the code. Also, you'll probably have some humanities / english requirements to graduate.
The languages that you code in will differ by school. Java is super common for data structure classes at Berkeley. Also Python is common and C+ is common. However, there are lots more classes you can take to learn more languages just depends on what you want to specialize in. Some stats focused people learn R. Sometimes there are app classes that let you take things like Swift.
What jobs you can get range from any type of computer programming (front-end, back-end, networking, security, quality assurance, app development, web development, full-stack, engineering management, and more). However, many people who are also interested in business and strategy will make the jump to product management and work with engineers and designers. Some move into data engineering focused jobs working on mining insights or setting up data foundations for companies. Then some people go to work for themselves coding shopify apps or mobile apps or websites.
CS is probably the most useful degree right now in my opinion and I don't think that is trending down at all.
Hope this helps!
Updated
Kennedy’s Answer
Hi Yenifer!
Great question - it's important to take time to discern which type of major will suit you best.
When I did my computer science classes in college, there were a number of requirements that spanned many different computer science interest areas. Software engineering is definitely a large portion of the degree, but there are also components of computer hardware architecture and design, mathematics and computer science theory classes and computer systems. In the first few classes of my computer science degree, we focused on programming and learning a few different programming languages. I felt that once I had the basics of programming down, it was easier to apply those basic concepts to other programming languages. The biggest learning curve was the specific syntax/terms used in each programming model. One of my favorite courses was closer to the end of my computer science classes and we studied cybersecurity technical theory in-depth. It showed me that there's many fields within computer science, including cybersecurity.
Definitely continue to explore the vast field of computer science - there are many different applications of computer science and it sounds like you're already getting a preview with your AP Computer Science class. Best of luck!
Great question - it's important to take time to discern which type of major will suit you best.
When I did my computer science classes in college, there were a number of requirements that spanned many different computer science interest areas. Software engineering is definitely a large portion of the degree, but there are also components of computer hardware architecture and design, mathematics and computer science theory classes and computer systems. In the first few classes of my computer science degree, we focused on programming and learning a few different programming languages. I felt that once I had the basics of programming down, it was easier to apply those basic concepts to other programming languages. The biggest learning curve was the specific syntax/terms used in each programming model. One of my favorite courses was closer to the end of my computer science classes and we studied cybersecurity technical theory in-depth. It showed me that there's many fields within computer science, including cybersecurity.
Definitely continue to explore the vast field of computer science - there are many different applications of computer science and it sounds like you're already getting a preview with your AP Computer Science class. Best of luck!
Updated
Charles’s Answer
The classes you take will depend on the program offered by the school you go to. But in my experience a computer science degree will tend to have only a few classes that actually teach you programming. You'll likely have an intro to programming class to catch everyone up to speed, but everything after that will be about learning about topics in computer science using programming. Some examples include data structures/algorithms, parallel programming, networking, operating systems, and machine learning. The language that each class uses might be different and require you to learn new syntax. But past the intro level, it will just be assumed that you know basic programming concepts and will be able to apply them once you familiarize with the language.
If you want to focus more on the programming side of things, most computer science programs should have courses on software development, though they might be electives. You should also be prepared to take non-CS classes if you are going to a liberal arts school. For example I had to take at least one, sometimes two non-CS classes per semester in order to graduate. Overall, if you are applying to schools I would suggest finding a program that gives you a high degree of freedom in choosing electives that way you can take the classes that interest you the most.
If you want to focus more on the programming side of things, most computer science programs should have courses on software development, though they might be electives. You should also be prepared to take non-CS classes if you are going to a liberal arts school. For example I had to take at least one, sometimes two non-CS classes per semester in order to graduate. Overall, if you are applying to schools I would suggest finding a program that gives you a high degree of freedom in choosing electives that way you can take the classes that interest you the most.
Updated
Chuqi’s Answer
Hello Yenifer! A degree in computer science typically includes a variety of fundamental courses such as an introduction to programming/computer science, advanced programming, operating systems, and higher-level math courses like linear algebra and discrete mathematics, among others. Moreover, you have the option to choose from a range of subjects like Artificial Intelligence, Machine Learning, User Interface/User Experience design, Web design, Entrepreneurship, and many more based on your personal interests. The programming languages used can differ, but the majority of the courses usually start with languages like C, Java, Python, or C++.