Coding Bootcamps Vs. Computer Science Degrees
I recently received the following question via email:
"Hello! I'm a junior in high school and I've been looking into computer science programs for college and I was just wondering if a coding bootcamp is a substitute for a computer science degree. Would you recommend joining a coding bootcamp post-college or beforehand?"
These are fantastic questions, and I thought that my response to him would be helpful to share with the public, so I'm posting my answer here:
Thanks for reaching out! It's great that you're already planning your future education and career while still a junior. Your questions are excellent, and since this is a pretty weighty decision, I've decided to write a rather lengthy response - so please bear with me!
Let's first dive into what it means to attend college or university. Going to college really serves two distinct educational goals: The first is gaining knowledge and skills that one can use for their career. I call this the vocational aspect of college. The second educational goal of attending a university is to gain knowledge in numerous disciplines so as to gain a certain worldliness - to become a person who is "well-rounded."
If your career goal is to become a professional software engineer, then a coding bootcamp is indeed sufficient to allow you to reach that goal. Coding bootcamps are a kind of vocational school, and focus on the job-ready skills that you'd require to become a software developer. (To clarify: The terms software developer, software engineer, coder, and computer programmer are all synonymous.)
This is borne out both by personal experience and data. Most of our graduates become fully-employed programmers, and of those, only a tiny percentage actually have a computer science degree. This is generally true across most coding bootcamps, as can be seen in this comprehensive study of coding bootcamp graduates by Course Report.
So in terms of vocation, I would say that yes - coding bootcamps are indeed a substitute for a computer science degree. However, coding bootcamps are not a substitute for a general, well-rounded education. You won't learn about history, economics, biology, and music at a coding bootcamp, as you would at a university.
Therefore, the answer to your question really depends on your goals. Some people aren't interested in spending four years and $50,000 on getting well-rounded, and they primarily care about launching a career. For such a vocationally focused person, a coding bootcamp makes for an excellent alternative to a computer science degree.
But what if one wants to be well-rounded? Should they only obtain a computer science degree? Is there any use for a coding bootcamp?
This brings us to the very different academic nature of universities versus coding bootcamps. I personally have a master's degree in computer science, so I've experienced both sides and am well familiar with the different educational approaches.
There are two major academic differences between coding bootcamps and colleges.
Universities, as one might expect, have a strong academic focus. As this applies to computer science, the courses are heavily based on theory. Now, I'm not one for bashing theory. Theory is important. However, university courses are generally skewed heavily towards theory, so much so that there are few practical exercises.
Since coding bootcamps, on the other hand, have a strong vocational focus, they focus on the practical coding skills that one would actually use on the job. Exercises are a mainstay of coding bootcamps, and not just are there many exercises, but the exercises themselves are very similar to what real tasks that a programmer would perform at a professional environment.
That is the first difference. The second difference is that coding bootcamps teach their material as one long course, and that course is basically, "How To Build Real Web/Mobile Software." Now, to teach students how to build real software, the course focuses on all the necessary tools, such as HTML, CSS, JavaScript, databases, version control, back-end languages and frameworks, front-end frameworks, and more. By learning everything in this way, it becomes very clear how all these different languages and tools work together, and why we need all of them.
At a college, though, each of the above topics are usually taught as a separate course. I took one course on Object-Oriented Programming, which focused on the core fundamentals of coding. I took another class on JavaScript. I took yet another class on databases and SQL. I took another class on open-source software. And I took yet another class on server-side web software. All of these components are part of what one learns at a coding bootcamp, but when I took these courses, I had little idea as to how all these pieces actually fit together. I could use JavaScript in a vacuum, and SQL in a vacuum, but had no idea how those two concepts might be connected in real life.
When I graduated with my master's in computer science, I did not feel ready to work in a professional environment, and had to learn the more practical skills by working through some online tutorials. Now, having had the academic background in computer science allowed me to get through those tutorials quickly. However, I wasn't truly prepared to enter the coding workforce.
The takeaway of all of this is that if one does want to pursue a career in software development, but they also plan on attending university, I would recommend first taking the coding bootcamp, and then only afterwards going to college. Here's why:
You'll learn from the coding bootcamp how to build real software - to the point of where you can actually be professionally employed. Now that you have those skills, you can go for a computer science degree and take a deeper dive into certain topics that interest you! So you may already get how to use JavaScript in a real project, but you might want to explore JavaScript at a deeper level. So a university course on JavaScript might be a great experience for you. Or, you may want to explore an entirely new topic, such as blockchain, or advanced algorithms, or concurrent programming, so that you can expand your horizons, even if these topics may not pertain to your day-to-day job as a software engineer.
So do you need a computer science degree to become a programmer? Absolutely not. But if you get a computer science degree after the coding bootcamp, you can achieve well-roundedness (if you're interested in that) while taking a deeper dive in specific computing topics that are interesting to you.
Get Expert Advice
The Actualize Blog is where you can get expert advice and insights for learning to code from our CEO, Jay Wengrow. Subscribe to the Actualize Blog and get notified each time we publish a new article.