19 Comments

As someone on the other side of programmer hiring, I can try to explain why bootcamps have had some success (and why many employers have no degree requirements):

1. Pretty much all the skills involved can be self-taught, to a level sufficient for employment. This isn't necessarily easy, but it's possible with little tools and no mentor, unlike any other STEM field.

2. Conversely, schools rarely teach much of the skills needed (not a surprise for readers of your book), and the variance in quality is very big (between schools, classes, and even instructors of the same course). The worst are actively harmful to learning.

3. There's a large degree of skill-reuse between jobs, and so someone who was productive at Company A and moves to a Company B that uses a similar tech stack, may be productive from day 1. Companies like this and try to only hire people who require that little onboarding.

4. It's relatively easy to test for the needed skills, and there's a lot of graduates who aren't going to be productive for a long time, so there's an incentive to weed them out. On the flipside there's a lot more openings than (actually good) candidates in this field, so over-filtering will make it much harder to fill positions.

Combine all of these and you have a perfect situation for employers willing to disregard the resume entirely (or at least the degree part of it) and rely on more direct tests of skill. The most famous one may be this post:

https://sockpuppet.org/blog/2015/03/06/the-hiring-post/

and they're pretty extreme, but even just a trivial take-home problem (just a bit harder than fizz-buzz) is sufficient to reject most applicants with almost no more effort than filtering resumes by educational attainment, and is much more accurate (our biggest source of false positives came from plagiarism).

Expand full comment

You're comment is good but I suspect that boot camps weed out people, it's very hard to get into a boot camp but easy to get a college degree due to grade inflation. Maybe the weeding process is the most valuable service that boot camps provide.

Expand full comment

Fantastic comment. Also jibes with my personal experience. And thanks for that link -- hadn't come across that before.

Expand full comment

Using algorithms in interview makes decent sense. It's and IQ test combined with proof that you can put in the work to learn - not a bad combo.

Also we may be wrong, but there's the general feeling that programming changes the way you see the world. I don't think there's many types of work out there that force you to think about things quite in the same way. And algorithms are key to that... whatever you want to call it. Capacity to play with that particular kind of concepts.

Expand full comment

That’s interesting and probably has merit. It doesn’t seem to fully explain things though. Why do experienced engineers with impressive portfolios need to reverse a linked list or whatever ? Shouldn’t their work and experience speak for themselves ?

Expand full comment

You would be shocked at how many incompetent or minimally-competent developers somehow manage to hold down jobs for years...

Expand full comment

Haven't done an interview test in many years, but from what I hear big companies are going a bit overboard with it. As Jonathan Ellis says, it's not a bad thing to check just in case, but at higher level it should be just a small part of a larger process.

For entry level - yeah, I've also used it a lot, and it's incredibly useful to quickly filter out people who shouldn't even be there. And you can also tell who are the good ones as well.

Expand full comment

I wrote a review of Bloom Institute of Technology (another boot camp) from my perspective as an experienced software engineer and the father of a recent graduate over here: http://spyced.blogspot.com/2021/09/a-review-of-lambda-school-from-father.html

TLDR getting a job is the hard part, if Iz is seeing nearly 100% placement of graduates that is very unusual.

Expand full comment

I think your post linked above mostly matches my experience with a few notable differences (I did the 4 month App Academy program):

1 - We learned very little about data structures and algorithms in the actual course. I was able to cover that decently on my own because I enjoy it.

2 - App Academy provides a decent amount of help finding a job (e.g coaching until you find a job and partnerships with companies that are willing to interview their grads)

3 - The main backend framework we learned was Ruby on Rails. While I would have preferred Python with Django or Flask, I didn’t feel that this hurt me at all in the job search.

Also, as I mentioned in the caveat, most but not all my peers have found jobs but we’re still inside the 4 month window.

The hard part is getting interviews. To be more specific cold applications almost never work for entry level bootcamp grads. I got almost all of my interviews by networking and outreach, including my interview with Bloomberg which I ultimately accepted.

Expand full comment

Bootcamps always seemed like decent evidence of for computer science as being mostly signaling. I mean it shouldn't be possible to get 90 percent of the value of a 4 year degree in 4-6 months, but it is, especially with the higher tier boot camps.

Another random note: A lot of variance in math knowledge gained in high school by country/ and also some variance in the length of B.A. If we could find similar countries with different math/b.lengths and then compare graduate worker productivity it would be interesting.

Or maybe just teach office workers more advanced math and see if they get better at their job?

Expand full comment

Maybe this is a good place to ask for recommendations for further learning. I’m trying to learn machine learning/AI using online resources and self teaching during my spare time. I’ve started Andrew Ng’s Coursera course which is quite good so far. Anyone here have any success self teaching in this field ? Any recommendations?

Expand full comment

That Ng Coursera course is quite good, you should definitely see it through to the end. After that, if you want to get into deep learning/computer vision, I recommend the fast.ai courses. They've been updated since I did them a few years ago, but the philosophy is one that should work well for someone who's been successful at a bootcamp: you start by implementing and then learn the theory behind it.

Expand full comment

Thanks!

Expand full comment

Same here! I agree, it's a great course. Also, congratulations on the Bloomberg job and thanks for sharing your experience with the boot camp. I have a CS degree and never felt the need to attend one, but always was curious what they were like.

Expand full comment

Hanging around MIT in the 80s and 90s, I observed that computer programming seemed to be the default way for smart people (mostly men) to earn a living. It paid better than most other professions, and didn't have any real entry requiremnts - you just had to be able to do it.

Programming doesn't have much "content" to it - it's simple logic, a little knowledge of syntax (learned in a few weeks), and a lot about experience and native talent. There's not much to learn. The interview fetish with algorithms is mostly BS - that stuff is almost never used in practice. I agree it's mostly a filter.

Boot camps exploit these facts. I'm not sure they add any real value, or are just selling certification at a discount to university prices.

They only work for exceptionally bright people - bright in a certain way. If you're that kind of person, probably you could spend a few months learning this stuff on your own and do just as well.

And yet the vast majority of CS graduates (CS is not programming or software engineering, tho it's an educational stand-in for those) can't program their way out of a paper bag. Google "fizzbuzz". Getting the degree != competence. At all.

(FWIW, I'm a 60 yo college dropout who made a successful career in software engineering.)

Expand full comment

I am about half your age with a non-CS degree who attended book camp a few years back and now work as a software engineer. I agree with most of what you said.

The people in my boot camp class that were successful could already have gotten high quality jobs before the boot camp, just not in engineering. The people who came to a boot camp looking for a ticket to employment didnt fare very well.

>The interview fetish with algorithms is mostly BS - that stuff is almost never used in practice. I agree it's mostly a filter.

Totally agree. I conducted an interview a few days ago. The question was not a direct algorithm question (like revers a linked list) more what functions would you create to accomplish a specific task which is pretty relevant to the work my company does. The "real" answer that we employ is to use a third party library because there is no reason to reinvent the wheel. Of course thats not the answer the candidate can give. I joked with my colleague that if someone said "I would just use a library" we should probably give them the job.

>And yet the vast majority of CS graduates can't program their way out of a paper bag

Also very true. I have worked with a lot of devs just out of school or as interns. Their abilities in school have very little to do with how well they program or how well they get work done. An intern from Harvard we had was very smart, great resume, could program great, but didn't show up for meetings and wasn't responsive to messages. If he was an employee we would have fired him but as an intern we just waited until the 3 months were up. Other grads could probably tell you all about some data structure but can't debug production code to save their life.

> you could spend a few months learning this stuff on your own and do just as well.

For me the benefit of the boot camp was the structure and the employment support resources after graduation. I had tried learning to program on my own with courses and books. I could do the courses and follow the instructions but I was never going to dedicate enough time on top of full time work/family to end up with a job. Its definitely possible and if I was in college or early 20s I could have done it.

Also the boot camp I went to actually did have good employment resources. The job I got came from the carrier fair they held. I was surprised that only about 1/3 of my class took advantage of the resources they provided.

Expand full comment

Regarding the 20% failure rate:

In grad school for Computer Science, I helped at the student computer lab. I used to see Computer Science undergrads come through who just could not grasp programming. Their frustration always broke my heart (and obviously theirs).

It happens.

Expand full comment

Most of my teachers warned me I was too intelligent not to attend university. I'd started coding in Sixth Form, decided I'd do that instead, and after spending a few months making an iOS app, got a job after one interview. This industry cares more about experience than qualifications.

Expand full comment

I'm working in software development as a first-year university dropout.

I struggled to get the foot in the door at my first job, but everything after that has been a cake walk.

I studied mathematical problem solving and algorithms on my free time in high school, and this is all that comes up in terms of technical stuff during most interviews.

Expand full comment