“The single best piece of advice that I can offer to a prospective student is to avoid procrastinating.”Read the Full Interview
I'm interested in studying computer science. What can you tell me?Computer science is the study of the design of computers and the processes that allow them to be useful tools. Students in a computer science program will explore the physical parts of a computer system as well as the theory behind computer programs and applications. They will also work to improve current technology and think of new ways to use technology to our advantage. Computer science draws from several disciplines like math, information technology and engineering. Students who excel in computer science are well-rounded people who are intelligent, logical and imaginative. They also have excellent mathematical skills and the ability to work well individually and on teams. A degree in computer science can lead to a variety of high-paying jobs as computer programmers, software engineers and research computer scientists. If you enter this field, you can specialize in many concentrations including artificial intelligence, software development and computer networks and security. But you will not be able to get a job in computer science without at least a bachelors degree, so you should plan to spend a minimum of 4 years in college if you want to enter this field.
Let's hear some other perspectives
“I knew that a masters degree would help me to form the kind of relationships I needed in order to start a successful career. I have pursued my masters degree with a professional rationale. My ambition has always been to find work in Silicon Valley. I have used the work I pursued during my masters degree as a means to an end.”Read the Full Interview
“I have become very passionate about computer science. It is a much more dynamic subject than many people would assume.”Read the Full Interview
What exactly is a computer science professional?Computer science professionals design the architecture of computer hardware and the software programs that allow people to operate computers. Some computer science professionals use computing theory and mathematics to create new technology. Others apply that technology by using coding languages to program computers. Although a degree in computer science can lead to many jobs, computer science professionals can be classified into 3 broad categories:
Research Computer ScientistsResearch computer scientists study computational science and theory. They create original technologies and discover more uses for existing technology. For instance, they may invent new computer languages, design the physical hardware of a computer or create artificial intelligence. Research computer scientists usually have a PhD and they work for universities, government agencies or corporate research and development firms.
Software EngineersSoftware engineers design computer software like operating systems, business tools and computer games. They analyze the needs of computer users and build applications to meet those needs. The programs that they create rely on mathematical algorithms, which are sets of instructions that tell a computer what to do. Software engineers are categorized as applications engineers or systems engineers, depending on the type of software that they develop.
Computer ProgrammersThese computer science professionals program the software and web applications that software engineers design. Programmers use a variety of coding languages like Python, C++ and Perl to convert software designs into instructions that computers can follow. They also write new code and update existing code to fix bugs.
Let's hear some other perspectives
“The image of the computer scientist working alone in a dark cave is not representative of reality. There is a tremendous amount of interaction in the field, especially on large software projects.”Read the Full Interview
“Above all, computer programmers should have the drive to create new things and ideas.”Read the Full Interview
“Successful computer science students should be effective communicators with a natural aptitude for technical work.”Read the Full Interview
How do I know if computer science would be a good fit for me?
Here is a quick quiz to help you decide if you have the personality it takes to succeed as a computer science professional. Rate, on a scale from 1 to 5, how well each of the following statements describes you.
I like to use the latest technology.
Computer science professionals invent new technology and improve current computer systems. If you enjoy using cutting-edge technology in your daily life, you may like computer science.
I like to solve problems and puzzles.
Computer science professionals use technology to solve complex problems. If you are discouraged by complicated tasks, computer science is not the best career choice for you.
I am curious about the way machines work.
Computer science professionals explore the basic components of computer hardware and software to determine how to make computers faster and more powerful. If you like to understand the mechanical processes of machines, this subject may fascinate you.
I am careful and I pay close attention to detail.
Computer science tasks like programming require meticulous attention to detail because a single typing error can result in a software bug. If you find details trivial, you may not excel in computer science.
I work well in a group.
The development of new technology requires teamwork and cooperation. As a computer science professional, you will often work together with other computer scientists, software engineers and programmers to complete a project.
I communicate clearly and effectively.
Computer science professionals must communicate with other engineers and programmers as well as the end users who utilize their programs. You must be able to speak about technical matters with experts and the general population.
I can keep track of many things at the same time.
Computer scientists often manage several tasks simultaneously. You must be organized and efficient if you want to work in this field.
I can think in unconventional or unusual ways.
Computer science professionals design new processes and create innovative technologies. If you are excited by new inventions and ideas, you may enjoy computer science research.
I am comfortable working with numbers.
Computer science professionals use advanced mathematics to design software systems and applications. You will need to be confident about applying your mathematical skills to real-world situations to succeed in this field.
I like to learn about new concepts and ideas.
Computer technology evolves constantly. You will need to be a lifelong learner to stay current with advances in the field.
*Note that this is not a scientific quiz. The result is simply my rough estimate of how well I believe our personality matches that of a successful computer science professional.
By my assessment, a career in computer science is probably not a good fit for your personality. Please go to the Admissions Advisor homepage for a listing of other careers you may want to consider.
By my assessment, although a career in computer science may not be an ideal fit for your personality, if you are willing to adapt in a few areas, you can still find success in the field. Please see the list to the right for information on the areas that you may need to work on.
By my assessment, your personality is a good fit for a career in computer science. Scroll through our site to gain valuable insight into what it will take you to earn the necessary credentials.
Is there anything else I should consider in deciding if computer science is the right choice for me?
Computer Science vs. Information Technology
It is important to understand the difference between computer science and information technology (IT). These subjects are related, but distinct. Both subjects involve the use of computer technology, but computer science professionals take a more theoretical approach to the field than IT workers. Computer science professionals think about ways to make existing technology better by improving the physical components of computers and designing better software systems. They also create entirely new kinds of technology. Because they are high-level thinkers who deal with abstract mathematical concepts and computer theory, they need at least a bachelors degree to find a job.
On the other hand, IT is concerned with storing, sharing and analyzing information using computer networks, databases and the Internet. IT coursework focuses less on mathematics and more on how students can apply technology to business and communications. Examples of IT professionals are network architects, computer systems administrators, network security specialists and web developers. Some IT positions only require an associates degree.
What computer science professions can I choose from?
Some of the most common professions for those with a computer science degree include:
Bachelors (4 years)
Software publishers, corporate businesses, government agencies
Quality assurance analysts make sure that software and web applications work smoothly before they are released to the public. They create automated processes that are designed to find mistakes in code, which can result in program errors called bugs. After checking for coding errors, quality assurance analysts report their test results to software engineers or application developers to be fixed.
Bachelors (4 years)
Software publishers, corporate businesses, government agencies, private consulting
Computer programmers follow the specifications of software engineers to write the code that allows software and web applications to run correctly. They use different programming languages to write these codes, including Python, Perl, Java, C++ and SQL. In addition, programmers help engineers and quality assurance analysts to identify and prevent bugs.
Bachelors (4 years) or masters (2 to 3 years of graduate school)
$92,000 (Lowest 10% earned less than $53,000; highest 10% earned more than $136,000)
Software publishers, corporate businesses, government agencies
Software systems engineers design computer software like operating systems, network control systems and database management systems. They begin the software systems design process by identifying the needs of a business or a group of people. Then they build computer systems to meet those needs by using mathematical algorithms that instruct computers. Finally, they oversee testing of the software system to make sure it works correctly.
Bachelors degree (4 years)
$85,000 (Lowest 10% earned less than $54,000; highest 10% earned more than $128,000)
Software publishers, corporate businesses, government agencies, private consulting
Web application developers are software engineers who create applications that are featured on websites, like online shopping carts, content management systems and subscription services. Web application developers analyze business needs and write technical specifications that provide computer programmers with coding instructions.
Doctorate (4 – 7 years of graduate school)
$78,000 (Lowest 10% earned less than $37,000; highest 10% earned more than $133,000)
Computer science professors teach classes about computer theory, advanced mathematics and information technology. They prepare course material, mentor students and assess their academic progress. Most computer science professors conduct scholarly research in addition to teaching classes.
Doctorate (4 – 7 years of graduate school)
$98,000 (Lowest 10% earned less than $58,000; highest 10% earned more than $151,000)
Software publishers, corporate businesses, government agencies, universities
Research computer scientists study the practice and theory that drives computing technology. They work in academic and corporate research settings to invent new computer hardware and software. They work in teams to design new applications for existing technology and also conduct independent research.
What is the job outlook for computer science professionals?According to the Bureau of Labor Statistics, job prospects for computer science professionals are extremely good. In 2008, there were more than 1,365,000 computer science professionals working in the United States, including software engineers, research computer scientists and programmers. The job outlook is particularly bright for software engineers, whose prospects are expected to increase by 32% through 2018. Positions for research computer scientists are projected to increase by 24% during this time as well. In contrast, jobs for computer programmers are expected to decrease by about 3% in the same period.
|Profession||Employment 2010||Projected 2020||Average Growth|
|Computer Or Information Systems Manager||307900||363700||18%|
|Computer Support Specialist||607100||717100||18%|
|Computer Systems Analyst||544400||664800||22%|
|Systems Software Developer||392300||519400||32%|
|Software Quality Assurance Engineer Or Tester||209700||222000||6%|
|Video Game Designer||209700||222000||6%|
|Computer Or Information Research Scientist||28200||33500||19%|
Average Salary Growth 2006 - 2011
|Computer Or Information Systems Manager||107250||113880||118710||120640||123280||125660|
|Computer Support Specialist||44350||45300||46370||47360||49930||51820|
|Computer Systems Analyst||72230||75890||78830||80430||81250||82320|
|Systems Software Developer||87250||90780||94520||96620||97960||100420|
|Software Quality Assurance Engineer Or Tester||69370||72310||76000||78010||79790||80500|
|Video Game Designer||69370||72310||76000||78010||79790||80500|
|Computer Or Information Research Scientist||96440||100640||100900||105370||103150||103160|
Salary By Percentile
|Computer Or Information Systems Manager||$73080||$92470||$118010||$148500||$185150|
|Computer Support Specialist||$28980||$36990||$47660||$62530||$81190|
|Computer Systems Analyst||$49370||$62260||$78770||$98490||$120060|
|Systems Software Developer||$62470||$77720||$96600||$120500||$147030|
|Software Quality Assurance Engineer Or Tester||$42150||$59870||$79930||$100900||$118710|
|Video Game Designer||$42150||$59870||$79930||$100900||$118710|
|Computer Or Information Research Scientist||$56800||$77990||$101080||$123530||$151660|
How long would it take me to become a computer science professional?
It will take you at least 4 years to become a computer science professional, but keep in mind that the time it will take depends on the specific career that you want to pursue. For instance, if you want to get an entry-level job as a computer programmer or quality assurance analyst, you will need to earn a bachelors degree, which typically takes 4 years. But if you want to develop software or web applications, you may need to gain several years of programming experience in addition to a bachelors degree. If you want to manage a team of developers, programmers or engineers, a masters degree will enhance your prospects. Masters degrees require 2 to 3 years of graduate school. And if you want to be a university professor or a research computer scientist, you will need to spend 4 to 7 years in graduate school so you can earn a PhD.
What can I expect to learn while pursuing computer science?
As a student of computer science or information technology, you can expect to grow in both knowledge and skills.
Software engineeering is the development and design of new computer software like operating systems, productivity tools and web applications. Software engineering teaches the processes and protocols that engineers use to create software. Some topics that will be covered include object-oriented design, best practices for writing code, database design and systems programming.
Computer architecture refers to the structure of the physical parts of a computer, which are commonly known as hardware. This subject helps computer science students to understand the capabilities of different hardware components and the relationship between software and hardware. It also covers general design issues like memory capacity, caches, microcoding and pipelining.
Computer networking explores how computers are connected in a network using the Internet. It teaches ways to configure computers so that many users can access the same information. Knowledge of computer networking will include discussion of topics like parallel and cloud computing, Internet architecture and protocols, data security and congestion control.
Data structure examines the best ways to use computers to store and access large amounts of data. It teaches database management system design and ways to implement those systems in a practical setting. Specific topics considered in this course include storage structures, query optimization and web databases.
Computer science incorporates advanced mathematics subjects to model complex computer processes and algorithms, which tell computers what to do. Some mathematical concepts that are essential to computer science include calculus, algebraic proofs, statistics and probablity. Computer science also uses principles of physics and discrete mathematics.
Computer science professionals use programming languages to write code. Writing clear and concise code is a skill that requires programmers and developers to follow the accepted conventions of the industry. As a computer science student you will learn about the philosphy of different programming languages as well as their syntax and structure.
As a computer science student, you will learn how to manage your time effectively as you work on projects. You will become proficient with project management tools like online calendars and spreadsheets that help you to monitor your progress. Your classes will help you to gain the ability to plan and execute projects on a large scale, like developing new software or designing a computer network.
As a computer science student, you will develop problem solving skills that let you use technology to your advantage. You will be trained to analyze problems from several perspectives so that you can decide on the best course of action. You will also learn how to spot and fix common technical issues quickly.
In your computer science curriculum, you will develop a wide range of oral and written communication skills. For instance, you will be able to write technical reports, and user instructions and clearly present your ideas to others. In addition, you will learn how to interact with people who have a range of technical knowledge about computers, from experts to novices.
Your computer science curriculum will teach you how to conduct scholarly research. You will learn to combine research that has already been performed with your original ideas to create new theories and to make technology better. Some research techniques that you will learn include observation, experimentation and statistical data anaylsis.
What academic levels are available in the field of computer science?
Computer science degrees are offered at the undergraduate and graduate level. A bachelors degree is the most common option for computer science professionals, but you can also earn credentials through associates, masters and doctorate programs. Remember that an associates degree will not qualify you for a job in computer science.
Select the degree level you are interested in:
An associates degree is only a starting point for a career as a computer science professional. It will introduce you to fundamental computer science concepts that may help you to find an entry-level job in information technology. But because computer science positions require more theoretical knowledge and training than IT jobs, an associates degree will not qualify you for a job in computer science.
What are the different types of associates degrees that I can earn in computer science?
Associate of Arts AA
An AA degree in computer science includes courses in the humanities as well as the sciences. This degree is best for students who plan to transfer into a bachelors degree program.
Associate of Science AS
An AS degree in computer science offers more science and mathematics courses than an AA degree, but they are basically the same program. This degree is also a good choice for students who want to transfer into a bachelors degree program.
Associate of Applied Science AAS
An AAS degree in computer science is designed to teach practical job skills to students. This degree is a good choice if you want to enter the workforce right after you graduate.
How long will I have to study to earn my associates degree in computer science?
Associates degree programs in computer science typically require students to complete 60 to 64 credit hours. It takes about 2 years to earn an associates degree.
What types of courses will I take while studying for my associates degree in computer science?
If you choose to earn an associates degree in computer science, you will learn about information technology, mathematics and the structure of computers. You will take classes about programming languages, database administration and computer logic as well as calculus and physics.
What types of jobs can I hope to secure with an associates degree in computer science?
An associates degree in computer science will not prepare you to be a computer science professional, but you may be able to use your knowledge about computers to get an entry-level job in the field of information technology. For instance, you could work in tech support or as a web designer.
What about getting an online associates degree in computer science?
An online computer science associates degree is a smart choice for some students. The drawback is that an online computer science associates program will not let you interact with faculty and fellow students as much as a traditional program. But you can often complete online computer science degrees in as little as 18 months, so it is a good option for busy students. If you choose this route, you should look for online computer science associates degree programs that are offered by brick-and-mortar schools. You should also compare the courses that are offered in online programs with the courses offered in traditional programs. This will help you to determine whether your online associates degree program will provide you with the same quality of education that you would get a traditional program.
A bachelors degree is the most common degree for computer science professionals to pursue. Most jobs in the field of computer science require at least a bachelors degree, including entry-level positions as computer programmers.
What are the different types of bachelors degrees that I can earn in computer science computer science?
Bachelor of Arts BA
A BA in computer science offers some technical courses in addition to electives that provide you with a broad education. The BA is a good choice if you want to study fields like law or business in graduate school.
Bachelor of Science BS
A BS in computer science has more science and mathematics courses that give you a strong technical background. The BS is a good choice if you want to enter a computer science graduate program or enter the workforce immediately.
How long will I have to study to earn my bachelors degree in computer science?
Computer science bachelors degree programs require students to complete 120 to 130 credit hours. Most students finish bachelors degrees in about 4 years.
What types of courses will I take while studying for my bachelors degree in computer science?
Bachelors degree programs in computer science will introduce you to computing and mathematics. You will take introductory computer science courses like computer systems, network administration and programming languages. As you become comfortable with computers, you will progress to more advanced topics, such as object-oriented design, data structures and web application development. Finally, you will take classes in advanced mathematics like linear algebra, calculus, physics and statistics.
What types of jobs can I hope to secure with a bachelors degree in computer science?
Bachelors degrees in computer science can lead to entry-level jobs as software engineers, quality assurance analysts, web application developers or computer systems engineers. However, software engineering and developing jobs often require applicants to have 1 to 3 years of work experience in addition to their bachelors degree.
What about getting an online bachelors degree in computer science?
An online computer science bachelors degree is a viable option for students since many brick-and-mortar universities now offer online computer science programs. However, the advantage of traditional on-campus programs is the opportunity to interact with faculty and fellow students. This provides experience in communication and teamwork, which is an important component in many software development and systems engineering jobs. If you do choose to earn your computer science bachelors degree online, you should look for programs that place you in an internship so you can learn these hands-on skills. In addition, you should compare the courses that are offered in an online computer science program to the curriculum of a traditional program to make sure you are getting a comparable education.
A masters degree will set you apart from other job applicants, especially for management positions in corporate IT. It will also often allow you to specialize in 1 of many fields of computer science such as human computer interaction, robotics or software design.
What are the different types of masters degrees that I can earn in computer science?
Master of Arts MA
An MA in computer science technically focuses more on computer theory than on mathematics and research, but it is very similar to the MS. You can use this degree as a step on the way to a PhD if you want to continue your graduate studies.
Master of Science MS
An MS program requires you to study a specialized area in computer science like computer security or software theory. It is usually intended to be a terminal degree. This is a good choice if you want to work in a professional setting.
How long will I have to study to earn my masters degree in computer science?
A masters degree in computer science generally requires students to complete 30 to 45 credit hours. Most students finish their masters degrees in 2 to 3 years.
What types of courses will I take while studying for my masters degree in computer science?
If you pursue a masters degree in computer science, you will select an area of concentration like artificial intelligence, database systems or theoretical computer science. In addition, the courses that you take in your concentration area will be supplemented by advanced coursework in more general computer science subjects. For instance, you will take classes about algorithms, programming, software design and computer architecture.
What types of jobs can I hope to secure with a masters degree in computer science?
A masters degree in computer science can lead to a management job in software or web application development, a high-level position as a systems engineer or a management job in a corporate information technology department. A masters degree may also allow you to teach introductory programming or computer science classes at the community college level.
What should I consider when deciding on a school to earn my masters degree in computer science?
If you are thinking about pursuing a masters degree in computer science, you should investigate the main research focus of the masters degree programs at the schools that you are considering. Many masters degree programs in computer science are professional programs, which means that they are meant to prepare students for a particular career. Not all schools have the funding and resources to offer a concentration in every area of computer science, so you need to look for a school with a strong program in your area of interest.
What are the requirements for admission to a masters degree program in computer science?
Most schools require applicants to masters programs in computer science to hold bachelors degrees in computer science. However, some schools will accept applicants who have bachelors degrees in other fields if they can demonstrate a background in computer science topics through undergraduate coursework in algorithms, programming, data structures and computational theory.
What about getting an online masters degree in computer science?
Many traditional brick-and-mortar schools also offer online computer science masters degrees, which are attractive options for students with little time to study. But if you are considering an online computer science program, you should keep in mind that a drawback to online computer science masters degree programs is that they won’t allow you to interact with faculty or to collaborate with other students in person. Therefore, you should compare the courses that are offered in traditional and online computer science degrees to make sure that you are learning the same material as your peers who study offline.
A PhD in computer science is the most prestigious degree you can earn in this field. This degree is best if you want to perform advanced computer science research at universities, corporate research departments or government agencies.
What are the different types of doctorates that I can earn in computer science?
You can earn a PhD in computer science. A PhD program requires you to conduct intensive original research in a specialized area of computer science like artificial intelligence, computer theory or software engineering. A PhD program also entails completing a dissertation, which is a book-length analysis of your original research.
How long will I have to study to earn my doctorate in computer science?
Students in a computer science doctorate program are typically required to earn 72 to 96 credit hours. Most students complete their PhDs in 4 to 7 years.
What types of courses will I take while studying for my doctorate in computer science?
If you pursue a PhD in computer science, you may take a few required courses in the core areas of computer science, like mathematical theory and computer systems. However, you will also create your own program of study that lets you take advanced courses related to your concentration area. For instance, if you specialize in artificial intelligence, you will take courses like machine learning and robotics. But if you specialize in algorithms, you will take classes like advanced data structures, computational geometry and parallel programming.
What types of jobs can I hope to secure with a doctorate in computer science?
A doctorate in computer science will qualify you to be a computer science professor at a university or a researcher for corporate businesses or government agencies. You will also be qualified for senior management positions in information technology.
What should I consider when deciding on a school to earn my doctorate in computer science?
At the doctorate level, the most important consideration is the school’s strength in your concentration area. Many schools do not have the funding to specialize in every area of computer science, so you should look into the research interests of the professors at the schools that you are considering. You should also investigate the quality of the research labs and facilities that you will get to work with.
What are the requirements for admission to a doctorate program in computer science?
Some doctoral programs require students to have a masters degree, but many allow students with a bachelors degree in computer science or a closely related field like mathematics or information technology to apply to the PhD program directly. If your bachelors degree is not in computer science, you will be expected to show that you are knowledgeable about fundamental concepts of computer science including algorithms, programming, data structures and computational theory.
What about getting an online doctorate in computer science?
Some schools offer online computer science doctorates, but these are generally not a good choice for serious computer science scholars. The main drawback to online computer science degrees is that they provide fewer opportunities to collaborate with faculty and other students than traditional programs. However, some schools offer blended programs that allow students to earn partially online computer science PhDs. These programs are designed so that computer science professionals who are already working in the field can advance their education without interrupting their career. Keep in mind that these partly online computer science programs still require students to attend several sessions on campus each year. You should not pursue a computer science doctorate online unless it offers the chance to work with your peers and professors in person.
What else should I keep in mind when considering studying computer science?
Some computer science professionals choose to get certified in technical specialties like software development or widely used programming languages. Computer science organizations like the Institute of Electrical and Electronics Engineers (IEEE) offer professional certifications after applicants pass exams that demonstrate their skills in these areas. In addition, software companies like Adobe and Microsoft offer certification in their programs. These certifications are not mandatory, but they may help your resume to stand out by proving that you are skilled in a particular area of computer science.
Select a category to find answers to your questions
- Computer Science Salaries
- Computer Science Jobs & Careers
- Graduate Programs in Computer Science
- PhD Programs in Computer Science
- Masters Degrees in Computer Science
- Bachelors Degrees in Computer Science
- Computer Science Schools
- Computer Science Programs
- Computer Science Associates Degrees
- Certificates in Computer Science
- Computer Science Courses & Classes
- Computer Science Colleges & Universities
- Computer Science Degrees