Complete Guide to Top Online Computer Science Degrees
This comprehensive list of online computer science degrees at 150 colleges includes programs at every level, from associate to doctoral. Computer scientists are some of the most in-demand professionals in the world today. Requiring both creative abilities and technical mastery, an online computer science degree will include coursework in programming, manufacturing, networking, design, and graphics. Many computer science positions are available to those with a bachelor's degree, but a graduate degree is a valuable asset for more academically minded students.
Students will want to consider accreditation when choosing a degree, and may also find the top online college rankings for computer science degrees, based on low tuition and high academic quality, to be helpful when exploring degree options. We also provide more details about specific areas in the field, such as computer programming and web development, in addition to career information.
Comprehensive List of Accredited Online Schools - Computer Science Degrees (150)
Top Online Colleges Offering Computer Science Degrees
These top online colleges are the 25 best value options for students pursuing online degrees in computer science. Undergraduate students will find an affordable and academically rigorous Bachelor of Science in Computer Science at University of Illinois at Springfield, with an annual tuition of $10,755 and an academic strength score of 69%. Top-ranked Georgia Institute of Technology is an outstanding choice for an online master's degree in computer science with the lowest tuition and the highest academic strength score on the list.
All schools considered for this list offer fully online computer science degrees at the bachelor's level or higher. View our methodology for more details.
|Rank||School||Annual Tuition||Academic Strength|
|#1 Georgia Institute of Technology||Annual Tuition $2,550||Academic Strength 84%|
|#2 University of Illinois Urbana - Champaign||Annual Tuition $7,344||Academic Strength 83%|
|#3 Georgia Southern University||Annual Tuition $6,000||Academic Strength 68%|
|#4 Jacksonville State University||Annual Tuition $5,730||Academic Strength 60%|
|#5 Columbus State University||Annual Tuition $5,922||Academic Strength 61%|
|#6 Southern Arkansas University||Annual Tuition $6,210||Academic Strength 61%|
|#7 University of West Georgia||Annual Tuition $7,416||Academic Strength 59%|
|#8 Frostburg State University||Annual Tuition $8,040||Academic Strength 60%|
|#9 The University of West Florida||Annual Tuition $9,648||Academic Strength 63%|
|#10 University of Illinois at Springfield||Annual Tuition $10,755||Academic Strength 69%|
|#11 University of Louisville||Annual Tuition $10,710||Academic Strength 67%|
|#12 Northwestern State University of Louisiana||Annual Tuition $9,600||Academic Strength 61%|
|#13 LeTourneau University||Annual Tuition $12,000||Academic Strength 73%|
|#14 Troy University||Annual Tuition $10,140||Academic Strength 62%|
|#15 University of Michigan-Flint||Annual Tuition $12,435||Academic Strength 74%|
|#16 Southern New Hampshire University Online||Annual Tuition $9,920||Academic Strength 60%|
|#17 Colorado State University-Global||Annual Tuition $12,150||Academic Strength 71%|
|#18 Regent University Online||Annual Tuition $11,850||Academic Strength 68%|
|#19 Mercer University||Annual Tuition $13,230||Academic Strength 73%|
|#20 Old Dominion University||Annual Tuition $12,647||Academic Strength 64%|
|#21 East Carolina University||Annual Tuition $12,902||Academic Strength 64%|
|#22 Nova Southeastern University||Annual Tuition $13,410||Academic Strength 67%|
|#23 Limestone College||Annual Tuition $13,020||Academic Strength 63%|
|#24 Oregon State University||Annual Tuition $14,100||Academic Strength 69%|
|#25 Upper Iowa University||Annual Tuition $12,900||Academic Strength 62%|
Online Computer Science Degree Overview & Career Information
The two-year associate degree in computer science is most useful for people who are planning to use their credits to transfer to a four-year university. Associate degrees may provide the training and qualifications necessary for some basic tech support jobs, but in order to advance into a top computer science career, candidates will likely need to complete a bachelor's degree.
For most computer science careers, a bachelor's degree is sufficient. These undergraduate degrees give students all the training they need to work for many tech companies. While earning a bachelor's degree in computer science, students will take classes in computer programming basics and languages, computer networking, computer engineering, robotics, graphic design, web design, and data structures. Students will practice creating actual computer programs and complete many different projects.
Students who have a strong interest in the theories and languages associated with computer science may wish to pursue a master's degree. A master's can open up academic, teaching, and research opportunities, and it will likely also improve job opportunities. Master's degrees require studying the same topics as bachelor's degrees; however, students will have more control over the types of classes they take and will explore more of the theory behind computer programming. Some master's programs ask students to complete a thesis, which is an extensive paper on a topic of their choosing. To earn a doctoral degree in computer programming, students must commit several years and participate in original research studies, keeping them on the cutting edge of computer science.
There are many online degree options, and students can find a program to suit nearly any budget. Tuition ranges from $4,020 to $44,463 a year, but it's important to keep in mind that sometimes the most expensive programs offer the most financial aid. In general, graduate degree programs are more expensive than associate or bachelor's degree programs. The majority of online computer science degree programs cost between $13,000 and $15,000.
Associate degree programs in computer science introduce students to basic concepts in information technology and computing. These degrees take two years to complete and may be eligible for transfer to a four-year university. Applicants must have high school diplomas or the equivalent; some programs also require the submission of supplementary application materials, like standardized test scores and letters of recommendation. Online associate degrees cost anywhere from $4,000 to $19,000 per year.
Depending on the particular associate degree program, the curriculum may include a number of general education classes. Students may complete college math, English, communication, humanities, social science, and natural science requirements. Core classes in the computer science major examine programming languages and techniques. Other common courses include networking, computer design, animation, and computer hardware. Some programs include an internship in a business or technology company so that students gain hands-on skills addressing user issues.
Graduates with an associate degree in computer science may become help desk technicians, computer support specialists, computer repairers, network administrators, computer programmers, web developers, or systems administrators. Some larger businesses require a bachelor's degree for these positions, while others accept candidates with an associate degree and some relevant professional experience.
The bachelor’s degree in computer science trains students in the fundamental concepts underlying today’s information systems. These programs also include a required set of humanities and science courses and take four years to complete. The overall curriculum consists of 120 credit hours of work. Admission to a bachelor's program requires a high school diploma or the equivalent and standardized college entrance exam scores. The tuition for online bachelor's degree programs varies widely, with schools charging anywhere from $6,000 to $47,000 per year.
The core curriculum in the computer science degree discusses the theory and organization of computer systems. Core classes cover operating systems, data structures and algorithms, programming languages, systems security, and software engineering. Other courses in natural science and math, such as statistics, probability, discrete math, and calculus, support the foundational computer science classes. Besides the foundational courses, students also complete advanced courses and possibly a computer science specialization. Advanced courses discuss topics like data networks, computer architecture, and modem software engineering. Specializations require a focused set of courses in a particular information systems area, such as software engineering, networking, or database administration.
The bachelor’s in computer science opens up a number of entry-level information technology positions, such as computer programmer, systems administrator, network administrator, web developer, computer support specialist, software developer, and database administrator. Graduates who participate in an internship during the degree can narrow down their skill set to prepare for a particular type of position upon graduation.
A master’s degree in computer science provides students with the opportunity to learn advanced computer science skills and specialize in one or more information systems areas. These programs require two years of work and 12 to 15 courses. To apply, candidates need an accredited computer science degree or an undergraduate degree with significant coursework in foundational computer science topics. The average tuition for online master's degree programs in computer science is approximately $19,000 per year.
The core curriculum in the computer science master’s requires students to gain an understanding of the major content areas in computer science. Common classes include advanced systems programming, algorithms, distributed software development, and database technologies. Students also complete electives or a specialization in a focused CS topic. Common specializations include software development, systems, artificial intelligence, biocomputation, and information management. Most master’s programs require a thesis, consisting of a significant research project done on campus or through an industry setting in the student’s local community. The design of a novel software system is one example of a master's thesis project.
Graduates of the computer science master’s degree are prepared for professional roles in private research, industry, or public service. Possible job titles include computer scientist, information technology manager, network architect, information security analyst, systems analyst, computer programmer, software developer, and database administrator. Most information technology positions require a bachelor’s degree for entry-level roles, and master’s graduates will have a wider breadth of job opportunities upon completion of the graduate degree.
The doctorate in computer science provides students with an opportunity to study advanced technology topics and complete a significant research project. These degrees take about five years to complete. Applicants to computer science programs must have a bachelor's or master's degree in computer science, electrical engineering, or a closely related topic. Doctoral students are usually expected to have strong programming skills and be proficient in a number of programming languages. The average tuition for online computer science doctoral programs is approximately $20,000 per year.
Graduate students learn how to apply their skills in new ways to solve software and hardware problems in information technology. Courses may explore topics like networking, operating systems, and web design. Other programs are more theory-based and require students to investigate the processes behind computing systems. In addition to their practical coursework, students undertake a major research project and complete a dissertation. Students choose an original topic, consult with professors on their research and writing, and present a conclusion.
A graduate with a doctoral degree in computer science can work in computer science research and development as a computer scientist. These professionals do basic research and develop projects that may turn into consumer-marketed products. Others use the PhD to pursue teaching and research positions at the college level.
Working with computers can be a lucrative career choice for those who possess analytical minds and advanced math skills. Some online schools offer graduate certificate programs in computer science that normally require from 12 to 18 months of full-time study. Most programs contain 9 to 15 credit hours and accept individuals with bachelor's degrees. Those who enroll should also have exceptional GPAs.
Graduate certificate programs target individuals who have already earned an undergraduate degree and wish to gain specialized knowledge in a particular area of computer science. Students cultivate skills in information technology, design techniques, hardware and software applications, and formulating algorithms. They also learn how to interact with other professionals in related fields and manage the flow of digital communication within their organization.
Areas of concentration for these programs may include database management, Internet working technology, wireless communications, computer programming, or software development. Students usually take classes that explore database organization, project management, software metrics, analysis and design, operating systems, and computer architecture.
Many individuals who've obtained a graduate certificate in computer science are generally qualified to obtain jobs as database administrators, software developers, network analysts, and computer programmers. Alternatively, some graduates choose to continue their education and pursue a master's degree that prepares them for leadership roles in their profession.
Prospective computer science students are encouraged to select an online degree program that has received accreditation from ABET or a national or regional accrediting organization. Accreditation is a comprehensive evaluation process that schools and programs may choose to go through to let the public know that they meet established standards of excellence. They are evaluated in terms of their curricula, faculty members, research programs, and student resources, among other things.
Programmatic accreditation is not required for computer science degrees, but this credential can be a useful sign of a high-quality program. The principle accrediting organization for computer science degree programs is ABET, or the Accreditation Board for Engineering and Technology. While ABET accreditation is not required for computer scientists, this agency is well known in technical fields, and the designation may help boost your resume when applying for jobs. Students can also consider programs offered by schools that are nationally or regionally accredited. Legitimate accrediting agencies should always be recognized by the US Department of Education or the Council for Higher Education Accreditation.
Accreditation may also be beneficial if you plan to transfer credits to another accredited school or apply for federal financial aid. Most schools and financial assistance programs require applicants to attend an accredited school. To learn more about accreditation, please visit our comprehensive accreditation hub.
Earning a professional certification in the computer science field has the potential to help recent graduates as well as seasoned professionals in the field. For a recent graduate without any professional experience, certification may even provide a foundation for a career path. For experienced computer scientists, certification may serve other purposes such as verifying proficiency in a certain area, strengthening professional credentials, and updating skills and knowledge on the latest innovations and technologies.
For those in the computer science field, especially software developers, there are two main types of certification: CSDA (Certified Software Development Associate), for individuals who are newer to the field, and CSDP (Certified Software Development Professional), for those with more advanced skills and experience. Both of these certifications are offered through the IEEE Computer Society and require that applicants take an exam to demonstrate their proficiency.
Microsoft also offers a wide variety of certifications pertaining to computer software and systems operations. Microsoft divides their certifications into five categories, and each category has its own set of certification paths, including Microsoft Technology Associate (MTA), Microsoft Solutions Associate (MCSA), Microsoft Solutions Expert (MCSE), and Microsoft Solutions Developer (MCSD). The Microsoft Application category also has these specific certification paths: Microsoft Office Specialist (MOS), Microsoft Office Specialist Expert (MOS Expert), Microsoft Office Specialist Master (MOS Master), and a variety of Microsoft Dynamics certifications. The other certification categories include Server, Desktop, Database, and Developer. For answers to frequently asked questions and to learn more about the different types of certification offered, visit the Microsoft Learning site.
Computer engineering is a professional field that combines electrical engineering and computer science in order to develop computer systems. Computer engineers can be found designing microprocessors, personal computers, circuits, and super computers. Computer engineers also often write software and firmware, design analog sensors, operating systems and circuit boards. Computer engineering not only requires an understanding of how computer systems work but how they integrate into daily life and work. Those interested in electronic engineering, hardware or software design, and other aspects of computers may wish to consider a career in computer engineering.
People looking for entry-level positions in computer engineering will find that associate and bachelor’s degrees will help them gain the proper employment. Those who wish to keep up in this ever-changing field or just a competitive edge in the job market should seek master’s and doctorate degree levels of education.
Certificate programs in computer engineering are intended for those who already have an education in electric power systems. Associate and bachelor’s degrees in computer engineering offer a broader, more in-depth education for students. For example, an associate degree in computer engineering technology would require courses in computer organization, hardware, data analysis, and math and physics. A bachelor’s degree program in computer engineering technology would teach students how to design and implement software and hardware.
Graduate degrees in computer engineering offer highly advanced theories, skills, and knowledge of the field. A master's in computer engineering would offer students a chance to learn about advanced subjects in computer design, microprocessor design, and electrical engineering. Those in master’s degree programs are often expected to complete a thesis based on their research in computer engineering. Doctoral programs in computer engineering require students to conduct intensive research projects in order to obtain the skills necessary to create new knowledge of computer engineering.
With fewer overhead costs like paying for physical classroom, online degree programs are generally less expensive than traditional programs at brick-and-mortar universities and colleges. However, tuition still largely depends on the level of the degree program and the school itself. For example, tuition for Northeastern University's computer engineering master's degree program for the 2014-2015 year costs $43,360.
Online computer programming degrees teach students how to code in a number of different languages, debug and update programs, and work with software developers and other information technology (IT) professionals. No computer programmer will learn all the necessary skills for their lifetime as a programmer through a single degree. Computer programs are constantly changing, and new languages are developed all the time. Prospective online computer programming students should seek out degrees that teach students the skills to easily learn new programs on their own. These degrees will include lots of hands-on programming work, in which students create and debug computer programs.
An associate degree in computer programming is usually required to land entry-level coding positions. Students learn about the structure of programming languages, as well as databases and computer networks. These two-year degrees may also be used for university transfer. The undergraduate certificate usually has the same core of programming classes as the associate degree. Commonly required classes include data processing, computer literacy, C++ programming, Java programming, web development, and database programming.
The bachelor’s degree in computer programming provides the same core skills of the associate degree but usually provides an introduction to more programming languages and computer skills. Required classes discuss computer operating systems, discrete mathematics, data structures, and programming structures. Many programs allow students to specialize in a particular computer science area, such as systems programming, information security, or software engineering.
The online master’s degree or graduate certificate in computer programming can provide an introduction to the field for those with backgrounds in other areas; these programs may also be aimed at those with a computer science bachelor’s degree. These degrees usually require a core of advanced classes in areas like computer algorithms, principles of computer systems, and computer organization. Many master’s degree programs are flexible and allow students to choose electives in the computing area that interests them. Some are thesis based and require a faculty-approved project, while others are coursework only. Some also include a focus in business IT, leadership, and management, which can be useful for those interested in advancing in their programming careers.
Online software engineering degrees provide graduates with the skills to design and create computer programs. Students learn how to evaluate a client’s software needs, upgrade existing programs, and collaborate with programmers and other engineers to develop large projects. Software engineering requires a unique blend of creativity and technical skills, and prospective students should look for programs that encourage creative thinking, through project-based or interdisciplinary classes. Project-based classes can also help students learn the teamwork and communication skills that are vital in the software engineering world, since many software projects are large and require collaboration between developers.
The online bachelor’s degree in software engineering is the program for you if you don’t have a background in computer science and want to launch an engineering career. These programs have an emphasis on math and computer science and provide students with entry-level skills in computer programming, software processes, and models of computation. Coursework includes classes in computer algorithms, calculus, linear algebra, computer organization, and human-technology interaction. Students learn how to develop programs around a variety of parameters, such as cost and user requirements; they also learn how to test and improve existing software.
Master’s degree and graduate certificate programs allow those with a computer engineering or computer science bachelor’s degree to build on their current skills. These programs may be coursework-only, or they may require a research-based thesis or project. Students usually take a core of advanced classes, as well as classes in a specific engineering area, such as electronics and materials, human-computer interaction, software systems, or network systems. Some graduate certificates are specifically designed for current engineers that want to become information technology project managers.
Engineers that are interested in completing large, complicated software research projects can complete a doctoral program. These degrees require advanced coursework, followed by the completion of the research project and a dissertation. Advanced courses and the research project usually revolve around the student’s particular interest area, such as artificial intelligence, networks, database systems, or systems engineering design.
Web development work consists of any aspects of website creation and management, including the basic planning and layout of a new website, the programming of links and other network connections, and the managing and maintenance of new features required to keep a website on the cutting edge. Web developers must be creative, detail-oriented individuals with a lot of tech savvy and experience. They have to be able to anticipate and deal with problems that can be encountered in website design and construction and understand the roles of such pivotal aspects as advertising, social networking, and interaction and user-friendliness for the everyday user.
The kind of work performed by web developers can be done in-home or in an office building. The work can be done for an organization, for your own business, or as a freelance or contract position. Work opportunities are available for those with just a high school diploma, but a higher level of education opens more doors. Although a master's degree isn't usually required, master's degrees in computer science and software engineering can expand your range of knowledge as it applies to the field of web development.
Associate and bachelor's degrees are considered to be science-based degrees, but can also found in the computer science, information technology, and computer information systems departments within colleges of arts. As these are very straightforward science-oriented degree programs, they follow pretty consistent degree program and course formats from college to college. They usually begin with basic programming and logic systems courses and move into classes focused on website formatting, programming, and design.
Web development careers can be broken up by degree specializations, focuses, or emphases, which can prepare you to be a database administrator, a software architect, an information technology manager, or a computer and information scientist, among other in-office or freelance career specialties. These specializations are not necessarily available by the same names at all schools. In the case of bachelor's degrees with no official specializations, it is up to the prospective student and their undergraduate academic advisor to look through the course catalog and select the best available course for the nature of intended work.
Computer science deals with the process of using computer systems to solve problems that range from software design to solving scientific questions about the computing process. The definition of a computer scientist is broad, mainly because specialists help conduct a variety of different roles in the industry, from designing software to using programming knowledge to eliminating issues. Besides being a computer programmer or web developer, students looking for a job immediately after graduation will likely have several options open to them, including:
Computer User Support Specialist
Call any computer company’s support hotline, and most of the time a technician will answer the phone. The technician is a certified specialist who guides individuals through the process of manually fixing a computer. A specialist will also study the company’s products and manuals to discover ways of fixing faulty equipment and software. Aside from studying materials, a support specialist also develops training manuals to help employees replicate the process of fixing errors and issues involving equipment and software.
Computer users support specialists carry with them a range of specialized skills, from being knowledgeable in computers to communicating effectively via writing. Computer user support specialists also must work well with customers, so if you tend to be introverted, you might not want to consider taking on a role as a support specialist. Most of these professionals work for private companies that design electronics or software.
Systems analysts examine requirements and procedures to improve the current way a system operates. Most will review the capabilities of a system, its work flow, and its limitations to make significant or moderate adjustments. Systems analysts will also test and maintain programs and systems to ensure that no bugs or viruses enter them. Other basic tasks of a systems analyst include reviewing computer printouts, providing assistance to staff and administrators, developing and understanding manuals, and consulting with upper management.
Systems analysts are skilled critical thinkers, as well as revered programmers that can solve issues quickly and effectively. Most will need a basic understanding of written composition to communicate with internal staff and flexibility in order to solve spontaneous issues that may arise. With a median salary of around $79,000 dollars and an expected 25 percent growth between 2012 and 2022, systems analysts have one of the most rapidly growing and highest paid positions in the computer science industry.
Before a business can get up and running, it most likely needs someone to set up, organize, and manage their local area network (LAN) and wide area network (WAN) systems. Network administrators tend to work on short- and long-term projects assisting in network modeling, analysis, and coordination and planning of hardware and software communications. Typical tasks of a network administrator include planning, coordinating, and carrying out security measures to safeguard against viruses; designing and configuring hardware and software; performing data backups; and configuring email applications.
Administrators are knowledgeable in three areas: computers, mathematics, and administration. With any of these areas of expertise lacking, an administrator cannot properly execute his role. The basic skills these professionals possess include analyzing complex issues, performing evaluations, making efficient decisions and sound judgments, and programming computers. With a median salary of $72,560, network administrators can make a decent-sized income working for a private or public organization.
- Certification. IEEE Computer Society. Accessed November 9, 2014. http://www.computer.org/portal/web/certification/home.
- Computer Programmers. Occupational Outlook Handbook. Bureau of Labor Statistics of the US Department of Labor. Published January 8, 2014. http://www.bls.gov/ooh/computer-and-information-technology/computer-programmers.htm.
- Computer Systems Analysts. Occupational Outlook Handbook. Bureau of Labor Statistics of the US Department of Labor. Published January 8, 2014. http://www.bls.gov/ooh/computer-and-information-technology/computer-systems-analysts.htm.
- Learning. Microsoft. Accessed November 9, 2014. https://www.microsoft.com/learning/en-us/certification-overview.aspx.
- Network and Computer Systems Administrators. Occupational Outlook Handbook. Bureau of Labor Statistics of the US Department of Labor. Published January 8, 2014. http://www.bls.gov/ooh/computer-and-information-technology/network-and-computer-systems-administrators.htm.
- Tuition and Financial Aid. Northeastern University. Accessed November 9, 2014. http://www.northeastern.edu/online/tuition-financial-aid.