James Liu Blog

How to keep coding bootcamps relevant in 2024

Two things have changed the landscape for bootcamp grads in the past year and a half: generative AI and tech layoffs. Why hire a brand new bootcamp grad when you can augment your existing developers with Github Copilot (or similar), or by hiring someone who has recently been laid off?

Basically, the reason is that the best time to hire a senior dev is five years ago as a junior dev. The second best time is now, but even so, maybe better to hire a junior.

Let's assume that's true: better to hire a junior. (I can maybe elaborate some other time on why.) I don't the current bootcamp path works anymore. The old thesis for full-stack dev bootcamps is that there is so much demand for someone who knows enough HTML, CSS, JavaScript, and (maybe) another backend language so that they will get hired no matter how shallow that knowledge is. But now, you can have that level of depth by hiring a laid-off Xoogler, or Copilot, or any bootcamp grad who has had the bad luck to graduate into that market.

I say this as a proud General Assembly Software Engineering Immersive grad from 2019. I was lucky to graduate when I did. If I had graduated this year, I don't know what I'd do.

Here's what bootcamps should do.

Embrace AI, and teach using AI from day zero

Compared to the cost of the program, $20 a month for Github Copilot is peanuts. The preparation work should be done with Copilot. The pre-entry skills assessment should be done with Copilot. All the homeworks, all the projects, Copilot.

Expectations should be reset, much higher, because being able to use a coding assistant is part of the game. Tic tac toe was the weekend's homework after one week of classes. Now it has to be after one day, maybe two, to be completed in a night.

Codealongs have to change. Less following, more explaining. The habit in codealongs before was, type and keep up. The habit now has to be, if you don't understand, ask for an explanation. Have the student read the explanation out loud to engage a different learning pathway from just reading on a screen.

Group projects also have to change. Now, every student has a patient pair coder, so they can go much faster and farther. So there has to be more emphasis on collaboration with peers and project management. Also, testing. With AI writing the code, how does anyone know it is right? Getting a good testing story makes a big difference. Once the students know what cases to test, the AI can help write the code.

Specialize on, say, Frontend

Frontend is a deep topic, even without the design part. (As for the design part, leave that for the designers, since they will also have AI assistants.) In the enterprise, most of frontend development has to do with managing state, managing data fetching, and managing user work flows. That is plenty, as long as you go deep enough.

Historically, part of what made a full stack bootcamp successful was the advent of Ruby on Rails. Then, you could learn a single language, work on both the frontend and the backend, and have the framework do the work for you, as long as you could understand the business domain. But user expectations have moved on, and frontends have become much richer, so that now, bootcamps teach a great deal of JavaScript frontend as well.

But Ruby and Rails was always enough for twelve or fifteen weeks. Adding JavaScript spread students too thin. JavsScript only is one way to provide room for depth. Another is to lean into Rails again. Now, Rails with Hotwire (Or Django with HTMX, or Elixir with Phoenix Liveview, or Laravel with Turbo) allows one framework to provide all of it again.

Part of this will require bootcamps to work harder to provide good starting templates, and good fake backends. One further challenge is that good free APIs are getting rarer. Maybe each cohort will require building three or four new fake APIs. Those will have to be maintained for as long as the students need their demo projects to stay online. Maybe one or several projects should be done with web workers and progressive web app technology so it is browser only.

Other bootcamp ideas

I already suggested back to Rails and Rails-like frameworks for full stack. Here are a few others:

  1. Data engineering: Kafka, CDC, Snowflake - Have Confluent, Snowflake, Databricks, etc., sponsor.
  2. Cloud ops: Networking, Kubernetes and Terraform - Have a cloud provider sponsor
  3. DBA: Have a database provider sponsor. They already have "universities" of their own. But provide SQL and NoSQL training in the same program: students should be able to answer, "I have data like so, what database should I use?"
  4. Pandas for Excel pros: night course. Make pivot tables mastery an independent module, so that students can gracefully choose a pivot tables class after one week instead.