Computer science is a broad discipline that sources define in varied ways. Merriam-Webster, for one, calls it "a branch of science that deals with the theory of computation or the design of computers."
Computer science encompasses the study of both computers and computing, which can be broken down into a vast web of practical and theoretical disciplines. Most people associate computer science with fundamentals like hardware configuration and network design and advanced fields like artificial intelligence and machine learning.
Comp sci as a field, however, has its foundations in math, physics, and engineering. According to Nobel physicist Richard Feynman, it's most like the last of these; he once observed that "Computer science is like engineering; it is all about getting something to do something, rather than just dealing with abstractions." Some computer scientists work with quantum-mechanical phenomena or study abstract machines.
Computer science jobs can be found across disciplines. Software developers with bachelor's degrees tweak databases for retailers. Blockchain experts with master's degrees in computer science make business transactions safer for large corporations. Data scientists sort through the quintillions of bytes of data humanity generates each day. Artificial intelligence researchers labor in labs worldwide, exploring everything from ethics in robotics to how autonomous intelligent systems can be used to enhance medical care. And as technology continues to advance, new computer science jobs are created across fields.
What most computer science careers have in common are optimistic growth projections and relatively high salaries. If you have an aptitude for math, statistics, and problem-solving and you're looking for career stability, you'll find lots of options in comp sci.
In this article about computer science jobs, we cover:
Computer science is a tech field with applications outside of tech, making this a tough question to answer. Computer scientists work in the technology sector and research but can also be found in business, healthcare, education, entertainment, government, and other fields. The demand for efficient and secure digital services transcends industry because everyone from corporate professionals to presidents is hoping to leverage technologies like:
You can be reasonably sure the need for qualified computer science experts will grow as technology evolves. If you're dreaming of working at one of the top Silicon Valley technology firms—and you have the bona fides—you can make that happen. However, there are also plenty of jobs out there for people whose passions extend beyond tech.
"For people who study computer science, it's a great, great time, and essentially the sky's the limit," Salvatore Stolfo, a professor of computer science at Columbia University told U.S. News & World Report.
There are so many types of computer science jobs that creating a truly comprehensive list would take more space than we have here. Computer science jobs can often be slotted into different categories, however, like:
This is by no means an exhaustive list. Within each of these categories are subcategories of computer science jobs.
Demand for computer scientists and other comp sci professionals is high and so computer science salaries are also high. In some sectors, there are more open positions than qualified applicants to fill them, which drives salaries higher and makes careers in computer science more secure than most. The US Bureau of Labor Statistics (BLS) predicts that this demand will grow at a rate of about 15 percent through 2029 as more than 500,000 new tech jobs are created across industries.
There's a good chance the BLS's projections might underestimate the growth in demand. That's because we haven't even scratched the surface of what technologies like data engineering, artificial intelligence, cloud services, and robotics can do.
The outlook for computer science jobs is strong. The two questions you need to consider are which categories show the highest growth now and which will show the highest growth in the future. The BLS predicts that jobs for software developers will grow at a rate of 22 percent and jobs for information security analysts will grow at a rate of 31 percent—higher than the average across computer science occupations. Jobs for network and computer systems administrators, however, may only grow at a rate of 4 percent, even though network administrator is one of the most in-demand tech jobs of the moment.
As you look at computer science jobs, you must consider your interests, how much you want to earn, your highest level of education, and whether the next big thing will actually be the next big thing. Cyber security is hot right now, for example, but technological changes could disrupt the existing cyber security landscape. Some sources predict that the growing technology skills gap could leave more than 4 million tech jobs unfilled worldwide by 2030, which is good news for aspiring computer scientists. Whether those open positions will be in software development, cloud computing, robotics, or research remains to be seen.
Entry-level jobs in computer science attract newly minted comp sci degree holders and candidates with a few years of professional experience. These positions sometimes include terms like junior, associate, or staff in titles (e.g., junior developer) but may include no modifier at all (e.g., developer).
There aren't many entry-level computer science jobs at big tech firms, which typically prefer to hire experienced computer scientists or people whose demonstrable brilliance makes up for their lack of experience. Silicon Valley is not hiring the bulk of recent CS grads. It's much easier to land an experience-boosting entry-level position in computer science at a smaller company or a startup. Salaries for entry-level jobs aren't staggeringly high, but they're not bad. According to PayScale, you can earn $65,000 with less than a year of experience if you have the right skill set.
One way to gain experience before you graduate from a computer science degree program is to work in one of the many student tech jobs. These aren't high-profile positions, but rather a way to get your foot in the door (and learn programming languages and computing skills) while you're still pursuing a comp sci degree.
You might work as a:
Your first post-graduation job title will depend on whether you earn a bachelor's degree in computer science or a computer science master's degree. It will also depend on your specialization. Most computer science degree programs let students choose a specialization or design a custom specialization through their choice of electives.
Popular specializations include:
There's considerable disagreement over whether it's possible to work in computer science without a degree because computer science is such a vague term. You can work in applied computer science without a diploma, but it's harder to launch a career in theoretical computer science without at least a master's degree in comp sci.
Plenty of programmers, engineers, database specialists, and network architects never saw the inside of a classroom after high school. It's much less likely that you'll be able to work in research, cryptography, machine learning, or quantum computation without an advanced degree, however. For that, you'll need a master's. Luckily, there are computer science graduate program for non-CS majors, on-campus and online.
Landing a computer science job with no experience won't be easy—even if you have a degree. A Master of Science in Computer Science isn't the resume-booster it once was, so don't expect to land a mid-level position in tech just because you have one unless you also have the work experience to back it up.
You may even face stiff competition for entry-level computer science jobs. "Every time I look at job application posting on LinkedIn, it shows that for an entry-level position, there were like 30 percent applicants with a BS and the rest are people with master's degrees," one Reddit commenter wrote on a thread about the declining value of master's degrees in comp sci. "It blows my mind that I'm competing for an entry-level position with people with master's degrees."
The good news is that you can take steps to mitigate your lack of experience, even if you don't have a degree. Step one is to hit the books. You don't necessarily need a degree to advance in tech, but you will need knowledge and a portfolio. You can learn a lot from boot camps, free online courses, and sites like StackExchange, and then tackle a few projects on your own to show employers you have basic CS skills.
It might be better to ask, 'What can't you do with this degree?' Computer science is a part of every industry in the modern economy, from retail to manufacturing to telecommunications. Your drive plus a computer science degree can help you find work in almost any field. However, where you start and how far you can advance may depend on what kind of computer science degree you have.
Computer science is a part of every field, but your chosen specialization or concentration will dictate the jobs for which your degree will qualify you. Most CS specializations fall into one of two broad categories: applied computer science (which uses computer systems to meet practical needs) and theoretical computer science (which explores the limits of computation and algorithms).
It's easier to find work in applied computer science with an associate's degree or a bachelor's degree. To work in theoretical computer science, you'll probably need a master's degree or a doctorate in computer science.
There are many entry-level and junior tech jobs that you can do with a CS associate's degree. Whether those jobs fall under the umbrella of computer science is debated all over the internet, but all of them can lead to more advanced professional opportunities in the future. These include:
Associate's degree holders in the computer science world don't earn much more than the average salary associated with this level of degree—about $45,000—unless they have years of experience.
There are well-paying positions for Bachelor of Science in Computer Science grads, including:
You won't earn as much with an undergraduate computer science degree, but you won't go hungry, either. The median annual salary for MSCS graduates is about $102,000 while the median annual salary for bachelor's degree holders is a still respectable $85,000.
You'll probably need a graduate-level computer science degree to advance into the highest-paid positions in the computer science world (which we list below). Even if you're not interested in joining the ranks of management, however, a master's degree can be an asset. You'll earn more, regardless of title.
Georgetown University's College Payoff report found that computer engineers with master's degrees typically earned $300,000 more throughout their careers than those with bachelor's degrees. And when Forbes ranked graduate degrees by potential salary increase, computer science master's degrees offered the second-biggest bump. You'll also be a more attractive job candidate since more people are earning computer science master's degrees online and on-campus.
There are only a handful of computer science doctoral jobs. Having a PhD in Computer Science is most useful for those who want to go into research or academia. "If you want to go into research... then it's difficult to do so without a PhD," Greg Law, co-founder and CTO at the Undo software company, told US News & World Report in the article linked above. "But beyond a research role... I don't feel a PhD opens up any opportunities that would otherwise be precluded." That said, if you have the means to pursue a computer science doctorate and feel driven by curiosity to do so, a CS PhD won't shutter any doors.
Computer science degree salaries are higher than the national average across the board. The highest-paying computer science jobs, however, tend to be in management and are routinely filled by not just computer nerds, but also MBAs. These directorial and executive positions include:
Whether these roles appeal to you may depend on your interests and your temperament. If you love coding and don't want to leave the programmer bullpen behind, senior engineer roles will pay almost as well and be a better fit. The jobs above are best suited to those who dream of becoming decision-makers.
It's relatively easy to work from home with a computer science degree, and computer science jobs are also some of the best-paid remote jobs because they involve skilled work. Computer science is widely regarded as one of the first fields to welcome telecommuters, and there are still plenty of remote computer science jobs. Entry-level roles include help desk technician and junior programmer, but there are also higher-level remote opportunities for cloud network engineers, server administrators, and other computer specialists. Some computer science jobs require access to on-site hardware, laboratory facilities, or other specialty equipment, but most can be accomplished remotely with nothing more than a personal computer and a good internet connection.
You can work part-time in computer science jobs, but you may not earn as much per hour as your colleagues who work full-time. Big tech firms (some of which we'll look at below) are the least likely to offer part-time computer science positions. If you want to work part-time or your circumstances demand it, you will find more part-time openings at small, local companies. However, some experienced computer science professionals earn more working less than full-timers because they can land high-paying consulting gigs.
Many computer science majors enroll in bachelor's degree and master's degree programs because they want to work for the big Silicon Valley tech giants. The companies below attract top talent because they pay a lot and offer great benefits. They also launch careers. These firms are the first to snag emerging talent from top-tier colleges and universities.
Working at Google is literally a dream come true for many comp sci grads. It's still one of the world's most desirable companies to work for because it pays well, has a relaxed atmosphere, and offers its workers a lot of flexibility when it comes to working arrangements. It stands apart from other big tech firms for hiring more PhDs than is typical. Average Google salaries range from about $70,000 to $170,000.
It doesn't seem to matter what's happening in the global economy—Amazon's workforce just keeps growing. Amazon is still the world’s largest e-commerce company, but what many people don't know is that the retail side of Amazon isn't as big as the computer services side. Tech positions at Amazon pay well, with top salaries ranging from $100,000 to $170,000, even though median pay across the company is less than $30,000.
Microsoft hires both recent CS grads and experienced computer scientists to work on AI and quantum computing projects. There was a time when the company was known for its cutthroat culture that encouraged competition among colleagues, but nowadays, teamwork is emphasized, and the atmosphere is less stressful. Many tech positions at Microsoft pay around $150,000.
Apple is generally regarded as a great place to work thanks to generous benefits and high salaries. Software engineers and design engineers at Apple can earn over $150,000. An added perk: discounts on Apple products.
Many people are unfamiliar with the Computer Sciences Corporation (CSC), but it's one of the largest employers of computer scientists in the world. The firm outsources computing services to commercial or government clients in numerous countries from its company headquarters in Falls Church, Virginia, just outside Washington, DC. Because CSC hires employees at so many levels, it's hard to generalize about average salaries. Pay for senior CSC employees tends to be similar to that of workers at other big tech firms.
The federal government is one of the largest employers of computer and information research scientists in the United States, according to the BLS. State and municipal governments are also adding jobs for computer scientists as more municipal services go digital. Salaries for many government jobs are based on easy-to-understand salary schedules, so you can easily find out how much you'll earn at different pay grades.
The Federal Bureau of Investigation hires CS professionals with bachelor's degrees and above to work on federal cyber security and counterintelligence investigations that include cyber security threats, terrorism, and fraud.
NASA has competitive internships for undergraduate, graduate, and PhD computer science students and positions for experienced software engineers. Keep in mind, however, that developers, data scientists, and computer experts are support staff at NASA. You may have an easier time working for NASA as a contractor.
The National Security Administration handles large volumes of data and has an ongoing need for computer experts specializing in network operations, information assurance, vulnerability discovery, and data management. Positions at the NSA often involve working with classified information.
The US military has a wide variety of tech needs. Computer experts work with large-scale hardware devices, software, and data. The Air Force is a significant employer of computer scientists, but there are positions for CS grads in all military branches. Tch jobs in the military don't typically pay as much as civilian jobs until you hit an elevated pay grade.
The Navy uses advanced computer networks to control tactical systems and battle enemies who want to sabotage American military operations. This branch employs Cyber Warfare Engineering (CWE) Officers who defend military computer systems and gather intelligence.
The Army employs many computer experts in intelligence, technology development, and combat operations. Information Technology Specialists, for example, maintain and troubleshoot military computer systems. Data scientists in the Army analyze information to help commanders make decisions. Some computer engineers work with Infantry, Armor, Artillery, and Aviation on emerging tech.
Some aspiring computer scientists dream of working in Silicon Valley, but eight of the most expensive markets are in the Valley—and plenty of companies known for hiring CS grads are not. Many people don't realize that nearly all the major metro areas in the US have jobs for computer scientists. Some large employers are even headquartered outside of major metro areas. We've created a roundup of the best cities for computer science jobs below.
Software program engineers and other CS professionals earn more than $119,000 annually in Atlanta, which is home to a growing number of technology companies. There is a thriving startup scene in Atlanta, with many Fortune 500 companies headquartered here (e.g., AT&T, UPS, Delta, Coca-Cola). Tech companies in Atlanta don't tend to offer the big-ticket perks that Silicon Valley companies do, but the corporate culture tends to be less intense.
Austin is a hot destination for computer science professionals because average salaries are around $118,000 but the cost of living is relatively low. That may be why so many tech professionals are moving away from Silicon Valley and landing in Austin. Companies like Google, Facebook, Atlassian, and Oracle have outposts here, and Apple will join them soon. Tech's prominence in Austin is nothing new, however. IBM has been in Austin since the 1930s, and the city has been a hub of computer research since the 1980s.
Boston is one of the top US tech hubs in the US and a great place to work for CS professionals interested in EdTech and MedTech. While the heart of the city is home to many tech companies and financial firms (and computer science schools), there are also tech-adjacent companies like TripAdvisor and Bose headquartered well outside the city, where rents are lower. Average computer science salaries in Boston are around $136,000.
Computer science salaries in Charlotte are more than double the local average wage, making it an attractive destination for tech professionals. Considered by many to be the startup capital of the south, this relaxed tech hub and banking center may not be the most lucrative destination for comp sci professionals, but the pay is still solid. Come here after earning a computer science degree, and you might work for LendingTree, Bank of America, or AvidXchange.
All the major internet-based tech companies have large offices in Chicago, making it a good option for CS grads who want to work for high-profile companies like Facebook, Salesforce, and Amazon. There are also healthcare firms and big banks in the Windy City. Living in Chicago isn't cheap, but while the cost of living is lower here than in Silicon Valley or New York City, salaries are comparable. The average salary for computer science jobs is about $128,000, and some positions (e.g., data science director) pay a lot more.
People associate Texas with the energy industry, but companies as diverse as AT&T, Goldman Sachs, Match.com, and Capital One all call Dallas home. Tech employment is booming here, and surprisingly, Dallas is now the number two city in the US for tech professionals. Average computer science salaries here may not quite hit $120,000, but adjusted for the cost of living, that's plenty.
Google has a campus in Denver, and more than a few Silicon Valley companies have moved their operations to this Colorado city. Strava, Thanx, and Mindflash are all here, drawn by investors and VCs, a robust talent pool, and a sustainable business environment. Computer science professionals in Denver earn $121,000 on average, often in health technology or telecommunications. There are also plenty of companies with customer-facing apps that call Denver home.
Houston is home to energy companies, aerospace firms, and large medical centers—all of which employ thousands of computer scientists in roles ranging from software engineer to cyber security analyst. According to Payal Patel, Director of Business Development at Station Houston, a technology innovation and entrepreneurship hub, Houston has the "second-highest concentration of engineers in the US working in industries like oil and gas, aerospace, and construction." Shell, Chevron, and JP Morgan Chase are some of the largest employers in the city, but there are also plenty of tech startups looking for talent. Salaries in Houston aren't chart-topping, but the cost of living is relatively low.
Las Vegas has been ranked one of the top up-and-coming tech talent markets in the US. Google and Amazon have outposts here, and there's been an influx of tech talent coming to Vegas from the Valley. Computer science salaries in Las Vegas are comparable to average tech salaries in other growing cities. Las Vegas is home to tech firms focused on gaming, software development, data storage, and self-driving cars.
Los Angeles (aka, Silicon Beach) has flourished as a tech hub as more and more technology firms have opted to settle outside the Valley. There are startups and big tech companies here, but computer science professionals in LA also work in entertainment, media, fashion, sports, and finance. Top employers in the city include Kaiser Permanente, Northrop Grumman, and Fox Entertainment Group, though many startups also call Los Angeles home. Salaries for programmers and other CS grads are higher here than in some other locales on this list, but housing prices may eat the difference.
This ambitious city hasn't always been a draw for technology companies, but it has emerged as a startup hotspot rivaling NYC and LA in recent years. Because of its large Latinx population, many multinational companies headquarter their Latin American operations here (e.g., Cisco, FedEx, Microsoft, Yahoo, and Oracle). Engineers, analysts, and admins can find work in biotech, finance, corporate services, real estate, and entertainment. Salaries average out to about $117,000—a figure that goes a lot further in Florida than it does in many other emerging tech hubs.
New York City is a significant banking and financial services hub. There are also numerous digital media companies in and around Manhattan (including in nearby New Jersey). The largest tech employers in the city include not only companies like IBM and Google, but also firms like Intercontinental Exchange, Major League Baseball Advanced Media, and Bloomberg. Hiring for software development roles is growing. Computer science jobs in NYC pay close to $125,000.
The average computer science salary in Philadelphia is about $129,000, the real estate is affordable, and the Philly tech scene is booming. Organizations like Ben Franklin Technology Partners have brought tech companies to the area by offering incentives. As a result, Philadelphia is home to large, established companies like Comcast and up-and-comers like Gettacar. The Philadelphia Stock Exchange also employs its share of computer science professionals.
Austin gets a lot of press, but San Antonio has topped it on lists of up-and-coming tech markets in the US. Top employers here include Clear Channel Communications, Kinetic Concepts, NewTek, AT&T, Boeing, Lockheed Martin, Medtronic, Chase Bank, and Wells Fargo. It's a great destination for CS professionals interested in energy or healthcare, though there are fewer openings for new grads here than elsewhere. Mid- and senior-level developers and analysts will do better here, where average salaries are around $116,000.
San Diego ranks ninth in the nation for its concentration of tech jobs and is one of the top technology hotspots in the United States. Companies like Qualcomm, Nokia, LG Electronics, Kyocera, and Cricket Communications all headquarter here, and computer scientists work in industries as varied as defense and entertainment. The upside is that jobs are plentiful, but the downside is that wages are relatively low given the cost of living.
Silicon Valley is technically located in the San Francisco Bay Area, but the Golden Gate City isn't part of the Valley. There are many jobs for computer scientists here, however, at companies like Benchling, Sensor Tower, and CircleCI, along with retailers like Gap and firms like General Electric. Comp sci salaries in San Francisco are relatively high. It's a city you should explore if you love the startup life.
Seattle is famously home to Microsoft, and the arrival of Amazon created thousands more local jobs for software engineers, network architects, and other computer science professionals. Google, Facebook, and Oracle have satellite offices in the area. There are also plenty of banks, insurance companies, and other non-tech businesses in need of programmers, analysts, and IT professionals. Startups here are more likely to be well-funded and run by established computer scientists. Computer science salaries are high in Seattle, but so is the cost of living.
Big tech companies like HP and IBM operate in DC, as do EdTech companies like LexisNexis and plenty of federal government jobs. It's not unusual, however, for computer science jobs in Washington, DC, to target contract workers, so this might not be the best destination for those seeking career stability. If you want to try your hand at comp sci jobs in a variety of industries, pad your resume with compelling accomplishments, and potentially earn more than $130,000 annually, this is a great place to be.
Computer science jobs exist in every major city, include entry-level and executive positions, and pay pretty well. You don't have to relocate to Silicon Valley or work for one of the big tech giants. When the Forbes Technology Council put together a list of the top industries in need of computer science professionals, most were not fields typically associated with technology. And if you want to work remotely after earning a degree in computer science, you probably can.
It sounds almost too good to be true because comp sci isn't for everyone. People who do it for the money alone quickly find that they're stressed or bored or in over their heads—and ultimately, they burn out. As long as tech is driving business and innovation across fields, salaries in computer science will be high, but you'll be happiest on this career path if you choose it for the love of the discipline.
Questions or feedback? Email email@example.com