Considering a career in computer science? Maybe you've already started your CS education at a reputable college or university but haven't decided on a specialization? Perhaps you're a recent CS graduate still looking to chart out a satisfying and lucrative professional course? No matter which stage along the professional path you find yourself, it's never too early, or too late, to learn more about your CS career options. If your future is in computer science, this guide is for you.
Head CS Division/EECS DepartmentCo-Founder and Chief Scientific Advisor Narrative Science, Inc.
Department of Computer Science and EngineeringUniversity of Minnesota
School of Computing, Informatics, and Decision Systems EngineeringArizona State University
School of Informatics and ComputingIndiana University Bloomington
Courant Institute of Mathematical SciencesNew York University
Department of Computer ScienceUniversity of Arkansas, Little Rock
“The single best piece of advice I would give a student just entering college would be to commit yourself to learn both the practical and theoretical sides of computer science. This commitment makes you marketable in industry and/or prepares you for advanced study.”Kenji Yoshigoe
The first 60 years of modern computers focused on computing itself, with the last 20 years or so centered on computers as tools for communication. These two “chapters” in computing history have led to entirely new industries and technologies, as well as the fast and furious evolution of computer science as a discipline. Today, it is almost impossible to find an avenue of commerce or professional endeavor that has not been affected by the digital revolution. For professionals in the field, the big questions are: What is the next great chapter in computer science and how can I be a part of it?
As the industry continues to grow and evolve, so will competition for the most satisfying and highest-paying jobs. It is therefore imperative that anyone considering a career in computer science stays up-to-date with current and future industry trends. In this in-depth guide, you’ll find insightful information and useful statistics on specific computer science areas that are in-demand now as well as a glimpse into what will be trending in the years ahead. Also included are helpful hints and advice from experts in the field. Planning is the key to professional success, and the earlier potential computer scientists begin that planning, the better.
“Ideally, students should follow their passion. Maybe that would take them to autonomous vehicles or to computer security. If they haven’t found their passion, I would recommend they pursue a solid grounding in computer systems and software engineering. That will open a lot of doors.”Bruce Porter
One of the best sources for career information is the U.S. Department of Labor’s Bureau of Labor Statistics (BLS). According to BLS data, 74 percent of new STEM (science, technology, engineering and math) jobs through 2022 will be in computing. That’s a pretty general statement, however, and does not apply evenly across the broad landscape of computer science occupations. For example, the BLS predicts that nearly a third of all of those new jobs will be created in the computer science subfield of software development. In fact, the BLS breaks down the computer science field into seven distinct subfields and provides percentage estimates for jobs (in relation to all new STEM jobs) in each as follows:
Nevertheless, no matter what specific area of interest a computer scientist prefers, the job market going forward looks promising when compared to employment statistics across the entire job spectrum. The BLS predicts an 18 percent job growth in computer-related occupations compared to 11 percent for all occupations in total.
Below is a list of specific CS-related careers that are on the rise to provide an even clearer picture of the job market that awaits computer science college students upon graduation. Again, these statistics are provided by the BLS and relate to predicted job growth through 2022.
Salary range: $37,230 - $86,720
Computer science teachers prepare lesson plans and practical exercises to instruct students in computing theories as well as the use of computer software applications. High school teachers work closely not only with students but also fellow teachers and school administrators. Employment at public schools requires studies beyond a bachelor’s degree: depending on the state, teachers may need post-graduate training resulting in a license or a single subject credential to teach computer science at the secondary level.
Salary range: $43,640 - $123,490
Coders use their familiarity with programming languages to transform software designs into computer-readable instructions. For some employers, the level of education matters less than practical skill and specialized knowledge. Programming talent is sought after in a range of industries, including software publishing, health care, and insurance. Programmers work alone or in teams, often communicating electronically with remote colleagues.
Salary range: $27,940 - $85,120
Working in public and private institutions, these educators provide career training at a level above high school, but below bachelor’s degree studies. Some occupational education instructors have professional experience in addition to a two-year degree, for example, an A.S. in computer system engineering technology. Qualifications for teachers vary by subject, school, and state.
Salary range: $45,270 - $117,150
Network administrators manage communications networks, while system administrators keep an organization’s IT infrastructure running smoothly and securely. Sys admins are in charge of equipment ranging from servers to desktop workstations to mobile devices. Admins work with IT managers and staff, computer network architects and other employees. Some companies outsource data storage networks to cloud service providers, but admins are still needed in broad-ranging industries. In addition to computer science, students interested in this occupation can take subjects like computer engineering or electrical engineering, computer networking and systems design.
Salary range: $37,190 - $137,810
Post-secondary computer science instructors develop class plans and materials to teach the theoretical and practical applications of this discipline. Additional responsibilities often include research and academic publishing. Most of these teachers work at colleges and universities, with a smaller number employed at community colleges and trade schools. College professors regularly interact with students, teaching assistants, department colleagues and administrators.
Salary range: $76,420 - $156,560+
Computer science leadership positions range from top-level executives to technical supervisors who oversee day-to-day work in the trenches. Entry-level managers may provide guidance for teams of hardware engineers or software developers, while project managers work with technical and non-technical staff. Chief Technology Officers (CTOs) manage the computing infrastructure for giant corporations. A bachelor’s degree can lay the groundwork for managerial ambitions, along with experience. However, students should consider an MBA in information systems to truly stand out from the rest of the applicant field.
Salary range: $53,920 - $145,700
Network engineers and architects create blueprints for data communication networks, and they design patches for existing infrastructure in response to security threats. Network architects analyze usage to predict organizational needs, often working with managers and CTOs. Given the extensive knowledge involved, employers require at least a bachelor’s degree and may prefer graduate studies in business information systems.
Salary range: $43,720 - $120,990
Database administrators (DBAs) manage vast amounts of data collected in different industries, such as banking transactions, retail chains’ customer records or medical clinics’ patient insurance information. To maintain database performance and security, DBAs rely on their study of information assurance and data warehousing. Some work with management and IT staff to develop new databases. As organizations trend toward â€œbig dataâ€? they may prefer DBAs with a specialized master’s degree, according to the BLS.
Salary range: $18,250 - $67,780
Research assistants harness their knowledge of computer science and statistics to make sense of huge amounts of information. From surveys or lab projects, they gather, analyze and manage scientific data. They work with social scientists in research and development settings or academic environments, as paid staff rather than student assistants.
“Computation is becoming integral to many disciplines ranging from biology, mathematics and psychology, to music and the arts. A great way to succeed in the long run is to build a strong mathematical background, develop a strong understanding of data structures and algorithms and the essentials of programming languages. And have a passion for applying these items in some domain.”Amr Sabry
Salary range: $61,300 - $158,800
In fields such as business, medicine and science, computer and information research scientists use computing to analyze and solve problems. They improve on current technologies or develop innovative computer algorithms to address specific needs. Many work for the government, hardware and software design firms, academic institutions or R&D labs, where they team up with other experts in their area of research.
Salary range: $61,300 - $158,800
Working with massive datasets, these information scientists leverage their academic background in computational statistics. To meet requests from management, they design algorithms and software for data analysis in specific environments. They propose data-supported strategies in areas like public policy, science, business intelligence and medical information management.
Salary range: $48,890 - $187,199
Geoscience, the study of the earth’s physical elements, uses advanced technology like computer modeling, data analysis and digital mapping. Geoscientists depend on specialized software packages as they perform fieldwork and lab research, and computer science grads who also study geology can aim for this profession. Working in industries such as government or oil and gas extraction, these scientists share their research with clients and coworkers.
Salary range: $29,260 - $86,110M
Support specialists offer high-tech trouble-shooting in a range of different environments, from government agencies to industries like telecommunications and computer manufacturing. User support specialists provide customer service for the public, often from call centers, or work in a company’s information technology (IT) department helping other employees. Computer network support specialists focus on issues with data and communications networks.
Salary range: $33,320 - $110,350
Salary range: $63,140 - $150,760
Systems software designers generally find employment with computer and electronics manufacturers, working on teams to develop new technology. The products in development include operating systems for uses ranging from computers to smartphones to cars. These developers may also invent a system’s interface, such as a graphical user interface that permits a human to control a computer.
Salary range: $55,770 - $143,540
Software developers invent applications targeting specific purposes, from online marketplaces to entertainment apps for mobile devices. Applications range from the small scale to the enormous, as in databases constructed to meet the needs of specific companies. Some developers need not only in-depth familiarity with programming languages but also knowledge of an industry and its operations, for example, financial transactions or health informatics.
Salary range: $50,290 - $125,460
Computer systems analysis zeroes in on the information technology (IT) used by a specific organization. Analysts take into account factors such as user requirements, workflow and IT capabilities. After evaluating the existing technical infrastructure, analysts suggest efficiencies and improvements. This occupation requires an understanding of a specific field like banking or health information management. Analysts work with managers and IT departments, and they may also train employees on new systems.
Salary range: $42,070 - $130,210
Operations research analysts help executives and management solve problems and create data-driven strategies in fields like finance, government and manufacturing logistics. They often work with a multidisciplinary team of industry specialists. Analysts take advantage of quantitative methods, statistical software programs and data modeling packages to monitor an organization’s processes and find potential improvements. Many applicants for this specialty have a master’s degree in a subject such as computer science.
Salary range: $33,490 - $114,250
Market research analysts use sophisticated statistical methods to advise companies on marketing and business plans. They evaluate data on consumer trends and competitor strategies to devise proposals for introducing and pricing new products. Analysts share ideas with clients and managers, and they may also gather opinions from the public. A computer science degree is common in this data-focused field, and a master’s degree is often preferable for higher-level positions.
Salary range: $50,430-$138,780
In a networked world, these professionals play an important role in protecting organizations. They examine existing IT systems and propose security measures, including fixes for vulnerabilities. In industries like finance and cloud computing services, they serve as in-house staff or consultants. Security analysts cooperate with network administrators and computer systems analysts, and they often report directly to CTOs or IT managers. Due to the wide-ranging expertise needed, some employers opt for candidates with graduate degrees.
“The biggest thing about computer science is that it’s going to continue changing rapidly, so I think learning the basics is important, but you’re going to have to assume that the technical base you are working with when developing new technologies in the future is not going to be the same as the one you are using now.”Larry Birnbaum
The field of computer science is constantly evolving and some of today’s most in-demand careers didn’t even exist a decade ago. Today, it’s all about programming and cyber security, but will that still be the case five or ten years from now? The following list of trends in computer science has been compiled after speaking with CS experts in both the academic and business worlds. They represent a broad consensus of opinions and provide a good overview of where the field is potentially headed.
While the careers listed below are intended to help CS professionals explore promising and cutting edge job options, it is important to note that several of our experts warned against depending too heavily on trends when charting out your CS education and career path. The future is unknown, and that is particularly true when it comes to the rapidly morphing digital world. Therefore, while our experts speculate that the following areas will be in-demand in the future, they also emphasize the importance of a strong educational foundation in computer science fundamentals, especially at the undergraduate level. A host of websites publish college rankings that can help students find both quality and affordable computer science degrees in their area of interest.
Human-computer interaction (HCI) professionals and UI median annual salaries come in at an estimated $61,000 per year, according to PayScale.com. However, salaries can increase rather significantly with education and experience. For example, user interface engineers, a step above UI designers, earn a reported $76,000 annually.
Companies hiring HCI graduates include Electronic Arts, Apple, Microsoft and a variety of computer game designers and manufacturers. Any company involved in the touch screen, application interface, and video game markets is also on the lookout for HCI-skilled workers. HCI-related job titles include:
As you might expect, software engineers and computer programmers are in demand by businesses and other organizations of every type and size, and not just those that fit strictly under the heading of computer technology. The top employers for software developers, however, are tech-focused companies with well-recognized names such as Google, Facebook, Twitter, Apple, Oracle and Microsoft, as well as many that may be less familiar, like Sparc, Kony and Zurple. Remember, though, there are probably thousands of potential employers for skilled software developers.
The range of titles for software development professionals is as broad as the field itself. Common titles that job seekers may encounter:
Other more specific titles include computer game developer, systems programmer, e-business software developer, and dozens of others. According to BLS projections, job growth in the field should increase by 22 percent between 2012 and 2022, much faster than the average for all occupations. National median annual wages for software developers, systems software in May 2013 were slightly over $100,000, while software developers, applications earned over $92,000 during the same period.
Although specific statistics regarding remote and cloud computing job opportunities are difficult to come by, a look at the numbers related to computer science and information technology employment may provide a good idea of where cloud computing is heading. National median annual salaries can be expected to fall within the $70,000 to $90,000 range with job growth between 20 and 25 percent over the coming decade, according to the BLS. Top employers for remote and cloud computing professionals include well known companies like Google, Amazon, AT&T and Microsoft, as well as less recognized names like SoftLayer, Rackspace and Salesforce.com. Job titles for remote computing specialists predictably have the word â€œcloudâ€? in them and include the following:
Computer security and privacy issues arise in every corner of the digital world and cyber attacks are becoming more and more commonplace. As a result, information security professionals can be found just about everywhere. Government at all levels, businesses, and non-profit organizations need expert advice in securing their data resources. Top employers in computer security include Cisco Systems, BAE Systems PLC, Computer Sciences Corporation, Intel, Lockheed Martin, Symantec, Raytheon, Hewlett-Packard and the National Security Administration.
According to the BLS, salary potential and the job outlook for the computer security field is positive. May 2013 statistics indicate a national median annual salary for information security analysts of $88,590, with some industry sectors (such as finance and insurance) trending higher. Job outlook predictions in the field are strong, with the BLS forecasting 37 percent growth between 2012 and 2022.
There is a rapidly growing demand for trained data scientists across the employment spectrum. Industries hiring data scientists include business and finance, e-commerce, government, healthcare, telecommunications and social networking. Some of the companies currently hiring data science professionals include Facebook, PayPal, Google, Trulia, Autotegrity, Intuit, McGraw-Hill and Capital One. Job titles in the data science field often contain the word â€œanalytics,â€? such as chief analytics officer, director of marketing analytics and chief scientist-predictive analytics applications.
Given the newness of the field, salary figures specific to data science can be hard to come by. With the current high demand for data science professionals, graduates with a bachelor’s degree in data science may attract offers at the upper levels of the computer science field. National median annual salaries for computer scientists are currently in the neighborhood of $80,000 to $90,000. Master’s and doctorate degree holders may do even better.
“Machine learning, data mining, knowledge extraction from data as a field clearly is making huge advances. There’s a huge demand for students who want to learn it. You see this a lot in the biomedical space, but there is also demand from folks in industry. There was a rush where people gathered immense amounts of data and we’re just beginning to catch up with trying to figure out what you can do with it.”Joseph Konstan
The salary projections and job outlook for robotics engineers depends on how you approach the profession. For instance, the BLS includes robotics engineers under the broader heading of mechanical engineers. From that perspective, one might conclude that job growth for robotics professionals will be sluggish over coming decade with just a 5 percent increase. Other industry experts, however, predict healthier job prospects in the field.
Estimated salaries for robotic engineers also fall somewhere between median annual salaries for mechanical engineers and computer scientists ($80,000 to $90,000).
Businesses hiring robotics-skilled workers include major manufacturers in the auto and aeronautics industries, as well companies like Dyson, Elbit Systems, Autonomous Solutions, Amazon, 3D Robotics, Bosch and Caterpillar. Job titles in the field include:
Jobs in the artificial intelligence field often come with titles that don’t explicitly indicate an AI specialization (like software developer or software engineer), so make sure to read the job description carefully. Others do indicate an AI connection, such as user experience designer, UI programmer and android engineer. Top employers for AI professionals include the usual suspects like Microsoft, Apple and just about any computer game company you can think of. Graduates may also want to contact the companies listed above under in this guide’s robotics section. There’s one other big employer of AI workers: the U.S. government.
The BLS includes AI professionals under the broader heading of computer and information research scientists, for whom job growth estimates come in at 15 percent between 2012 and 2022, slightly under estimates for computer occupations in general, but substantially higher than those for all occupations. National median annual salary estimates for the same group are encouraging at $102,000 for 2012 significantly better than for all computer occupations combined ($76,270).
“We find that a large number of our students, especially the better students, pick up jobs or internships when they’re qualified, which generally means in their junior or senior year. So they’ve already started taking courses that will help them out in terms of the job.”Tim Lindquist
It is easy to see that the computer science field has become too broad to easily define. It has become so fully integrated into every facet of human culture that it is almost impossible to separate it out from any other activities. This is good news for those interested in computer science as a profession. What it means is that whatever talents an individual possesses, or wherever a person’s interests lie, there is the potential for building a solid and lucrative career. Which raises an enticing but nevertheless difficult question that must be answered: With so many options, how does the prospective computer scientist determine which one best suits his or her unique talents and interests?
Below are some of the most important factors that CS students and graduates should think about:
It’s easy to get lost in trying to define the lifestyle you want. The first problem is that you have to know what you want, and that’s not an easy thing to do, especially when you are young and getting your first taste of independence. But it is important to give it some serious thought since career and lifestyle are so inextricably connected. Consider elements such as family, social interests, environment (big city vs. small town, for example), stress, workload, etc. Remember, once established, it can be difficult to change a career’s direction or focus. Don’t make the mistake in believing that a job’s effect on lifestyle will change as the years go by.
While many skills are necessary for all CS specializations (critical thinking and math, to name two), there are plenty of others that are much more subject oriented. For example, software engineers need lots of code-oriented skills such as working effectively with existing code (internal infrastructure, third-party libraries, etc.) and the ability to code in multiple languages. Robotics engineers, on the other hand, will find the need for skills such as engineering design processes, materials analysis techniques, the ability to work with CAD systems, as well as the ability read and create schematics and blueprints. The key to developing the right skills is determining the ones most needed for each specialization under consideration and seeking out the classes and training required to develop those skills. In doing so, most students quickly discover which ones are easiest to obtain and are the most interesting to them.
After carefully examining all of the above factors, it’s time think about current and future trends in the computer science world. This may sound contradictory to discussions in other parts of this guide, but it really isn’t. Yes, it’s true that trends in a rapidly growing and transforming field can change at a moment’s notice, and yes, it’s wise to gain a solid foundational education in the CS basics. But at some point all computer scientists have to focus on a specialized area of the profession, and knowing where the jobs are now and where they likely will (and will not) be in the future is important. Besides, it never hurts to get a leg up on the inevitable competition.
Finally, let’s not forget about financial stability. On the whole, computer science-related occupations pay pretty well and, due to the increasing demand for skilled computer scientists, good salaries are bound to remain for years to come. Nevertheless, salaries within the CS field vary significantly from specialty to specialty, so it’s important to get a clear picture of the lifestyle one wants to create and its corresponding cost when choosing the right CS career.
Anyone out there in the job marketplace today, especially those looking for work in the tech world, are undoubtedly hearing the term “soft skills” a lot. But just what are soft skills exactly and why are they important? Soft skills can be defined as those personality or character traits that relate to a person’s emotional intelligence quotient (EQ) as opposed to his or her regular intelligence quotient (IQ), which is more closely associated with more traditional abilities, or “hard skills.” While they may have more to do with personality and character than hard skills, soft skills can be learned and developed, which is a good thing since more and more employers are placing greater and greater significance on them. They’re quickly learning that employees with well-developed soft skills are substantially more valuable than those without. According to experts, top soft skills for computer scientists include:
At the top of the list are communication skills, both oral and written. Employers in the tech market today bemoan the fact that many otherwise well-educated CS graduates lack even minimally acceptable competence in writing and speaking. The ability to listen and comprehend instructions and directions is equally important. The days in which techies were only required to sit alone in a room and design software are over. Digital technology is big business and tech companies have large work forces whose members must be able to create and design products as a team, and that requires real communications skills on all levels.
Closely related to communication are managerial and delegation skills. All large corporations, and most small ones for that matter, develop multi-level management structures that require employees to take leadership positions and delegate work to effectively and efficiently complete projects. This requires professionals to understand the strengths and weaknesses of their colleagues and be able to trust them to carry out the tasks they are assigned.
Teamwork is important, but just as important is the ability to overcome problems and complete work without being micro-managed. The worn-out terms “self-starter” and “thinking out of the box” fit here. Other important terms fit as well, including resourcefulness, creativity, enthusiasm, independence, critical thinking, problem solving, flexibility and adaptability, working well under pressure and a strong work ethic. Taken as a whole, these skills add up to an employee who can be trusted to produce quality work without someone constantly looking over his or her shoulder.
Everyone knows what networking is, but not everyone is good at doing it. Those who are, however, hold a distinct advantage over their colleagues with less developed social skills. Computer scientists who attend industry conventions, speak at career days and educational events, and represent themselves and their company at public and chartable functions will almost always reap benefits from their involvement, if not immediately, at sometime in the future.
There are, of course, many other valuable soft skills such as self-confidence, effective time management, patience and even a sense of humor. All of these traits will make professionals more attractive to employers and more valuable as employees. Best of all, they can all be obtained with a bit of practice.
With the industry booming, there are plenty of well-paying CS jobs available, even at some of the most prestigious and competitive companies. Graduates, however, cannot simply sit around and wait for the job offers to roll in.
Well-qualified graduates are those who have been planning their careers throughout their college years by getting good grades, landing a top internship, and making the right connections. So how does a recent computer science grad set himself or herself apart from all the other well-qualified job seekers? The following are a few tips and recommendations for doing just that:
The best employers are good community members and like their employees to be the same. Volunteering time with a local charity or non-profit is the perfect way to show it. The work doesn’t have to relate to computer science, but it certainly helps. There are plenty of charitable organizations that need assistance of a technical nature, like designing or maintaining a website. What’s most important is that you participate in making your community a better place to live.
Starting a small business, developing a product of your own, or simply establishing a presence online with a website or blog is a great way for a job candidate to show initiative and enthusiasm for his or her chosen field. Employers love this. It’s a great way to check off several of the “soft skill” boxes on a corporate recruiter’s must-have list. Just remember, starting isn’t enough. There has to be follow-through or the would-be entrepreneur will come across as just that: a would-be.
Top companies in the tech world have an international presence, so it’s no surprise that multi-lingual job candidates have it all over their one-language counterparts. Speaking one or more foreign languages will not only help in landing a great job, but it can also do wonders for professional advancement.
And write well, also. This goes back to the soft skills listed above. The ability to express oneself clearly and professionally is essential in any job. So, don’t take a pass on that college English Comp class or underestimate the value of a writing course.
Privacy is a lot harder to come by these days, but it’s not gone entirely. And make no mistake, an employer seriously considering a job candidate is going to check out that person’s online presence before making an offer. Job seekers should beat them to the punch by finding out what a Google search will turn up on them and preparing for any potential damage before their interview. It’s also a very good idea to set your Facebook privacy setting to “friends only.” Recruiters are bound to check there, too.
Below is a list of computer science career-related websites for additional information and help with job hunting:
|American Academy for Advancement of Science (AAAS): Careers||GitHub|
|American Medical Informatics Association: Career Center Jobs||INFORMS Career Center (ICC)|
|Association for the Advancement of Artificial Intelligence (AAAI)||Institute of Electrical and Electronics Engineers (IEEE)|
|Association for Computing Machinery (ACM) Career & Jobs Center||The National Academies|
|Association for Women in Computing (AWC)||National Association of Programmers (NAP)|
|CareerOneStop||National Board for Certified Counselors (Career Counseling)|
|Career Cornerstone Center||National Science Foundation Research Experiences for Undergraduates|
|Computer Science: A Guide to Web Resources (University at Albany-SUNY)||Society for Industrial and Applied Mathematics (SIAM): Careers & Jobs|
|Computing Research Association (CRA)||Society for Technical Communication: Job Bank|
|Engineer.info||U.S. Bureau of Labor Statistics|