The Coding Bootcamp Scaling Problem

The model is probably not sustainable — here’s why.

Matt Hopkins
6 min readMay 24, 2021

I attended a coding bootcamp and served as a campus director for four years. I’m now a software engineer. I’ve experienced pretty much everything that is possible to experience relating to what it takes to attend, struggle, succeed and fail with both attending and running a coding bootcamp. I’m not optimistic that the model is scalable or even sustainable.

A Blessing and a Curse

The hallmark of a coding bootcamp experience is also its Achilles heal — time constraint. The biggest benefit of having a time constraint is the inevitable focus it demands. Students don’t want to waste time, so they discard almost everything else in their life to focus on learning as much as possible. They don’t have to decide to learn to code everyday — every waking moment is focused on gaining knowledge and capability.

You might be asking- that all sounds good Matt, where’s the Achilles heel? When you are struggling to progress, time constraints will inevitably lead to mental constraints. Mental stress is an important part of learning, but there is a threshold where it inhibits your learning. How bootcamps allocate resources to address keeping students away from that threshold is where they will succeed or fail.

The makeup of a bootcamp cohort

From my experience, most bootcamp cohorts can fit their students roughly into a bell curve:

High Performers

There will be a couple students who never struggle or need very much help. The biggest benefit of attending for them is the complete focus they are able to put towards learning, and the benefit of also helping solidify the concepts they learn by helping their fellow students.

Average Performers

The majority of students will fit into this group. They don’t need constant help, but when they do need it, it’s super important they get it in a timely manner. They often feel anxiety over not being as good as the high performers, so the longer it takes for them to get the help they need, the closer they get to that mental stress threshold.

Low Performers

There will almost always be a small handful of students who need more help than the rest of the groups combined. The reasons why vary — it could be that they have a poor attitude, they could be distracted and therefore not giving the bootcamp experience the focus it requires, or they may not have the mental horsepower as some of their fellow students. Most people in this group should probably not attend a coding bootcamp, unless they have the right attitude and worth ethic — I’ve seen students that start out here at the beginning and outwork all their fellow students to gradually move up to the upper edge of the average group.

So why do these groupings matter? Because understanding their needs and distribution is vital to how you allocate the resources they need to succeed.

Debugging and Humans

For anyone who has learned how to code, you have likely been through the really frustrating experience of banging your head on the table for an hour trying to figure out why your code is broken, only to have a more experienced developer come look at your code and identify your problem in a matter of seconds. But when they show you what your problem was and how they were able to figure that out, you likely won’t make the same mistake again — or at least it likely won’t take an hour to figure out next time.

While going through a bootcamp, you are learning how to code — but just as important — you are learning how to fix(or debug) broken code. This skill can really only be acquired through experience and often requires mentorship.

Struggling is an important part of learning, and is a vital part of the bootcamp experience, but too much struggling can be counter productive. This is the crux of the scaling problem for bootcamps.

Students struggle → students need a human to help them before their struggle becomes counterproductive to their progress → humans cost money to employ → humans are not scalable.

If a bootcamp wants to maintain quality over time, it must also maintain its mentor/TA to student ratio as it increases the number of students. This is a really hard problem to solve, and most I’ve observed don’t seem to want to solve it — often just looking for a patch. They usually take one of the following approaches:

  1. Hire fewer mentors per number of students
  2. Pay or incentivize students to be mentors who are still going through the program, but are a few weeks ahead of the group they mentor
  3. Rely on the high performing group to mentor their fellow classmates
  4. Some combination of all the above

As you can imagine, none of these solutions are great and often lead to disgruntled students.

The Business of Bootcamps

Most bootcamps are for-profit businesses. At some point, whether the company is acquired or has taken on investment, they will get pressure to increase their margins. They look at their costs and someone who probably has never actually run a bootcamp, been a bootcamp student, or even been an engineer, looks at how much money they’re spending on mentors or teaching assistants for each group of students and decides that’s where they will be able to save some money.

I get it though, businesses need to make money. I’m sure there is a business book somewhere or a class you take in business school that tells you the first place to make cuts when trying to increase your profit margin is human capital.

Students are the product

What these people don’t realize though is that your product is your students, and successful students who had a great experience that leads to employment are the best marketing you can have. If you take away mentors or teaching assistants, this will — without a doubt — decrease the quality of the experience in your program. Your students that had less resources will, on aggregate, leave the program with a lower skillset than those who had more.

Your product quality and reputation will therefore decrease. You’ll have to spend more money to put butts in seats. You’ll have to invent new ways to get more students — and this leads to a decrease in quality of incoming students, putting further strain on the already minimal resources.

Instead of your student bell curve fitting into a normal distribution, it’s increasingly weighted towards the low performers group. This all leads to an increased need for resources for students, progressively worse outcomes, which leads to more problems, until inevitably you just don’t make sense to maintain as a business and you are either shut down or downsized and only kept around because the executives see value in your group beyond increasing their bottom line.

So…Should I attend a bootcamp?

This is a complex question that only you can answer for yourself, but if I were looking at attending a bootcamp today, I would probably look for one that was still run by a founder who is a software engineer. I would also ask questions about how many mentors they have for each class. I would want to know that when I struggle, there will be enough people with experience to help me and make sure I don’t struggle for too long.


As I mentioned earlier in this article, how bootcamps allocate resources to address keeping students away from the mental threshold where struggle begins to be counterproductive is where they will succeed or fail. There may be some out there that have figured this out while still running a profitable and scaling business, but I’m not aware of one.


You will inevitably run into people who will defend the bootcamp they went to. They will say that it changed their life for the better, that they would still recommend their bootcamp, etc. These people will almost 100% of the time fit into the top performers group, or at least the upper half of the average performers group. They didn’t run into the problems that the lower half did because they didn’t require as many resources to succeed. So just understand their point of view with that context as you consider their opinion.



Matt Hopkins

Front End Engineer. SF Bay Area native. Tagalog speaker. All things tech, web development, and entrepreneurship