Computer science is the study of computers and programming languages. It focuses on the theory of how computers process information, as well as the hands-on aspect of writing software to make computers function according to design. Degree programs in computer science will include coursework in computer programming, computer hardware, algorithms and logic, databases, and systems analysis. Many programs will offer elective courses in software design, networks, security, game design, and web programming.
The value of a college degree in computer science is hotly debated, and many people are able to get jobs in the field without any higher education. However, having a degree is a good way to demonstrate competency and breadth of knowledge, and offers a great opportunity to gain advanced hands-on experience early in the career. Many schools offer both Bachelor of Arts and Bachelor of Science degree options at the undergraduate level, allowing students to choose between broad academic experiences. Graduate programs in computer science also open up opportunities for research, teaching, and leadership.
Do I need to get a degree in computer science to work in the tech field?
It depends on your goals. For jobs in the computer and tech fields, many employers focus on an applicant’s knowledge and experience, and may not require a college degree. However, studying computer science gives you experience with many different aspects of the field, like writing clean code and researching new programming languages. Having a degree therefore gives you a leg up on other applicants who have not had the experience that comes with the degree, and may train you for other elements of a job that someone who can just write code would not know.
Do all computer science degrees focus on programming?
While a large part of an undergraduate computer science program will focus on learning programming languages, you will also learn about other aspects of software development and testing, security, networking, hardware, and project design.
Is the Bachelor of Science or Bachelor of Arts in computer science a better degree for me?
If your goal is to pursue a career in computer science right out of your undergraduate program, either degree will work. The most important factor in hiring within the field of computer science is your skill with computer programming and knowledge and experience with systems management. Both undergraduate degrees will also make you eligible to apply for graduate programs, although you should note that some programs might be looking for a strong science and math background that is more common with the BS degree.
What’s the difference between computer science and information technology?
While there can be significant overlap in the fields, and definitions will vary by institution, in general computer science programs focus more on theory, design and programming, while information technology focuses more on implementation and real-world applications.
- Bachelor of Science (BS) in Computer Science: Requires more mathematics, science, and computer science than does the BA.
- Bachelor of Arts (BA) in Computer Science: Can more easily be pursued in combination with other degrees, majors, or special programs. Requires more social science, language, and cultural classes than the BS.
- Master of Science (MS): Advanced degree in computer science. While a bachelor’s degree in CS is not required, most graduate programs will require previous CS coursework as a prerequisite for admissions. Many online master’s degrees will be geared toward professionals in the science, technology, engineering, and mathematics fields. However, the MS degree can help computer science professionals remain competitive in the field and advance in their careers. The MS degree offers opportunities to study advanced programming, security, and other aspects of the field, and opens opportunities for teaching and professional leadership.
- PhD in Computer Science: Highly advanced, technical degree. Usually appropriate for individuals who want to engage in high-level research or teach at the college level.
Course of Study
Generally there are no prerequisites to be admitted into an undergraduate computer science program other than eligibility to attend the institution.
The computer science degree plan will vary depending on whether you choose a BA or BS degree plan. While both degrees will include significant coursework in computer science itself, the BA degree will include more liberal arts and fine arts coursework, and may also include a foreign language. The BS degree, in comparison, may focus more on coursework in the natural sciences (such as biology and chemistry) and math, and may include additional hours in computer science. For both degrees, you should expect to complete a sequence of calculus, statistics, and advanced mathematics.
The computer science portion of both degree plans will include courses in the following subjects:
- Data structure and analysis
- Computer programming
- Computer systems and architecture
- Data structures and analysis
- Software engineering principles
- Discrete structures
- Computer algorithms
Beyond the basic courses, you will take electives within a range of options, including additional programming languages, game design, software design, information security, networks, operating systems, systems analysis, and more. You can often choose to specialize in one or more of these fields to further improve your career prospects.
Some of the common career paths within computer science include:
Computer hardware engineer:
design new computer hardware using new technologies and evolving customer demands. This can include computers, mobile devices, internal components, and peripheral devices.
write code that runs software on computers, as well as on cloud-based systems.
Video game designer:
create new video games for consoles, computers, and mobile devices.
Mobile applications developer:
work includes developing stand-alone mobile applications, as well as modifying software designed for computers so it can run on cell phones or other mobile devices.
design systems to prevent cyber attacks, and create and enforce security protocols within companies.
build and maintain websites for companies, schools, and other institutions. Usually there are both front-end developers who design the user sees and back-end developers who write the code for a website’s functionality.
Senior database administrator:
create and manage databases that can consist of customer or patient data, e-commerce transactions, or a wide range of other applications.
collect and analyze data on shopping trends, website usage, security issues, or any other aspect of a business where information can help bring in customers or protect and grow a business.
oversee internal company networks, including connecting physical computers to the network and managing online resources such as intranets, email, and other internal software.
design new projects to be developed by web developers, software developers, or other staff.
Software quality engineer:
test software for problems and other issues to ensure it functions as intended.
Choosing an accredited computer science program assures you that the program meets quality standards and will be respected by future employers. Most graduate schools require that applicants hold a degree from an accredited program in order to qualify for admission.
For computer science, in addition to regional organizations that accredit schools in the region for overall academic quality, the organization ABET reviews and accredits programs specifically in computer science. You can search for ABET-accredited programs online through the ABET website.
Licensing, Certifications, and Exams
Computer science majors don’t need to pursue certification upon graduation. However, there are a few certificates that can help expand career options:
- Microsoft Certified Professional Developer (MCPD) to certify skills with Visual Studio 2008 and Microsoft .NET Framework 3.5
- Microsoft Certified Systems Engineer (MCSE)
- Microsoft Certified Systems Administrator (MCSA)
- CompTIA’s Linux+ to demonstrate Linux client and server skills
Professional certifications can make a job candidate more marketable. Employers seek workers who have specific skills, and those who possess certifications have a way to objectively demonstrate mastery in those areas.
Salary expectations and career outlook
There is a wide range of salaries for the computer science field due to the range of job positions within it. According to the federal government’s Bureau of Labor Statistics, the median pay for a computer programmer was $74,280 with the growth in the field listed at 8%. Software developers earn a median salary of $93,350 with the positions expected to increase by 22% over the next decade. Web developers earn $62,500 on average, but the growth rate is also quite strong at 20%.
As a student in computer science, you will gain a number of marketable skills that you will be able to bring to a potential employer. Specifically, you can expect to gain the following skills:
- Problem solving
- Understanding of algorithms as a series of steps to accomplish a goal
- Understanding of how the Internet works
- Network design
- Using and managing databases
- Website development and maintenance
- Basic Internet security
- Project management
- Ability to work independently
- Software design
- Computer hardware knowledge
Many companies in the tech field offer paid internships to computer science students, with most internships focused on a particular subfield that can mirror a student’s professional interests. If you are, for example, focusing on video game design, you can often get an internship with a video game studio. Those studying web programming can look for internships with advertising agencies, cloud-based software companies, or with local businesses with a strong web presence. To find internships, you can either check individual company websites or do a search for internships in your specific field.
- Association for Computing Machinery
- IEEE Computer Society
- The Institute of Electrical and Electronics Engineers Computer Society
- Association for Women in Computing
- International Association of Computer Science and Information Technology
Suggested Online Degree Programs
- BS degree in Computer Science from the University of Illinois, Springfield campus
- BS degree in Computer Science from the University of Florida
- The University of Maryland offers several online BS degrees in Computer Science or closely related fields:
- BS in Computer Science from Oregon State University
Students seeking an online master’s degree in computer science should have no trouble finding a top-rated program, as some of the best schools in the country offer this degree as an online option. A few examples of these programs include:
- Georgia Tech offers an online MS in computer science via the Massive Open Online Course format. One of the most noteworthy aspects of this degree is that the entire degree can be earned for less than $7000.
- Stanford University offers a MS degree in computer science with all coursework available as an online option.
- The University of Illinois offers a MS in Computer And Information Sciences