Considering how much I tweet, bootcamps and degrees are something I haven't spent extensive energy on. Compared to the numbers of tweets about animals, hiking, food, or just making terrible jokes I've been next to silent on this matter (comparatively).
But I did recently have this to say and I meant it.
JTKPSA I will never fight with you about bootcamps in my mentions
I have recruited, had tech certs, done a bootcamp, done a degree(*3 more weeks!), been Tech Lead and led hiring
There is honestly a steep ask to have more nuance on this subject than I already do so you can stop18:07 PM - 16 Feb 2022
For the better part of a decade spent in tech, I've had to hear the endless choir of people pontificating about bootcamps and degrees and self-learning, each acting as if they were bringing down the word from the mountaintop. I've worked places where they assumed I had a degree and even repeatedly degraded people without them in front of me and I functioned as a “degreed engineer” with Schrodinger's credentials, you might say.
But now I am done, I have the degree, and I'm ready to talk.
I'm writing this on February 21, 2022. Saying "I don't have a degree" will be accurate for about two more weeks, ish. I mean that's when my classes are done. I guess it gets conferred in May. But honestly, who gives a s@#$. The second that last assignment is turned in, in my mind it is done. (Updating this writing March 11th 2022 and I received two As, yay!)
For anyone wondering why I didn't manage to get a degree until now, there are many reasons. I didn't know for sure what I wanted to do. While in college, my dad got very sick and it became extremely difficult to manage his constant hospitalizations and keep up with the coursework. The teachers were not understanding. Also, I was poor and it was not clear that I would make enough money even with a degree to pay back student loans, and thus was hesitant to take them out (my sister had just gone through finishing a degree that she couldn't find work in, and her example was informative to me).
I'll pause here. For anyone whose thinking is so rigid that they don't understand that any one of those reasons by itself is good enough to not get a degree, you may as well stop reading.
It is a fool's errand to pressure people into getting degrees when they don't know what they want to do. It is harmful that we make students feel like they must go on when they are facing life and death family crises. It is irresponsible, honestly, it is like a pyramid scheme that we bully people into taking on debt to buy their way into a middle-class life when increasingly a degree does not guarantee it.
As a developer, I have led a surprisingly charmed life. I made senior rapidly. Dev Lead early too. Money, equity, and what now comes easy once seemed like a distant fantasy. Early into my life, it at one point seemed impossible that I'd ever be able to get an office job at all or anything out of service/manual work.
It is not an exaggeration to say that doors were rudely slammed in my face, over and over and over again during that time of trying to find a first office job, over not having the degree. After the recession, there were enough job seekers that you could get rejected for $10/hr administrative jobs for not having a degree. (Nothing about that work requires one, for what it's worth).
There's a study I came across about how poverty lowers IQ, and I absolutely believe it. What I remember from this time were multiple prolonged cold wars waged between me and being poor and being an undesirable worker.
So bleak was my path in getting into any office role that I could leverage into a career that I found myself over and over again looking at online degree mills. When I say "degree mill" I do not mean some online college people turn their noses up at - I mean a literal degree mill where you mail them a check for a fake diploma. It was made so crystal clear to me that the degree was the problem, I really almost did it even though it would certainly have been grounds to be fired if I did and it came to light, it might have counted as actual fraud. Things looked that grim.
That's probably the most distinct memory I have of this time that I'll never forget: sitting in front of my computer with the degree mill website in front of me. I imagine if I could have looked at myself, I would have seen an eerie animation borne out of raw longing written all over my face. The lack of a degree was a black cloud trailing me, constantly.
That, and my credit score. Simultaneously I schemed and stewed and plotted as if in a long, arduous chess match. How do I get a job, any job where I'll build marketable skills? How do I budge my credit card up from 500-something? I can only imagine my IQ was lower. It felt like being haunted. I was always preoccupied.
Whatever forward momentum I now enjoy as someone with assets, the opposite was true as someone without them. To clean up my credit I paid additional fees for a debt consolidation service and high-cost, high-fee credit cards to begin to have a history. It was pay to play. But still, a far lower entry fee than what it would take to attend school.
I still feel strange sometimes saying that I was “poor” but I don't know what else to call it when they were at various points chasing me around trying to repossess my car, or that when living in Baltimore we kept the heat inside to 50 in the winter and used space heaters because me and my roommates were all broke. When I finally got a first office job, I volunteered at every opportunity to travel because I got a daily per-diem for it, but was constantly at risk of embarrassing myself on these trips with colleagues if we ever had to spend money because, with one wrong move, I would easily hit my credit limit or overdraw my bank account. I once volunteered for an extra two weeks away because I was too broke to pay rent and it gave me a pretext for the check to be late (ahh simpler times without Venmo). So, yeah. Plenty of people had it worse than me but I was pretty broke.
And yeah, it was miserably hard to live that way. When eventually I got a low-paying job but where I was taught transferable skills, there were no limits to my tenacity (for those of you who think people don't finish degrees out of "laziness"). I was a recruiter, and so had no reason to get tech certs or a security clearance but I saw a pathway. I was opportunistic to the extreme.
Anything I saw that would give me a foothold, give me legitimacy, give me something to propel me to a better life I grabbed on as hard as I could and didn't let go. I had no fixed plan of what I would be, I would have taken anything available to me that moved me forwards. The one exception to this remained school, infuriatingly. As a white-collar worker, I began to have tuition benefits at work, up to $5000 or so dollars which is the limit the company can use it as a tax write-off.
Here's the catch: you typically had to pay up-front and then be reimbursed. I never had the money. You also had to repay the money if you left, and I was constantly expecting the sky to fall and to be laid off. It's amazing when you don't have money how much you have to worry about it, constantly, to not be caught off guard by the next disaster. The tech certs, though, the company paid up front. So that's what I did.
Although this tenacity launched me out of being poor and into a stable enough career, the lack of degree continued to embarrass and dog me.
I would be remiss to not give my mom a shoutout here. I’m not in touch with her anymore but at the point of me struggling so hard to get into any office role, I was. At the point that I told her how frustrated I was by my job search and how little luck I was having, I once said something like “I'm so disappointed I didn't get that one, I know I would have been great at it,” and she replied something to the effect of “You aren't qualified for it, you are qualified to work at Target”. I'd be lying if I said that line won't be burned onto my brain forever, although it's pretty funny in hindsight. (Maybe I SHOULD work at Target, I shop there enough – could use the discount). But at the time, I knew it would do nothing to advance me towards something where I could use my brain and actually build a career.
Of course, there were other places where I got dinged over the lack of degree. In the screening call for what would wind up being my first programming job, they were so abjectly horrified when I answered that I didn't have a degree that I felt like an untouchable, like I might as well have had cartoon stink lines coming off of me. I finally just blurted out (having never done so before) that my dad had gotten very sick up until his death that year and I'd dropped out for family reasons but was trying to go back. After a stunned and uncomfortable silence, they apologized and moved on.
When hired, it was clear that because of my lack of degree they perceived me only suited to be sort of a code plumber, an unrefined hand who could do basic tasks (unlike the music major they also hired at the same time with no experience, which makes sense how?). My boss made his disdain for my unfinished degree known, he brought it up in our 1:1s frequently. And with great, great irony that job was in the Education unit of a research institute. So, I had the dubious honor of being the least educated person IN THE EDUCATION GROUP. Fun times.
It has actually been fun and funny at times to observe all the different reactions people have to the information. Stuff like, “But you are so smart!”, which.... thanks I guess?
My all-time funniest/favorite is when I have been in situations and realized that even with a degree there was a higher level of arbitrary gatekeeping that would have kept me out anyway. If my life had gone differently in a couple of spots I would probably be the proud owner of a Graphic Design degree from a state school. I've been in a small number of interviews where they led with “Well, we hire engineers from elite colleges but someone from other schools could start in tech support and potentially work their way up but it isn't a guarantee”. Cool!
At some point working in tech though, it stopped mattering. Actually, I guess I can pinpoint when: 2 years in. With two years of experience, it seems like no one gave a lick whether I went or not. Either that or people are exceptionally bad at reading. I put my field of study under a deliberately ambiguously titled Education/Training section on my resume. I never lied. I listed the field of study with no degree or graduation date. Having been burned over and over and over again for not having the degree, I suppose at that point I decided “if you don't care enough to ask, I don't care enough to tell you”.
It was always very hilariously clear when people assumed I had it and I didn't. A colleague once guffawed over me not knowing what Conway's Game of Life was and exclaimed “Did you even TAKE computer science!?”. In the moment I answered “Nope, they must have saved that for the fancy kids doing the Master's program” but internally I felt like shit. This colleague was a friend and I know only ribbed me that way because of the assumption that we were peers and it was in no way punching down. Little did they know, they had hit me where it hurt. Although having now finished a degree, I can tell you I STILL would never have learned about Conway's Game of Life! I have since of course looked it up. I do not feel as if it made me a better engineer to know it, lmao.
The other truly, truly funny one was a boss I had. I forget what level of education he had but a degree for sure, and he definitely assumed I had mine as well. He used to say benevolently rude things like, “You know JT, we could hire someone with occupational training and they could string code together but they wouldn't be able to write algorithms like you or (other teammate).”
Reader, I s@#$ you not, this man's code was THE WORST I'VE EVER SEEN. I WOULD GLADLY HAVE HIRED SOMEONE WHO “JUST STRUNG CODE TOGETHER” OVER HIM. He wrote API endpoints that were concatenated together in what sounds like a joke of a SQL-injection nightmare. He wrote all his joins in what would have been cartesian products/cross joins without the database engine cleaning up his misdeeds under the hood. He wrote a new-ass-application in Python 2 the year it was to be sunsetted when the maintainers had said they wouldn't even patch security bugs going forward, just because he didn't know about system python. He sure liked me though! He made me Tech Lead. I had an even more talented colleague at that job who switched teams to get away from this boss, and with great irony I later found out it was because the boss was giving him a hard time about having an unrelated Construction Management degree. (This dude was amazingly talented, and could code circles around the boss. Eeesh).
A lot to unpack there but I'm going to throw away the whole suitcase.
The only thing I will ever say no one can accuse me of is a lack of work ethic or ambition. Whatever you want to say about me not having a degree, you could chalk it up to just about anything in the world but there is no credible case to be made that laziness or lack of tenacity were in play. I'm not unique.
I didn't write the first half of this post to be "woe is me", I'm obviously very lucky and have enjoyed a drastic change in circumstances. Honestly, it's been so drastic that for all I know I'm just part of a bubble about to pop and my fortunes will all reverse the next economic downturn. The reason I mention it is, that I was always the person capable of having the degree I'm about to earn. I mean heck, I used to work harder without it, I had to exercise such a high level of showmanship and boldness to compensate, I was probably a better worker.
So please take away from this that education != intelligence, education != work ethic, and in many cases, it is just a reflection of someone's luck. When you judge people harshly on it, that is in fact what you are judging and it is frankly crappy.
When in 2015 my father died, he had some miscellaneous life insurance policies that resulted in me inheriting something like $40,000. That might have paid for school. Unfortunately, the price I had paid to get to the fringes of the middle class was to work jobs with ridiculous hours. I felt extreme concern that I could keep it up if I added school.
At this point, my recruiting background had taken me into recruiting for technical roles in government contracting, most often for Network Engineers and Cybersecurity professionals. My claim to fame in recruiting was that I was very good at boolean searches, which was fortunate since government contracts often had roles with complex mixtures of security clearance and technical certification requirements.
There is an entire DoD regulatory proviso code for the Security+ exam by CompTIA (DoD 8750), so invested are government agencies in these various tech certs. Some jobs had requirements with a complex mix of certification combinations, where you would need one or more certifications from group A, one or more certifications from group B, and then a security clearance.
Point being, I come from a world where ongoing professional development was very respected and in-demand.
(One thing it's funny to note here. Probably based on what I said about being so broke, you would think I got into tech for financial security. Nope! I took a 16k pay cut for my first programming job. My dad's death was really hard on me and I felt like I just couldn't talk to people for a living anymore. It felt unbearable. At the end of my recruiting career, I made 70k which was a fine living in 2016 and if I had liked it, could have pursued management if all I wanted was more money. Along the way of trying to be a good recruiter and learn tech terms, I crossed over to the dark side. It was so much more fascinating than having the same intro candidate call dozens of times a week. Although there is nothing wrong with getting into tech for money, I actually have done it out of love from day one. And that's the only reason someone with so little natural talent at coding became so successful. I just happily plugged away at it in most of my free moments until I got suddenly shockingly good).
After my dad died and I debated using the inheritance for school vs getting more technical certifications, somehow strategically placed advertisements for bootcamps found their way to me. I immediately liked the idea. It sounded like a combination of instruction and apprenticeship, I would actually be BUILDING things not just memorizing and regurgitating things. I bought in completely.
It is worth pointing out that although I wasn't recruiting developers heavily, I was in the tech industry and had no idea that bootcamps were widely criticized and considered by many totally illegitimate. I want to pause on that.
If me, a white-collar worker actually already working with these types of roles and around tech people, wouldn't know the baggage that came with that path, how do you expect someone working at Mcdonald's and dreaming of a better life to know it? Part of the hate on bootcamps honestly in effect s@#$s on people who risked a lot and put their neck on the line trying to do the really hard work of building a career. So, consider that.
Here's where it gets dicey. I just finished telling you that you need to show people who attend bootcamps some respect. I can't and don't necessarily say the same for the people running them.
I attended General Assembly's first remote Web Development Immersive program in 2016 (since rebranded). I very clearly remember that the marketing was emphatic that the program could take you from zero to sixty, even with no experience. I even had some experience! I had been doing Coursera, CodeAcademy, and technical certs, I thought I'd be coming in from a good starting position.
I was very wrong.
About half the people in my bootcamp were technical. One did tech support, one had a CS degree and had freelanced, one was a graphic designer who did some code, on and on. By the end of the first unit, about half of the cohort's projects did not pass, a condition that could cause us to fail out of the program without a refund. As you may guess, the entire "almost failing half" were me and the other people not working in technical roles before joining the program. (I remember now and laugh that on the day we were supposed to present our projects I said something like “This is my project and spoiler alert it doesn’t work”).
With that large of a group failing, it was impossible to make us individually shoulder the blame - it was too blatant. The bootcamp split us up into groups, with mine to repeat our first unit. As time went on, myself and one other woman in the program realized how screwed up it was that we were missing instruction and content that we paid for (at the time, on MEAN stack, all the rage). We raised hell. We made them agree to extra workshops after and other conciliatory measures.
As a sidebar, I felt such stress and desperation that I had thrown all my eggs in this basket (quit my job, spent all that $) and then let down by the system I'd pinned all my hopes on, my brain got mean and focused and steely. After the first unit I moved, up-up-up towards the top of the pack in my group. I was stressed, I was angry, and I was scared but I channeled it and I liked code, even as bad as I was back then.
Since then, bootcamps have arguably only gotten worse. Parasitic income sharing agreements are a Faustian bargain. Bootcamps are functionally unregulated, and cherry-pick statistics to give the reporting body CIRR, or just stop doing so altogether. The inexperienced instructors and recycled recent graduate TAs don't know what they're doing. As the market is flooded with junior candidates many of whom are all trained in the same things, bootcamps have to pivot wildly and come up with new curriculum. I could go on and on and on, and often do.
Some of them have gotten better. I have seen B-Corps, free bootcamps, bootcamps to get former convicts into coding, schools free to disabled people. Some of the programs are now two years long. In response to critiques that bootcamp graduates don't know data structures well, some have added things like that. There are also orgs like Code The Dream that give me a lot of hope in the nonprofit model, they follow the bootcamp with an apprenticeship period building sites for nonprofits to give the students real experience.
“Bootcamp people are ok as programmers but will never be software engineers”
As someone who just finished four years of schooling largely debugging and learning alone, you can f@#$ right off with this. Nothing magical happened in my degree that transformed me. There was little new in my coursework and I could plow right through on code alone. Most of our books were open-source resources.
“People who join bootcamps need hand-holding and structure, but if you don't you can self-teach”
Yes, I hear this, not always this clear but I hear comments reeking of it often. You know why I wanted instructors? I had worked around software engineers and the field seemed hard. I wanted to do it right, I wanted to give it my all. I trusted that people in the field might have something to teach me. I trusted that learning these skills would be difficult and I wanted to give myself the best possible chance of success. Wanting instructors came from a place of humility. It was a lot of money and a lot of risk, but it was a representation of my commitment to choose active instruction – I wanted to do it right, I was giving this challenging material respect by wanting a guide.
It is possible to be critical of bootcamps but still respect the people who attended them and treat them as people who took a huge risk out of willingness that they could build a better life for themselves and their family. Doing a bootcamp is PAYING to work extremely hard. These people don't deserve your scorn or your in-group out-group blanket dismissal.
What does it say about you if you are someone that enjoys deriding people for trying to learn something? What did it ever do to hurt you? What makes you the authority on high to pass judgment on someone else just trying to be compensated for their labor and make a living? The more you unpack it, the more appalling it sounds.
But the number one, super-duper incredibly important thing I need you to remember is this. Yes, you, you who secretly has a low opinion of bootcamp people: there is also a lot of bias at play here, and I don't mean credentialism.
It is a known fact that bootcamp graduates are far more diverse across multiple categories than CS degree students. In-group/out-group bias is a real thing and no matter how nice of a person you are, the human brain was built to categorize and we all must contend with that. It is not a coincidence that this group of people who is maybe queerer, browner, and more female than you and all your CS cohort peers show up and the initial brain reaction is mistrust or disbelief. As one study of in-group/out-group bias puts it, “Experiments […] have been repeated time and time again, demonstrating that the favoritism people show for their own group doesn’t need to founded in anything particularly meaningful.” The same linked article goes on to say:
Another basic truth about people: we have a need to feel positive about ourselves, and we are frequently overly optimistic about how exceptional we are compared to other people. These processes of self-enhancement guide our categorizations of ourselves and others and lead us to rely on stereotypes that demean the out-group and favor our in-group. In short, because our identities are so heavily reliant on the groups we belong to, a simple way to enhance our image of ourselves is by giving a shiny veneer of goodness to our in-group—and doing the opposite for our out-group.
In this sense, I feel for people with skepticism about bootcamps. Your brain is really not set up to like this concept. It is invalidating to people to have spent ~2 years of a Bachelor's Degree on Computer Science concepts and have someone who spent a fraction of that be competing at your level.
I recently saw a tweet that was a pretty terrible take tbh but the comments were illuminating in one way.
Above ^ this the poster had a video of them saying “I took six years to get my degree, you went to a three month bootcamp. We are not the same”. I laughed a little at this because the “no one is better” at the end clearly is tacked on to avoid criticism. This person riffing on the “we are not the same” meme makes it clear they think one is better than the other. Some of the replies were:
And another, that most closely supports my point about in-group/out-group bias:
While I'm skeptical that anyone who knew Canva alone was off finding work as a designer, this person recognizes what's happening in their own cognition: they feel invalidated by people from other paths. It feels invalidating to the work they did and that's upsetting to them. I appreciate that they had the clarity to recognize it that way because at the end of the day I think that's part of what is going on with a lot of people.
One final thought to leave you with: if like the poster above you find yourself thinking “a few months can't compare with years”, I want to reframe that a bit for you. An average college student goes two semesters a year with a 12-credit workload. The average semester is 15 weeks, with 2.5 hours of classroom time per course. So, 10 hours a week over 15 weeks, x2, or 300 hours of instruction time per year. Using General Assembly, my own bootcamp as an example, the schedule was 10-6 with an hour break at lunch. (That is not including time alone coding afterwards for homework). So that's 7 hours a day for 12 weeks, although I'm going to subtract that last week because I think we spend it on the final project. Let’s call it 11 weeks x 35 hours = 385 hours of instruction. Draw from that what you will.
This is a question I get asked A LOT by bootcamp people - “Why did you go back, did you feel like you needed it?” and it isn't that easy to answer. People in this field feel all the time like they are “imposters” regardless of background and experience, and I wasn't immune. Being a woman in a male-dominated field, it would be a lie to say that I never felt the need to be unimpeachable in my track record, credentials, and output. Having seen the fate of people without degrees in the last economic downturn, it also seemed like a way to protect myself. If the job market ever got bad again to where employers just needed to filter out some arbitrary number of people, degree requirements are a very easy way to do it.
I also just wanted to know. To know what it was exactly that I was missing by not going. What exact things I wasn't aware of that seemed to make this whole industry think people with my background were a joke (in the abstract anyway, individually people treated me well and I was obviously very successful even before finishing the degree). What exact topics a degree would cover that would take me from the fringe to being a Real Programmer :Tm:. You might say, I wanted the degree just so I could tell everyone to STFU up about this all. (That is literally what I tell people who want to talk about this topic, as I showed in the tweet included in Part I. There are a very very small number of topics where my mentality is “you can't tell me s@#$ about this”, but this is one of them. I have the complete perspective. At this point I have done a degree, done a bootcamp, and have professional certifications. I have tried it all).
But was it worth it?
Ok so. You've already heard that I was not super impressed by my bootcamp and it would probably be more satisfying to end this arc by me saying the degree was far superior.
I will say that neither the types of tasks we were assigned nor the way content was presented were particularly engaging. A lot of “build a desktop Java app to do payroll”, “build a Java app to look up semester grades”, “build a Java calculator”. As someone who didn't like Java, I definitely had the realization that if college HAD been my first introduction to code, I would have abandoned it. I would have switched majors I'm almost certain. If I thought all coding was was building dull apps with Java, where it takes a bazillion lines of code to do the simplest thing, I would have noped out hard.
The degree also pointedly side stepped a lot of extremely relevant industry concepts. There was one class where a classmate managed to bork his code irreparably and I was trying to help on the class forum. I was curious if anyone would tell this person about version control to save them from similar issues in the future. Knowing the professor would respond I said something like, “It would be great if there was a way to go back in time with code”, wondering if they would mention git at all. Nope!
We also got assignments where to follow the instructions the cyclomatic complexity of the end result was horrendous. To get an A, you had to follow the arbitrary instructions even if the resultant code was poor. We also spent an honestly, somewhat embarrassing amount of time on things that are decidedly not industry standard anymore, like drag and drop UI builders in Java, incredibly old versions of Oracle, etc. Some of the more relevant things we learned were approached in very weird ways, like having to use spool files (???) for SQL, and topics like types of software testing or code efficiency were entirely skipped while instead, we spent a mind-numbing amount of time on things like the Software Development Lifecycle.
“Degrees are pointless”
Look, while ultimately mine may not be worth it you’ve seen from my experiences listed earlier how rudely the world may treat you for not having one. That’s not to mention that for groups that aren’t well-represented in tech there is often additional pressure to “prove” ourselves, and it is not always possible to be taken seriously without credentials. People might do it to advance themselves, just out of the curiosity to learn, or a multitude of other reasons. Same as we aren’t going to s@#$ on bootcampers for the act of learning, we are not going to s@#$ on people getting degrees. Why even would you? What is scorn worthy about someone wanting to work and learn?
“People who get degrees are fools, a bootcamp is enough”
Nothing is enough. Truly.
Our society has increasingly moved to requiring degrees even when they are only nominally of benefit for the role or even irrelevant. Automated hiring is filtering people out in bizarre ways like screening nurses who need data entry skills for computer programming.
I don't know if I know ANYONE who walks onto their first programming job and doesn't feel kind of lost. In mine, I was able to immediately make contributions with bug fixes but even so was in way over my head on other things. Most schools still teach Java or C, most workplaces use a variety of things. If I extrapolate where I'd be starting from with the degree alone, my whole atrocious learning curve with git would have had to happen at work, I would have known little to nothing about CSS or HTML much less accessibility. It would still have been a steep, STEEP learning curve.
If someone feels like going to college because they want to feel prepared for the workplace, good for them! Just as it doesn't invalidate people from college for bootcampers to exist, it is pretty iffy to completely disregard any time spent learning period.
Also: this statement is clearly wrong, there is a reason people continue to find CS grads more prepared although it is not the reason people think and I'll elaborate in the next sections. Whenever I hear someone so self-satisfied with their conclusion, I can't help but think of the saying, trust those who seek answers not those who claim to have found them. Anyone too gung-ho with no nuance, I do not trust your conclusions.
The reason I’m so sick of how people talk about this subject is the complete lack of nuance brought to it. And yes, you are hearing me correctly that my view that IMO does have sufficient nuance boils down to, people may be leaving degree programs slightly better prepared than bootcamps but there is also a lot of bias impacting how we evaluate people in these two groups, and the difference has absolutely nothing to do with degrees being superior or the people who get them being superior.
At the end of the day, despite everything I've said, me with a degree may still be a little better than the version of me existing in some alternate universe without it. Not because the degree itself was special, but simply through the act of having to engage with the material and the extra hours put in. That didn't need to occur in school and I don't know that school was even the right place for it. ALL of the more advanced things I have learned or done in my career have been learned on the job, period. But attending school of course didn't make me any worse.
As time has gone on, as I've worked with people with and without degrees, as I'm now on a team that is made up largely of career changers with degrees (but unrelated) who are among the smartest colleagues I've ever had, my views on this entire thing remain hard to put into words. While I DON'T think the act of attending college is magical, I am comfortable roughly saying that college does seem to generally be producing more prepared entry-level programmers than bootcamps are.
As time goes on, the more I see though, I am increasingly sure that it is not because these two forms of training are so fundamentally different or that one is inherently better. The longer I go on, I think the benefits of college are simply that it goes on longer. There is evidence that we retain more when concepts are explored slowly. Something called the spacing effect has studied that our brain holds on to more and benefits from superior long-term memory performance when the time spent learning is spread out. At the end of the day, I am of the opinion that that is the only difference that matters in this debate.
Well, okay, so I know I was critical of my bootcamp and now critical of my degree. That being said, I wouldn't change either experience. When prospective career changers ask me which they should do, or ask what language they should learn, or how they should spend their time, I often tell them something like “any time spent learning will be valuable”. Pick what interests you, or what you think is the direction you want to take your career. It doesn't matter. I have a suspicion if you pick something enjoyable to you it will enable you to spend more time learning and overall have the biggest ROI.
The real takeaway I would like people to have from this post is that bootcamp vs degree training is not a valid premise for evaluating programmers. Period.
If your brain has a sticky attachment to the idea of this hierarchy, ask yourself why. What benefit HAS ever really come from broadly profiling a huge group of people without any nuance? What benefit does it really give you?
With that said, we reach a conundrum: if concrete credentials are not the way to evaluate programmers, how do we? We all know everyone hates whiteboarding and take-home projects. Although I will say, certainly me feeling stupid for an hour while live coding is less trouble than getting a whole ass degree.
At the end of the day if a company wants to have an entrance test and uses those in lieu of specific years of experience or degree requirements, I don't think that's the worst thing in the world. It at least would be something consistent. And while yes, it's a time commitment, again, less so of one than either a bootcamp or school to prove yourself.
But really, I don't even think that's a necessary alternative if degree requirements were scrapped.
One philosophy in hiring that I like is the competency-based approach, described here as being the solution for hiring challenges where people were coming in with the right backgrounds, degrees, etc, and still having issues on the job. This approach relies on job profiles and structured interviews, and as discussed in the article above has also been linked with facilitating more diverse hires. It is also an excellent way to account for the fact that not all years of experience are equivalent and some people progress faster than others to the same level of mastery. This article goes on to say that naturally there are numerous ways of doing this for software engineers, whether it be assessments, technical questions, whiteboarding, etc.
I think we'd be better off even with some combination of measures. Like a degree requirement OR you can do a take home OR you can whiteboard to demonstrate whatever level of mastery. Ultimately, my opinion is that you can assess an engineer without the whiteboarding but if it moves places away from arbitrary degree requirements then fine.
It is also worth noting that both bootcamps and colleges have numerous other issues I didn't even get to cover here. My personal opinion is that the bootcamp model is not worth throwing away despite the issues with poorly run and disorganized ones, but it is screaming for legislation. Some of the things I've heard go on are borderline fraudulent, like ISA repayment being triggered by jobs that are barely tech-adjacent.
It is valid to have specific issues with the way bootcamps are run, but it is also valid to have extremely real concerns that stop you from wanting to go to college. When colleges shut down due to the COVID-19 crisis students were displaced from housing and meals that they were still on the hook for financially, and many are now suing. This excellent episode of Patriot Act addresses that increasingly schools cost is only half related to genuine fees, and schools are using atrociously paid adjunct professors to keep their own costs low while institution president salaries and investment trusts have exploded. The number of administrators at schools has increased in some cases 135% while adjunct pay has gone down 50% but executive level salaries are up 35%.
That's not to mention, that for cases like mine with a sick parent, it isn't like in return for all that money you are getting any kind of understanding. Even in the recent invasion of Ukraine by Russia, students requesting deadlines to account for the fact that they are literally in a war zone are being refused. I'm not even going to touch the ongoing embarrassment of sexual assault on college campuses and its abysmal handling. So with all that said: even if college might send you into the world SLIGHTLY more prepared for an entry level programming job, is it worth it? At the end of the day? For some people the answer is no, and for others it’s a moot point: they don’t have the money, they don’t have the time, and it was never in the cards for them.
Where does this leave us? The prospect of learning challenging material with no direction is somewhat bleak.
If I had it all to do again and had known about these options, I might have turned to something like the Open Source Software Degree or a new development, one I have my eye on as potentially the most promising revolution in software engineering education that I've heard of: the Free Code Camp accredited, free(!) computer science degree. I think if supplemented with learning groups like I've found on Slack communities, an option like this when combined with community could likely do as good of a job as the path I wound up taking.
If I can ask anything of anyone, after this absurdly long diatribe on this topic, it would be to realize that people's lives are messy and unpredictable. The same options are not realistically available to everyone. When compared side by side, the amount of instruction in a bootcamp vs a degree is not actually all that different, and there is nothing about degrees or the people who get them that is inherently superior. I truly believe that if CS grads are coming out slightly ahead, it is a function of the degree having a longer duration and nothing else.
Take a moment to examine why you might feel so strongly about someone else's educational background when it doesn't hurt you either way. And overall, realize that people's capabilities are not neatly assessable through the lens of bootcamp vs degree vs self-taught.