CS Degree vs Coding Bootcamp—Which One Is Better?
Neither one will fully prepare you to be a developer. Here’s why—and what else you’ll need.
Image by: Chris Ried
If you’re in college and want to be a computer programmer, a CS degree is seen as the most natural path...
But meanwhile, the internet would have you believe that lots of people with no technical background are getting well-paying jobs as programmers after taking a three-month coding bootcamp.
So which should you choose? Here’s what each one really provides, why neither one is enough on its own, and what else you’ll need to succeed as a developer.
What a CS degree provides (and doesn’t)
A computer science degree is not designed to make you a good programmer. It’s designed to give you a solid basis for understanding the field of computer science.
Just take a look at a few of the course names for the computer science major at Syracuse University:
- Computer Organization & Programming Systems
- Data Structures
- Introduction to Analysis of Algorithms
- Design of Operating Systems
You don’t just learn how to write code—you learn why programming languages work, how operating systems are built, how computer hardware interacts with software, and so on.
This broad theoretical understanding of computers can be a solid basis for a lot of pursuits within the technical field—data analysis, information security, hardware engineering, information system management, and yes, software development.
BUT—just because you get a CS degree doesn’t mean you’re ready to get hired as a software developer. As you can see above, only a small portion of classes focus on learning to write code. You’ll still have to do most of the practical learning on your own.
A few other considerations:
1. Cost
As is the case with any college degree, you need to factor in the time and debt required for you to get it. In some cases, it just may not be worth it.
At a minimum, you’re going to pay around $20,000 x 4 = $80,000 for an in-state, four-year college without scholarships. Coding bootcamps cost $20,000 on the high end.
But we also need to factor in opportunity cost. Let’s say that if you go the bootcamp route, you could land a developer job after one year of interning and building a portfolio.
Developers earn $71,500 per year on average. The opportunity cost of going to college is the three extra years you could have been working as a developer if you did a bootcamp instead.
$71,500 x 3 = $214,500, so add that what you’re paying for college, and the CS degree path costs over $250,000 more than a bootcamp!
2. Relevance
Software development is a rapidly changing field, and college curriculums can’t keep up.
Much of what you do learn about programming specifically might already be several years out of date in the workplace. While the fundamentals of computer science don’t change much, the specifics of writing software do.
3. Difficulty
CS degrees are tough. They are heavy on advanced mathematics and abstract reasoning, and many universities have a GPA requirement to stay in the program.
CS degrees have the highest non-progression rate (people who drop out or change majors) of any undergraduate degree.
What a coding bootcamp provides (and doesn’t)
Coding bootcamps are intensive, three- to six-month programs designed to give you all the skills you need to get an entry-level developer job.
They were created in the early 2010s to help fill a huge talent gap, and in the years since they’ve exploded in popularity.
In 2019, there were over 23,000 graduates of coding bootcamps—which is impressive when you consider there are 65,000 total computer science graduates each year in the US.
Bootcamps provide people with access to software development as a career without the cost and debt of a college degree.
Typical bootcamps range in cost between $7,000 and $20,000 (compared to as much as $150,000 for a 4-year degree). Many of the people who attend bootcamps are older (average age is 30) and already have a college degree.
Because of the short time frame, a bootcamp will provide you with a working knowledge of just one programming language (like JavaScript or Python). They are laser-focused on helping you get a job after graduation, so many of them also emphasize interview prep.
Bootcamps can be a great experience, and might be just what you need. But they aren’t the magic bullet to a high-paying career some people think they are.
Here are a few things to think about:
1. Job placement rates are often misleading
Bootcamps love to tout extremely high job placement rates. A review by TechBeacon found that most schools advertise a placement rate of over 90%.
The problem is that most of these claims are unaudited because bootcamps are unaccredited—schools can just make the numbers up, or arrive at them with very creative accounting.
For example, if it takes a student 12 months after graduation to find a job, or only gets an unpaid internship, does that still count as a successful placement? Nothing says it can’t.
Additionally, not everyone at a bootcamp is starting from scratch. Some are already developers looking to brush up on a new skill. Some have CS degrees.
The placement rates don’t tell the full story on who actually went from “0 to hired developer” in three months.
And since bootcamps have been exploding in popularity, there's more competition every year for the entry-level developer jobs most graduates are looking for.
2. Low-quality instruction is a risk
If you look around, not everyone has good things to say about their experience at a bootcamp.
Many schools hire less experienced developers as teachers, who often have to work other jobs.
Sometimes, they’ll hire students from the bootcamp itself after graduation—an easy way to fill positions and boost placement numbers at the same time.
This doesn’t mean there aren’t fantastic bootcamp instructors out there.
But it does mean there’s no guarantee the one you get will have the experience, time, or teaching skills to properly educate you.
3. Realistically, you can’t become a programmer in three months
This is the dirty secret that no bootcamp wants to tell you. Bootcamps are not actually a shortcut: they are a kickstart for a process that will take years.
After finishing a bootcamp, you may have the knowledge to code a basic web app, but you probably won’t have the foundational understanding to do all the different kinds of problem-solving required at a job.
That doesn’t mean you won’t be able to find a job as a junior developer or intern somewhere, but it does mean that you’re in for a rude awakening if you expect a bootcamp to give you all the tools you need to succeed—or the job hunt after graduation to be a breeze.
What else you need to become a successful developer
Both CS degrees and coding bootcamps can be a good starting point for a career as a developer. But regardless of which one you pick, they won’t be enough on their own. Here’s what else you’ll need.
1. You’ll need to be very motivated
Lots of people can write bad code, but it takes a certain aptitude combined with thousands of hours of practice to learn to solve problems with code in elegant ways.
Mitch Pronschinske from TechBeacon explains the blissful ignorance many beginners experience when contemplating a career in software development:But at this stage of the game, you still have no idea what you're doing. You haven't stayed up until 2 am three nights in a row trying to fix a bug or solve a problem.
You haven't had to spend the rest of your day sorting out version control issues and getting stuck going down multiple rabbit holes.
You haven't had your app stop working, even though you're sure that you didn't change anything.
It’s going to take a lot more commitment and patience than you probably think, so you need to have a strong “why.”Are you doing this because you love to program, to wrestle with and finally solve technical problems with code? Or are you doing it because you think it will be an easy way to make good money?
If it’s the latter, you’ll probably get frustrated before you see success.
Jeff Atwood, co-founder of Stack Overflow, puts it this way:
2. You’ll need to be self-taught
Software development is an unstructured, peer-driven industry where the knowledge base is constantly evolving.
Successful developers are curious learners who are constantly experimenting, reading, testing, and tinkering.
Almost 70% of developers say they are self-taught, according to a survey from Stack Overflow.
You’ll need to be able to diagnose problems and find solutions on your own.
And you’ll need to love programming enough that you’re willing to consistently invest your free time into learning more.
3. You’ll need a portfolio
Software development one of the few highly skilled professions that does not require some sort of professional certification.
Because of this, having a portfolio of projects you’ve completed is critical. It’s your opportunity to show, not tell, future employers that your skills are real.
Start building one now.So CS degree or bootcamp—which one should I pick?
If you’re in college right now, have scholarships or subsidized tuition, want to be a developer, and are really interested in computer science as a field, get a CS degree.
It will provide you with a good foundational understanding that you can build your programming skills on.
But maybe college isn’t the best option for you—because of the time, cost, or because you already have a degree.
Or maybe you’re in college and want to be a developer, but you’d rather spend the next four years studying music or literature.
If that’s your situation, attend a bootcamp. Do your research, and make sure the one you pick matches up with your goals and expectations. Not all bootcamps are created equal.
Regardless of which one you choose, understand you’ll need to take charge of your own learning.
Neither one will give you the complete set of tools you’ll need to succeed as a developer.
The most important career prep you do will be the work you complete on your own.