What to Expect from a Coding Bootcamp
You’ve probably noticed the rise coding bootcamps over the past few years. If you come from a traditional computer science background you may be skeptical, but these programs aren’t trying to teach the totality of computer science in a few weeks.
These programs are more analogous to trade schools, and often they take applicants from non-traditional backgrounds who are looking to make a career transition. The goal of each program varies, but generally they are trying to teach students enough applied knowledge to build a website or mobile app in 6 to 12 weeks.
Over the past several years, I’ve taught or guest spoken at many of Chicago’s coding bootcamps including Dev Bootcamp, General Assembly, Fullstack Academy, Coding Dojo, and Startup Institute. While each of these programs is different, there are enough similarities between them that I can help you understand what to expect.
In this post, I’m going to share a summary of what you can expect from a typical coding bootcamp. My goal is to help you set realistic expectations going in and be better prepared for life on the other side. The truth is that merely attending a bootcamp won’t skyrocket your career, but it might open up career paths that you wouldn’t have expected anyway.
As with any major educational investment: do your homework. Talk to graduates, teachers, and employers before you make the plunge. You also might want to try a free course like A Beginner’s Guide to Open Source Software Development or a low-cost online bootcamp like The Cloud Engineer Bootcamp offered by the Linux Foundation.
These options might help you test the waters and see what coding is like before you commit to an expensive, in-person bootcamp.
Why Have Coding Bootcamps Taken Off?
The quick pitch for most coding bootcamps is that there are tons of jobs for web developers out there, and in just a few weeks this program will help you learn enough to get hired as a Junior Developer. In addition, there are a few other reasons people get hooked:
1. Software, AI, ML, and Blockchain are Hot
The rapid progression of software in the past few decades has opened up new industries and revolutionized many others. The media love to hype new technology (AI and Blockchain lately), even when they barely understand these concepts, so software developers who work on them are often perceived to be smarter or more successful than they truly are.
That said, I’m not all skeptic. I think AI will make a huge impact on the upcoming decade, and coding bootcamp graduates who get into it early will be best equipped to contribute to it.
2. There is a Global Lack of Technical Talent
The truth is that there is demand for software developers worldwide, but the biggest dearth of software engineering talent is localized. Large tech hubs like San Francisco, New York, and Chicago perpetually have more demand than supply when it comes to coding skills.
Simultaneously, the big tech companies are encouraging more people to learn to code because the more talent that’s out there, the less they’ll have to pay:
“Wage levels in the tech industry have remained flat since the late 1990s. Adjusting for inflation, the average programmer earns about as much today as in 1998. If demand were soaring, you’d expect wages to rise sharply in response. Instead, salaries have stagnated.” - Ben Tarnoff, The Guardian
3. College Degrees Are Increasingly Worthless
I can’t tell you how many times a friend of mine who studied English or Anthropology or Philosophy in undergrad has told me how jealous they are of my engineering degree. While I’m mostly self-taught as a programmer, having a slip of paper certifying that I passed engineering courses in college has certainly given me a leg up in my career.
As graduates join the gig-economoy workforce saddled with debt and worthless degrees, it’s no surprise that an 8-week bootcamp that opens up a six-figure salary is so appealing.
Looking for more resources to help you learn to be a better developer without a degree? Here are 20 of my favorite books for software engineers.
4. Frameworks Offer Easy Starting Points
Finally, higher-level abstractions and frameworks (eg: Ruby on Rails, Django, Express, etc.) allow new developers to build minimally working software faster than ever before. I’m all for using frameworks to help get a project kicked off quickly, but without a base level of knowledge in the language or any idea what object oriented programming means, a lot of bootcamp graduates come out grossly unprepared for messy, real-world, legacy code.
There’s a false security in setting up your first Node app that makes you feel like you know a lot more about software development than you really do.
What Are Coding Bootcamps Good For?
For a certain type of student with enough money, family support, and time, a coding bootcamp could be a fantastic investment. For $10,000-$20,000, you might be able to kickstart a career that leads to annual income 2-3 times higher than you could before.
That said, I don’t think most coding bootcamps actually teach you much about code that you couldn’t learn on your own. Here’s what I’ve seen the most successful students get out of them:
1. An Introduction to the Industry
For students without a prior career in software, getting exposed to the highs and lows of working as a software developer is a very good thing. The media does its part to glorify coding skills way too much, so actually meeting people who write software for a living and learning more about the career options available will give you a more complete picture of the industry you’re about to join.
2. Networking with Employers and Other Professionals
While learning to code is a highly valuable skill, it’s not enough on its own. Getting your foot in the door for your first job as a developer is the toughest part, so take advantage of every networking opportunity your bootcamp provides. The amount you can learn about software development in 8 weeks is pretty small, but the number of new people you can meet is significant.
3. A Minimal Introduction to Applied Web Development
A few of the students I’ve seen coming out of these bootcamp programs are ready to take on roles as junior-level developers, but usually they had some experience with programming or engineering before the class began. Most bootcamp graduates are ready for apprenticeships where they’ll actually get to work with a mentor and slowly work their way into a full-time gig, and some are not much better off than people who hacked their way through Codecademy.
This base-level knowledge is all freely available on the internet, so if your primary reason for attending a coding bootcamp is to learn, you might want to save the $10k.
What Are Coding Bootcamps Not Doing?
While networking opportunities, and a base level of competency can certainly be established in a few weeks, there are serious limitations to the coding bootcamps I’ve seen. Here’s what I have not seen these programs doing for graduates:
1. Teaching Students Computer Science or Software Engineering
When you’re trying to churn out students who can launch a working Rails app in just a few weeks, it’s impossible to take the time to teach them much of the theory or architecture required to be a high quality software engineer. While you can certainly argue that not every code monkey needs to know how a microprocessor works, there’s a middle-ground somewhere that every software engineer should know.
If you’re about to join a bootcamp, you can supplement your bootcamp knowledge by taking some free courses on MIT’s Open Courseware.
2. Working With Existing Code
Another blindspot in most coding bootcamps is working with existing codebases. The truth is, at least 90% of software development is done on legacy code that was up and running long before you joined the team. Unfortunately, most bootcamps put little to no emphasis on reading, debugging, and navigating existing code.
3. Being Transparent About How Long Learning Might Take
I asked one of the students in one of the coding bootcamps I speak at what he hoped to do after graduation. “Well, I want to spend a few months mastering web development and then join a startup as a CTO or something,” he told me quickly. I laughed.
While some of the students I’ve met realize that “mastering” software is a life-long process, many students who are drawn to bootcamps are under the impression that in a few weeks they will actually know something significant. This assumption needs to be pruned early.
Pick a Program That Sets Realistic Expectations
Coding bootcamps are here to stay. I don’t think they’re all bad, and I do think they’re actually a more practical solution than trying to go back to college for most people. But, some of them have been misadvertised. Whether you’re thinking about joining one of these bootcamps or thinking about hiring someone who’s recently graduated from one, keep your expectations in line with reality.
If you have your own thoughts or questions, feel free to find me on Twitter.