Tuesday, June 24, 2014

CS Degree or Bootcamp?

After a few short weeks of our coding bootcamp it's clear that there is a different perspective on coding between those of us who go through a course like this and those who chose to go through a CS program at a University. There are definitely advantages and disadvantages to both approaches and it's clear that the market has adapted a need for bootcamp coders along with CS majors based on their proliferation in Silicon Valley as well as here in Silicon Slopes.

But how do the different approaches alter marketability? Or career options? Or even the fundamental way in which one looks at code itself?

The immediately obvious difference between the two options is the pedagogy. While both aim to teach coding skills, they start from opposite ends of the spectrum. CS majors start by learning the underlying elements of coding languages, hardware, and computing and eventually work up to a potentially cursory overview of high level languages and cutting edge technology that will be immediately useful in the market. Bootcamp style learning, on the other hand, starts from the opposite end of that spectrum. We immediately start with cutting edge technology and high-level languages to dive into actually building modern applications with little windows into deeper principles.

One of the common themes during our lectures is the power of languages like Python. It seems that our CS Major instructors have a deep appreciation for what can get done in just a few lines of code or import. This is most likely a result of miring through semesters of machine code, C, and less readable texts like Perl. Like a grandfather explaining that he had to wake-up at 4am to milk the cows everyday, CS majors attempt to explain our spoiled position of learning in an incredibly readable and powerful language with many built-in functions, libraries, and frameworks, all available to help us quicken production.

While some employers only a few year ago complained that boot camp graduates don't have the deeper knowledge required to solve more complex problems, others have gladly hired them on the basis of their extremely practical skill set. The trade off seems to be depth of knowledge for market practicality. Whether they hire a CS Major or a boot camper, employers will need to be willing to invest in their new-hires continued education in order to make them functional.

It may seem from the description that given time and money investment, bootcamp might seem like the obvious option as long as it's coupled with continued study and experience on the behalf of the individual. That may be true for some cases, but there are limits.

There are some companies like Google and Microsoft that won't even look at you if don't have a CS degree. If you're intention is to work for one of the big companies, chances are non-traditional paths to a career in programming will count you out.

Regardless of how you get into programming, the important thing is that you create a plan to continue your education through your job experience and personal study. Having a beginners mindset, being willing and flexible for change and new technologies, and broadening and deepening your skill set will serve you well. No programmer should ever think that they've arrived or that they are beyond improvement.

As part of my experience here, I will be creating a post boot camp graduation self-development plan that I intend to implement in my spare time to hit the ground running.

No comments:

Post a Comment