Thinking about graduation or internships? Still don’t know what to do with your computer science degree?

You’re not alone. In fact, Caitlyn Shim, general manager at Seattle-based Amazon Web Services (AWS) felt your pain when she graduated from Brown University with a bachelor’s degree in computer science.

“I honestly had no idea what I would like to do coming out of college. I picked Amazon because I liked Seattle and the team seemed cool and my other offers were in Connecticut,” Shim told Built In. 

Fortunately for Shim, Amazon was a good fit. During the 15 years she has worked there, Shim has held a number of positions from a software development engineer to a manager of customer protection services.


The Struggle Is Real

For Shim and a number of computer science majors, the dilemma lies with the broad applicability that a computer science degree brings. And as a result of this broad major, students and recent graduates often struggle to find what aspect of tech they want to focus on as they prepare to launch their careers. 

“Computer science is a broad degree. That is precisely why I love it so much,” said Marvin Lopez, who received his bachelor’s degree in computer science and engineering at the University of California at Los Angeles and is currently director of student programs for engineering student services at University of California at Berkeley.

Fundamentally, a computer science degree teaches you to solve problems in a methodical, objective, scalable way that can literally solve problems in any domain, he noted. 

“There’s huge flexibility with a computer science degree and with that flexibility comes a price. That price is not always knowing what role you could be,” Lopez said.  

This potential confusion is growing as the number of computer science graduates dramatically ramp up. Computer and information science graduates reached 231,572 last year — double the number in 2010, according to the U.S. Department of Education, National Center for Education Statistics, and Integrated Postsecondary Education Data System (IPEDS).

Danielle Dona was among the computer science students who faced this confusion when she graduated from the University of Texas at Dallas with a computer science degree three years ago.

Presented with a wide array of potential career paths she could take, she discovered she liked web development and took a boot camp to learn that skill after graduation. She now serves as a web development teaching assistant at DevPoint Labs’ bootcamp.

More on Career DevelopmentHow to Find Your Dream Job in 2021


How to Identify Which Tech Role Is Right for You

Be flexible, curious and willing to experiment in a number of tech roles and domains to ultimately find the right fit for you, hiring managers and career experts said.

“Don’t be afraid of being wrong in terms of your choice initially,” said Philippe Clavel, senior director of engineering at Roblox, a San Mateo, California-based game development platform company. “What I’ve seen from new grads is they really want to take the safe route and not explore. I say it’s okay. It’s the start of your career, you should definitely take some risk. If you want to create a startup, you should do that.”

Tools to Untangle Career Path Confusion

  • Visit your college career center
  • Join student organizations and clubs
  • Take a wide variety of college courses, even outside of your major
  • Job shadow
  • Internships

First ask yourself: Why are you pursuing a computer science degree? What problems do you want to solve? Then figure out what role you want and what industry you want to work in, Lopez said.

Getting to know your college career center is critical, because they can arrange job shadowing and internship opportunities, as well as networking to learn about the different tech roles, Lopez said. Student organizations are also critical to join, because you can work on projects together and get exposure to different types of tech roles, he added.

Job shadowing can help narrow down your options. It benefited Carina Ly, an undergraduate computer science major at Stanford University and co-president of the university’s Women in Computer Science (WiCS) organization.

After graduating from high school in Seattle, Ly attended a special program Microsoft offered where students learned about how the company was structured and the different tech roles it offered.

Ly job shadowed her boss, a product manager, and felt it was also a good role for her.

“When I entered Stanford, I wasn’t completely lost. I knew I wanted to do something that was people related and tech related. I think that product management is kind of a good intersection of that,” Ly said.

Sign up for a variety of college classes to see what you naturally gravitate towards, Shim said. That interest can be followed up with internships.

“Take as many internships as you can, because these are great opportunities to actually get a real world sense of the kind of coding you may want to do,” Shim advised.

Not only can internships point you to potential tech roles you may want, but they also serve a reverse function too.

“Internships can also help you see what roles you don’t want. That’s gold,” Lopez said.

More on Software Engineering PerspectivesWhat Being a Full-Stack Developer Means at These 37 Companies


Got Your Computer Science Degree, Now What?

Computer science degree graduates predominantly choose a role where they write code.

“The No. 1 job title out there is, of course, software engineer, but there are all sorts of derivations of that. Software developer, application developer, programmer, coder. The whole family of these job titles is all about writing code,” Lopez said. 

Computer Science Career Paths

  • Software engineer
  • Software developer
  • Application developer
  • Web developer
  • Programmer
  • UX designer
  • Product manager
  • QA tester
  • Systems administrator
  • Cybersecurity software developer

Most computer science graduates chose these code writing roles for two reasons. One, it’s considered an exciting line of work to create software, and, two, software development is the portion of the software lifecycle that is mainly taught by colleges, Lopez noted.

“In a classroom, you’re not going to have the ability to design your own system from the ground up. You have your projects that are prescribed that you have to build or a set of problems you have to solve,” Lopez said. “It’s not like a startup where you have to come up with something from completely nothing.”

As a result, fewer students consider exploring the bookends of the software development lifecycle as their first job out of college, even though their computer science degree positions them for that path, Lopez noted.

Project managers and UX designers sit at one bookend for the early stage of the software development lifecycle, while QA testers and implementers, such as system administrators, sit at the other end for the late stage of the lifecycle. 

“Students aren’t likely to get exposure to the bookends of the software development cycle in the classroom, but they’re more likely to gain this experience working on projects with student organizations,” Lopez said. “Here, they’ll get a sense of what happens before you start coding and when you’re done coding.”  

Most computer science majors do not learn about applying their skills to these bookend roles until they begin working for a company. Once at a company, they may be called on to help with these bookend roles for various projects and then realize there are other areas where they can apply their computer science skills.

UX roles are the second most popular among computer science majors after code writing roles like software developer, he noted, attributing it to the creativity involved with the job.

“They forget there are other peripheral roles that support the lifecycle that they haven’t done yet but could be doing,” Lopez said.


Is Your Confusion a Liability in Getting Hired?

Although you may be concerned you don’t have a specific tech role in mind when you graduate with a computer science degree, prospective employers aren’t worried, according to hiring managers.

“We generally look at people with computer science degrees as all potential,” Shim said. “We don’t expect you to be an expert in any particular thing yet and we expect to teach you a lot.”

Computer science graduates should expect to be flexible in taking on a variety of roles when they join a company, which in turn will benefit them greatly, said Lopez, who has also previously worked as a tech hiring manager and recruiter.

“It’s really about being flexible to understand the potential range of things that you could do and be comfortable with moving around from place to place,” he said.  

Your drive and passion will also mean more than a clear statement about which tech role you’d like to assume, hiring managers said.

“What have you done outside of your college degree? Do you have any GitHub links that have your projects that you built yourself?” Clavel said. “What we usually look for in an interview is to understand what drives you.”

Great Companies Need Great People. That's Where We Come In.

Recruit With Us