18 ms·
Bootcamps vs. College
- ammon 10y agoI'm happy to answer any questions about this (I expect it to be controversial). When we started Triplebyte one year ago, I was pretty skeptical of bootcamps. Doing credential-blind interviews and seeing what some bootcamp grads can do, however, has won me over. Clearly there are a lot of bad bootcamp grads (and probably a lot of bad bootcamps). But the model is working really well at the top.
- dtran 10y agoGreat stuff Ammon and team! Can you discuss how you might test for bootcamps overfitting their curriculums to interviews? They definitely would seem financially incentivized to do just that. From a personal anecdote, someone I interviewed was able to code a solution for a problem, but then couldn't discuss how or why they did it that way at all, or solve a closely related problem, which made me strongly suspect that they just memorized an answer. How would you test for this? I would also be curious to see if there was any way to breakdown bootcamp grads with previous programming experience vs. without and by what they studied in undergrad if they went to undergrad.
- ammon 10y agoInteresting questions. Bootcamps are clearly incentivized to do this. However, they do not seem to be particularly good at it. Algorithms are over represented in interviews relative to most jobs, and yet (as our data shows) bootcamps are not very good at teaching this. Now, we are measuring algorithmic skill by asking candidates to actually implement non-trivial algorithms. We've observed that a lot of interviews involve what is essentially trivia about algorithms, and it's possible that the bootcamps are better at preparing students for this (we don't measure this skill so I am not sure). I think that this gets at the answer. If you make your interview go deep, it gets increasingly hard to specifically prepare for it, to that point where preparing is actually becoming a better programmer. Rather than a 30-minute question that covers knowledge of sorting algorithms (easily learnable), have your candidate spend an hour building a collision detection systems using a axis-sorted list of rectangles, and reason about maintaining this sort as objects move around. That's the theory. In practice there will always be some noise.
- jonny_eh 10y agoDo you think there's a correlation between "bad bootcamps" and "bad bootcamp grads"? I assume you can get good grads from bad bootcamps and vice-versa.
- ammon 10y agoOur dataset is not large enough to really answer this. My opinion is that quality of the bootcamp (how selective they are, and how well they present and motivate students) has to matter.
- kmonsen 10y agoDo you have any date on job performance? It seems to me the complete lack of algorithms is a land mine for any project. I think it is a lot more likely a coder with little fundamentals will be able to grow or see the bigger picture. I agree that not all jobs require this skills, but then suddenly you get a divided workforce with designers and implementers.
- lloyd-christmas 10y ago> It seems to me the complete lack of algorithms is a land mine for any project. If you hire someone and release them into the wild of your codebase, that's a failure on your part not theirs. New hires are an investment, they shouldn't be treated as an immediate need-based solution. My experience in two fields has shown me that new hires are a drain on resources for a fairly significant time period, regardless of their background. If you're not doing everything in your power to educate your new hires and get them up to speed, THAT'S your landmine. It's your job to get them to learn the fundamentals if they don't have it.
- kmonsen 10y agoI don't know, when I was a new grad I started on the codebase more or less right away. Didn't even have code reviews back then. If you have to train them, then it seems the coding part should be cheaper then the algo part.
- lloyd-christmas 10y ago> when I was a new grad I started on the codebase more or less right away I did as well, but... > Didn't even have code reviews back then. Not so much this one. > If you have to train them, then it seems the coding part should be cheaper then the algo part. I do actually agree. But there tends to be other aspects of the job outside of just code and algorithms. Prior work experience is a shining star compared to a 22 year old in any field. I see my coworkers more than my family. Someone that has a full understanding of everything that goes along with that has a head start across the board. Someone changing careers in their late 20's also tends to put a hell of a lot more into improving themselves than just the basic progress-of-life learning. I just think it evens out as long as you're consciously hiring people for the right role.
- talloaktrees 10y agoI know you don't have any data on it, but I'm curious of where you see auto-didacts in this spectrum
- qqrsmith 10y agoIt's great to see some hard data on this! Were you able to see any patterns in the backgrounds of the bootcamp students? It doesn't seem too surprising that someone with a physics or finance or mechanical engineering background can learn enough programming skills in three months to be productive. But do students without as much prior experience in quantitative and analytical thinking have as much success?
- ammon 10y agoWe see about a 50/50 split between the two groups. (Of course a lot of the people without a technical background are still analytical thinkers. There's probably pretty heavy selection bias for that)
- deleted 10y ago[deleted]
- dwwoelfel 10y agoCan you tell us which bootcamps have produced candidates that did well in your interviews? I get asked about how to break into the industry every now and then--it would be nice to be able to point those people to a quality bootcamp.
- pbiggar 10y ago> This does not leave bootcamp grads equivalently skilled to university grads. If you want to do hard algorithmic or low-level programming, you’re still better served by traditional CS eduction. Or, if I may suggest, a low-level/algorithmic bootcamp.
- ammon 10y agoI think it's possible that these things just fundamentally take more time to learn well. I'd be happy to be proven wrong, however.
- pbiggar 10y agoJudging from my own experience, spending some time through the start of Skiena's Algorithm Design Manual, with a side of Programming Pearls or Practice of Programming, would do wonders and easily outstrip a CS education. I'd say you could do it in less than 200 hours, which is about 3 weeks of dedicated bootcamper time. Maybe dev-bootcamp should offer an optional extra module?
- adpirz 10y agoAs a bootcamp grad m'self who would love to do more deep dives into algos/data structures, I'm intrigued. Any other recs?
- bshlgrs 10y agoI think a low-level/algorithmic bootcamp would be great, and it wouldn't be that hard to make one.
- humbleMouse 10y agoI think a well-run bootcamp is a better coding education than college computer science. The only thing most grads have on bootcamp people is algorithm knowledge. This is easy to fix. Just teach algos in bootcamp. It really isn't that hard to understand. Ideal bootcamp: -css/html/javascript -angular or any mvvc data mirroring framework -OOP and ntier patterns -Stored Procs/ORM/SQL training -Algos -Webservices SOAP/REST The college grads I work with tend to have written a couple shitty programs that don't really do anything, and their "final project" was hooking up a database to a business logic layer. source: I have taught in bootcamps before and work with lots of new college comp sci grads now.
- DougWebb 10y agoHow long is a well-run bootcamp? Getting a CS degree takes many, many hours of course work, plus typically a bunch of non-CS course work. I'd think a college grad would (should?) be much better rounded. That depends a lot on the quality of their CS program, obviously. What you describe college grads doing sounds more like a 1-semester high school CS class to me.
- cstejerean 10y agoA CS degree takes 4 years, two of which are usually not related to CS at all. Still valuable stuff to learn, but also a lot of bootcamp students might already have a degree in another field so they already have the gen eds out of the way. The remaining stuff in a CS degree, only some of it will ever be directly relevant to what most programming jobs entail. Sure, you may end up in a job where compiler design comes in handy, but most people won't. If you focus on just the parts that are going to be relevant to most programming jobs, you may need a program a bit longer than the current bootcamps but much shorter than 2 years of CS classes.
- humbleMouse 10y ago> How long is a well-run bootcamp? If I were put in charge, I would make it 6 months long. I could definitely teach people how to write coherently designed CRUD apps in 6 months (ie. 95% of all programming businesses in the wild).
- RankingMember 10y agoI think that both college and boot-camp styles of training have their place. I'd think my default inclination would be to want to hire the CompSci majors to do the deep-scope planning/figuring and use boot-camp hires to do the grunt-work of supporting that vision. It's important to note that this is just my initial inclination. I have no expectation that there won't be instances of boot-camp hires being better than CompSci hires in cases. It really comes down to the particular person, and hopefully any hiring process would do a decent job of evaluating each person.
- enjo 10y agoThis just isn't how software is built in practice. Engineers make dozens of architectural decisions every day. They may feel like small ones, but over time they add up to a whole lot of surface area. The skills you learn in Computer Science provide a whole lot more context for your decision making when actually building things. Bootcamps, at least from the folks I've interviewed so far, simply don't prepare their graduates to do real work. This is particularly true when it comes to data structures and basic algorithms. Two really key fundamental knowledge areas if you're goal is to build actually reliable and relatively efficient software. This isn't to say that all CompSci graduates are good programmers (clearly they are not). It also isn't to say that everyone coming out of a bootcamp is bad (they are not, I recently hired my first). But when painting with a broad brush bootcamp's right now seem to mostly churn out students who are sort of comfortable with syntax and very basic logic, but not much else. I'd be interested to see this article go farther. What do these cohorts look like in two years? Does that fundamental knowledge gap hold those bootcamp graduates back? I suspect it does, but I have very little proof but my own intuition. I'd love to be wrong.
- pbiggar 10y ago> Engineers make dozens of architectural decisions every day. > Two really key fundamental knowledge areas if you're goal is to build actually reliable and relatively efficient software. I would challenge you on this, and suspect that you're looking at a relatively thin slice of developers: can you clarify why you believe this to be the case. As a counter-example, a lot of modern web development is building frontends (mobile or JS), where good code organization matters, but systems architecture doesn't matter so much.
- pbiggar 10y agoIt's not discussed, but I would guess that the best CS grads beat the best BC grads, but average/bad BC grads beat average/bad CS grads.
- avs733 10y agoat what? assessment here would likely be highly task specific. lines of code? first pass code quality? understanding of architecture? ability to link user's handwaving to functional product? To be clear, I agree with you, I just think there are tasks where the CS grads would generally win and those where the bootcampers would win as well rather than looking at this as an overall population comparison. No one size fits all, as others mentioned, its all about identifying your need and filling it with the right person not just the right education.
- pbiggar 10y agoI meant for "standard" developer positions: I would say far fewer than 10% of developer positions require skills such as knowing how to code quicksort, or knowing the CAP theorem.
- avs733 10y agosorry but this will inevitably come off as pedantic...knowing how to code quick sort may not be germane how to apply quick sort, what quick sort does and why, and how to evaluate whether quick sort is appropriate are all nested within that 'standard' developer archetype in different ways. Not saying you aren't true, just trying to argue for a less digital approach to interpreting or assessing education in the realm of hiring.
- deleted 10y ago[deleted]
- ammon 10y agoPretty close. I don't talk about this in the post, but you are right. The college grads had more variance. You occasionally get a college grad who has been working on open source since they were 15, and actually looks a lot like a, engineer with 3 years experience.
- deleted 10y ago[deleted]
- data4lyfe 10y agoSo triplebyte still can't infer anything about how well a software engineer performs on their job from the metrics that they are gathering though if they're basing performance on how well they do on their coding questions and interviews?
- avs733 10y agothere is a simple confounding variable here that unfortunately triplebyte can't touch with a ten foot pole...age/work experience College is largely about transitioning children to adults (we can argue that separately) the personal and professional development that students go through over 4 years is vast. They are becoming adults in many frames, including understand the world and technology as systems. They aren't just learning to code, they are learning how to think. To the extent that I know (warning: anecdata) Bootcamps presume a lot more worldly knowledge, attract and expect more grown up students, get students with direct interest in web/software/apps, and are much more likely to get career transitioning students (from the people I know who have bootcamp'ed). They have a much broader knowledge base to build on which will help them in some areas and hurt them in others. I would be curious if Triplebyte has any data they can touch at all looking at that. Simply said...a 22 year old college student with a CS degree and a 35 year old BC grad may look similar on metrics but function entirely differently as employees in both the short and the long term...caveat emptor, figure out what you need.
- Jemaclus 10y agoI think you may be making a faulty assumption that Bootcamp means the candidate didn't go to college. Many, many bootcamp grads DID go to college... just not for CS.
- avs733 10y agosorry if it reads that way, I was intending to communicate the opposite actually, that BC students often had gone to college, and/or had other careers, just not in CS.
- redschell 10y agoI think there's a great opportunity for bootcamps to help people like me. I'm currently a pre-sales professional, and have been for a few years now. I'm closing in on 28, and while I've been served very well by developing product expertise, my background isn't in CompSci, and I've never actually formally learned to code. If I want to be a good Solutions Architect down the line, and I certainly do, this could be how I bridge the skill gap. Sure, I could learn most of what I need to know on my own time, but this might be a great way to get it done quickly in a batch and then move on to applying it in a very practical way with my customers.
- DougWebb 10y agoAmong developers, there are unkind terms used to describe people who call themselves "Solutions Architect" who have no development experience. "Architect" itself is often used as a derogatory term. In my experience, "Product Manager" is a much better term for someone who's responsible for and guiding the development of a software product, but who doesn't have the technical skills to do the development themselves. Architects who are respected earn that title by working to gain lots of experience doing development.
- bunnymancer 10y agoBootcamper here, Of course 3 months is going to get you running with a solid basic knowledge of your stuff. In what world would low-level, algorithms and data structures be doable in 3 months? Point is, I don't think Bootcamps and Colleges are comparable. It's like being a woodworker and a forester.. There's a place for each and it's not the same positions... Now, here's my big question: If your interview includes Practical programming, Web system Design, Algorithms and Low level system design... What in the nine hells are you hiring for? Had it been for a trucker position you'd be asking for "driving license, laws and regulations, engine design and car physics".. For reference: https://i.imgur.com/sh7LJgj.jpg https://i.imgur.com/sh7LJgj.jpg
- j10sanders 10y agoIt looks like Triplebyte has candidates take a bunch of tests, and then figures out what YC companies they would be a good match for.
- vlunkr 10y ago> Point is, I don't think Bootcamps and Colleges are comparable. This is the key takeaway here. I'm working with a bootcamper now and the experience has been pretty bad. But it is a fairly large app, I think it's difficult for him to grasp all the parts, how they connect, and how his changes impact everything else. He can code and make things work, but that's it, we have to make big changes to almost everything he does. A bootcamper who can focus on HTML, CSS, and some simple code would be fine, until they get some more real world experience. In my opinion college vs. bootcamp education are probably the same after a few years of experience if the person is a motivated learner.
- bunnymancer 10y agoAbsolutely. I'm glad to have been hired by a company who had experience with bootcampers before. They gave me a smooth and solid ramp-up to the mid/senior I am now. Being thrown in on the deep end with the expectations that the guy with 3 months experience is somehow wellrounded with the basics of CS is just foolish. Also, of course, not all bootcamps are equal, nor are all students.
- swalsh 10y agoSo basically, the guy who builds a rafter is a woodworker, the guy who nailed the rafter to the structure is a woodworker and the guy who made the dining room table is a woodworker. Each guy is important, but the skill level and education time are different. Not every rough carpenter needs to have an extensive education in fine carpentry to be successful in their area of woodworking.
- mmkx 10y agoNice ad.
- lloyd-christmas 10y agoHow is this possible? I think one key aspect that is missing is that boot camp graduates aren't straight off the barista lineup. I took one at age 28 after having worked in a technical role in finance since undergrad. The average age of my class was probably 29. Beyond just time in the workforce, I had a double major in math and economics with a minor in applied statistics. Had I dropped "Behavioral Economics" and taken "Data Structures" along with some other random course, I could have switched my Econ major to a minor in CS. Many people in my class were of a similar background.
- ammon 10y agoGood point. About 50% of the bootcamp folks we work with have some sort of technical background before the bootcamp. The other 50% do not, however, which is really interesting! (I have no idea how this compares to the bootcamp population as a whole. I would guess that folks with a tech background are overrepresented in the group that passes our screening step)
- lloyd-christmas 10y agoDefinitely. I had a wide range of classmates. We had several people that were project managers looking to gain some technical knowledge/communication skills. They had no intention of becoming programmers. A good chunk were designers who had html/css knowledge that were looking to expand their reach. A couple were a drain on my education. My greatest criticism of the programs is that it's an educational boom, so there isn't a stronger filtering process in place yet.
- RegEx 10y agoIt depends on the school. Some bootcamps have very low acceptance rates to keep their placement numbers high - as that is their main marketing point. They bring in people who can demonstrate they already have the mindset but don't have the knowledge. Other bootcamps just need you to be able to use your computer and you're in.
- Alex3917 10y agoRight, all else being equal I would expect bootcamp grads to be significantly more valuable than CS majors, since presumably they're also experts in design, marketing, product management, or some other area. In addition to being able to contribute in a non-development capacity, even in terms of software being good at coding is probably at most 20% of what makes a good developer.
- personjerry 10y agoI think this misses a huge point: College is a huge factor in social development; This is extremely important not only for developing software on a team, but to developing a healthy lifestyle in and out of the workplace.
- jonny_eh 10y agoA lot of bootcamp grads did do college, just not CS. Bootcamps are a great way to change careers.
- lloyd-christmas 10y agoI don't understand. Are you implying that taking a boot camp means you haven't graduated college? Out of my class of 24, only 1 person didn't have an undergraduate degree. Several even had masters.
- ryanmarsh 10y agoThere are other ways to mature as a person. Such as military service, volunteer work, meditation, travel, and other challenging personal journeys.
- duaneb 10y agoCollege is far from a panacea for becoming accustomed to how an adult lives and interacts with other adults. American society encourages taking on massive debt, moving away from a support base, and tying social interaction to practices that are often deeply unhealthy. It took me three years of attending myself to realize my mistake—it nearly drove me to suicide. Dropping out and actually trying to interact with real adults was what got me humming again.
- cmdrfred 10y agoAhh the old socialization argument. When all the quantifiable claims are proven false this is the educator's best standby.
- madmax96 10y agoI have a slightly more pessimistic view of the situation: Sure, bootcamp grads can write a web application just fine; after all, it's usually only CRUD. But what value are they bringing to an organization? Why would I pay them the same amount as a college graduate who undoubtedly has more total knowledge not only in CS, but in other areas as well? Ideally, a college should expose students to a diverse range of knowledge, each tidbit providing additional value to an organization. If I just wanted an application constructed, I could offshore the job and get it done cheaper. Yes, a well-run bootcamp might be a better __coding__ education than a computer science degree, but coding is the easy part. There are other valuable skills that aren't being taught (i.e. the ability to communicate clearly, how to do research, how to learn independently) that make an organization strong. We aren't in the coding business, we're in the building business. Code is simply a means to an end.
- paulgb 10y agoFrom resumes I've seen, bootcamp participants often have some college experience, just not in CS/STEM. (I do agree that the college experience is more than vocational education and valuable in itself, though)
- llamataboot 10y agoYes, but then I would argue that a mid-career switcher like me (bootcamp here - now employed full time as a programmer for 2+ years) brings a TON of value to your organization. Rather than a fresh-out-of-college person, I have a Master's Degree in my first field, tons of experience working with diverse stakeholders, meeting deadlines, dealing with people I may not get along with, getting to consensus, etc etc -- as well as a hell of a lot of domain knowledge in at least one large field. (In my case I have a Master's Degree in Social Work with a focus on policy research and statistics, but it could be ANY other field than just a CS degree). It's up to your organization to know what they need -- but sometimes what they need very well could be adequate coders that have a ton of other skills rather than people that know more algorithms but don't have any of those soft skills yet.
- llamataboot 10y ago
- somecodemonkey 10y agoBootcamp without years if experience will not replace a Computer Science degree. It lacks the depth to build a solid foundation. While this is just an anectdote every company I have worked for refuses to hire bootcamp grads.
- HNcow 10y agoI'm in the process of hiring a junior position and have no bias towards college grads or bootcamp grads. The only negatives towards boot camp grads I've seen so far is: 1) One candidate had no idea what the terms "Class" or "OOP" even meant. I'm FINE with them not understanding stuff like sorts/advanced data structures, but he ACTUALLY had 0 idea what an int was. No lie! 2) I wish there wasn't such a heavy reliance on MongoDB in most of these programs. Some do have SQL as well, but I feel like 80% of workplaces will be dealing with SQL, so I'm not sure what the focus on Mongo is all about if the purpose of these programs is to make you hireable. I think it's that it's an easier concept to relay since you're working with JSON everywhere already, but I've seen a bunch of people have a very strong bias towards Mongo to the point where they seem to not understand why you even would use SQL. 3) This part might get me in trouble here, but we are a small company in NJ and budgeting 50k for the junior 0 experience position. Most of these bootcamps in Brooklyn or Manhattan instill that you minimum should be making 60k and not to even look for anything else. I disagree with that personally, but I realize it is possible for grads to make this (especially in NYC). I've just come across a few that scoff at us for the pay we have, and I do understand it, but some of my higher ups who don't really feel comfortable with the bootcamp concept don't think they are worth it. Obviously there are a lot of pros with hiring them as well. I think typically they are the more qualified candidates skill wise. None of the ones we've come across have been a great fit so far though, but I think it's because of how close to NYC we are. These programs are based there, and we have trouble competing with the salaries there. That's why we have been having more luck finding college grads from the NJ area though, they don't have these kind of higher expectations.
- llamataboot 10y agoMongoDB (MEAN stack) seems to be a recent shift?? Most bootcamps have historically been Rails/SQL.
- jedc 10y agoIt is. When I hired last summer the Galvanize full-stack course was all Ruby/Rails. By this winter/spring it had shifted to full MEAN stack. I get the sense that it's an industry shift. (Which I personally find a bit frustrating...)
- Philipp__ 10y agoThey definitely are comparable. But I think going to both would be best thing if there is time and strength. Just as I thought college gives you most of theoretical stuff. If you are not used to working on your own, on side projects and are taking college for granted, then you aren't off to a great start. But if you are used to doing something besides college, whether it is paid job or some tinkering projects you do in free time that you later put on github, then need for bootcamp maybe isn't present. So hitting it somewhere in the middle might be best...
- brandonmenc 10y agoBootcamps seem to encapsulate and accelerate the "I taught myself to program in middle school and high school" experience for adults who missed that boat - which is great. The results make a lot more sense when you look at it that way.
- lxe 10y agoDo you remember your college web programming courses? The curriculum is always woefully out of date and seems that traditional undergraduate programs don't focus on updating it. This makes sense -- there are very few academic research areas that deal with practical web applications, and this is obviously mirrored in your undergraduate classes. Don't forget -- universities are also research institutions, while bootcamps are not, and the coursework will reflect this.
- mywittyname 10y agoMy college had state-of-the-art web programming courses along with many other practical classes (mobile, iOS, database design, data mining, 3d graphics). All of which were developed to ensure that students could move onto internships in that field after the course. All of these courses were optional, but the school was very clear about their purpose: to give their students job skills. Most of the recruiters that came to the campus job fairs knew which of these courses they wanted their interns to take and would ask specifically, "did you take CS___"? Obviously there was tons of research-oriented classes too, but those targeted jr/seniors.
- sotojuan 10y agoOur Web Programming course was going to be Rails-based and follow the Rails Tutorial[1], but at the last minute it got changed to late 90s PHP. Sad day. [1] https://www.railstutorial.org/ https://www.railstutorial.org/
- balls187 10y ago> We’ve found bootcamp grads...worse at algorithms and understanding how computers work. Solution: hire a college grad and send them to a boot camp.
- DougWebb 10y agoAfter reading through all of the comments so far, my impression is that bootcamps are for training the developers whose jobs will be automated away in the coming years, and college is for training the developers who will be writing the code that automates those jobs.
- devhead 10y agoThat seems pretty cynical; your logic breaks down when a CS graduate goes into a bootcamp after college. malkovich,malkovich
- vparikh 10y agoI would love it if Computer Science grads took a boot camp course - one that covers css/html/javascript, any MVC framework, ntier patterns, ORM/SQL/NoSQL training. Because from my experience, they apparently don't teach any of that in comp-sci school.
- grayrest 10y agoNone of the things you mention are part of the Computer Science academic discipline, which is what they teach. Computer Science undergrad generally covers algorithms, data structures, parsing/compiling, operating systems, discrete mathematics, and linear algebra.
- kbuchanan 10y agoI think this supports the hypothesis that schooling (secondary, post secondary, bootcamps, whatever) is first and foremost a sorting mechanism. Bootcamps have discovered _one_ avenue for quickly assessing and sorting students into a career they can succeed at.
- lsadam0 10y ago> Bootcamp grads match or beat college grads on practical skills, and lose on deep knowledge. I feel as though you are attempting to lower the bar of what is acceptable in order to sell something :). The word 'practical' is thrown around in this article without much of a definition. Are we talking about making simple web pages? I've just finished conducting a round of interviews for a junior level position, and based on this experience I highly doubt I will be considering bootcamp graduates in the future. As an example, for a question which involved sorting an integer array, and providing a method GetElementAt(index)....95% of the bootcamp applicants implemented sort within the GetElementAt method so that the entire array is sorted with every single call. A handful of CS grads made the same mistake, but most of them did not. Is this sort of oversight excused in the idea of 'practical' programming? Or in your definition, is this considered deep knowledge?
- busterarm 10y agoPersonally, I never expect people to pick the right algorithm the first time. In the real world it's hard to do. I'm much more interested in if they think about alternatives to their solution, know where the problems with theirs are and if they might find an alternate solution to the problem online. If you're hiring junior developers without expecting to be hands-on in their work and with plan to train them, then you aren't really hiring junior developers, you're just trying to pay at junior rates. It's not doing them or your business a service to hire them. There are plenty of CS grads out there with all sorts of algo skills but no practical and will take 3 months + to build anything in your stack. This is basically the same problem with different symptoms: You don't have the resources to hire a junior developer. It's just way easier to blame the hire than your company.
- lsadam0 10y agoI believe we are misunderstanding each other, as you are making some assumptions. We do spend time training junior developers. We are hands on during work. I'm talking about one problem at the start of the process. In the example, I didn't touch on their choice of sort algorithm. I was pointing out that they believed that re-sorting the same array, for every single GetIndexAt(x) call, was an ok thing to do. The majority of boot campers did, the majority of CS grads did not. So if we have two distinct groups applying for a junior level position, and one group has a stronger grasp on fundamentals, I fail to understand how a company is at fault for choosing the better candidate. Objectively, the junior level CS grad had a better understanding of the problem.
- kemiller2002 10y agoBoot camps have their place, but they are not a replacement for a traditional CS degree. I have met good and bad programmers from both types of programs (some from well respected colleges who I still wonder how they exactly passed), but here's the thing, I don't care about practical skills. I care about the person being able to think. All those concepts that they teach in CS isn't about knowing the name of an algorithm, it's about thinking abstractly. I honestly don't care if a recent grad knows how to use IDE x or even much about source control. I can easily teach them that. I can't easily teach a person how to understand pointers or pass functions as parameters. I don't need someone who can write code; I need someone who can look at a problem and realize that we can cut the amount of work we have to do by understanding programming concepts at an abstract level. It is very hard to achieve this in a 12 week course. Can some people do this? Sure, they may have the background from a previous career that aids them in this, but they are the exception and not the rule.
- p4wnc6 10y agoThe trouble is that while most employers say the same thing you say -- that they hire for critical thinking ability and intellectual curiosity / talent -- almost all of them don't actually want that. Instead they want employees who don't think independently; employees who are pliable and will not complain if given drudgery, told to use poor practices, told to make things of poor quality. Everyone says they don't just want warm bodies to type code, but lots and lots of places actually do just want warm bodies to type code. Since this is what wins average-case jobs, this inevitably is what average-case products of bootcamps and universities tend to look like. I actually had a pretty long debate with a professor friend of mine who taught me numerical analysis as an undergrad. Their whole scientific computing program has morphed into this awful mess of basically just teaching various Hadoop tool APIs and Spark. As an alum, I am in concerned. He hates it too, and feels the students are not getting anything resembling a good education in scientific computing. But at the university's considerable career fair, where the faculty actually spend a lot of time talking to recruiters and employers, all they hear is we want more people who already know framework X, library Y, etc. They don't care if you even know what LU decomposition is, what issues there are using power method for eigenvalues, let alone anything about the actual hardware specification for basic numerical types and issues with precision. I mean, they don't even care if you have the slightest fluency or naive understanding of that stuff. Literally zero understanding is fine, as long as you have memorized sections of certain APIs that they use and you will not complain if your job is drudgery related to rote usage of those APIs. Since this is what wins jobs, it's what they teach.
- shubhamjain 10y agoI started programming before college and I was always on my own. I never had a programmer friend until I started working. Although I was always able to get things done but the code I wrote is something that should never go into production. It took lots of mistakes, a lot of reading and shooting my own foot to finally start writing worthy code after like 2-3 years. (Although, there were code bases I worked with that were way worse!) One thing I am curious about is, does a bootcamp make you proficient enough to avoid those mistakes and contribute directly to the application? I am pretty sure, it could have been a lot of help if someone could point out the mistakes I am making in my code, but I am not sure if it would have been enough.
- grayrest 10y ago> It took lots of mistakes, a lot of reading and shooting my own foot to finally start writing worthy code after like 2-3 years. This is completely normal and I expect this out of any junior developer hire. My brother-in-law went through a boot camp and picked up a job writing unit/integration tests and he makes the same errors. Having to maintain your own code and seeing the consequences of your decisions gets you over this hurdle. I've seen the same for junior web devs coming out of agency work.
- deleted 10y ago[deleted]
- babbeloski 10y agoBootcamps make people employable for sure, I work with a team of people mostly from Bootcamps. I think the problem with some of them is they don't actually like programming. Learning new things and change is met with a lot of feet dragging. Don't get me wrong, I know a lot of programmers that are just 9-5'ers. It just seems like anytime there's any extra effort involved a ton of justification and selling needs to happen.
- dontscale 10y agoI think the debate about Colleges vs. Bootcamps is an apples to oranges comparison Algorithms are commoditized into libraries. Web design has been commoditized with templates. Open-ended programming is still more complicated, but putting apps on the web today is easier than static HTML just 5 years ago. Parts of programming will continue being commoditized. So if it's easy to create something and put it out there, the great and all-important challenge that faces developers today is making it matter.
- Mc_Big_G 10y agoThat's because bootcamps specifically teach you how to pass interviews. I'm a senior developer and suck at interviews because I haven't taken my spare time to specifically study for interviews. I don't remember how to reverse sort a b-tree or whatever inane questions are asked because I don't need to know that to do my job spectacularly. It's actually kind of a joke that bootcamp grads interview better.
- caconym_ 10y agoIt makes a lot of sense that bootcamp grads would outdo fresh college grads on "web system design"; they've presumably spent most of their bootcamp time focusing heavily on web systems. Stuff like load balancers/reverse proxies, distributed message queues, noSQL DBs, etc. may be totally foreign to a lot of fresh college grads, while a bootcamp grad can probably be expected to have a not-too-shabby understanding of how those components fit together. The "practical programming" bit is a little more depressing, though it does ring somewhat true based on what I've seen in real life. How people can spend 4 years programming and still consistently fail at building decent abstractions, I have no idea. Also, where is the "neither" category? There are dozens of us... dozens!
- ammon 10y agoWe also work with a bunch of great self-taught folks! Perhaps I'll blog about this in the future!
- jedberg 10y ago> It backs up the assertion that algorithm skills are not used on the job by most programmers, and atrophy over time. This was the most interesting part to me. I'd love to see more on this. I've always found it silly to ask algorithm questions of senior engineers. There seems to be an exponential falloff of that knowledge as one gets further from graduation.
- andrewvc 10y agoWhat a load of crap. What, they bred the capacity for abstract thought into you in college? College attracts a generally higher quality applicant pool. You're mistaking selection bias for an effect. Let me tell you, I've interviewed programmers from all over. There are boatloads of people with CS degrees with close to zero capacity for creative thinking. There are also boatloads of CS grads who can barely code their way out of a while loop (true story!). I've spent my career (no CS degree!) working alongside CS grads. I've gone further, faster, than most of them. I've had to deal with this kind of idiotic commentary over and over again. CS grads are always surprised that I never got a degree (oh, I never would have guessed! you're different, its those OTHER people without degrees who are idiots). Four years of school + the associated debt creates a big incentive to believe that you got a square deal out of college.
- balls187 10y agoAre you the standard, or an outlier? // The ELK stack is pretty sweet.
- andrewvc 10y agoMaybe I am an outlier, maybe not. That would need to be quantified. I don't think I'm an outlier. I think there's a wide range of skill sets across the percentiles in the non-CS set. Maybe those %s are different than in the CS degree set, but that's really hard to quantify. Parent made the point that "All those concepts that they teach in CS isn't about knowing the name of an algorithm, it's about thinking abstractly." The point is that making that sort of sweeping generalization is harmful to everyone. Parent is implying that there's a secret skill set that can exclusively be unlocked by getting a CS degree. I think we can all agree that as a categorical statement is plainly false. These statements encourage people to not look at the individual but instead rely on a set of biased and unquantified assumptions. // P.S. glad you like the ELK stack :)
- ConnorG 10y ago//I work with Splunk currently and have been interested in looking at the capabilities of the ELK stack. have any recommended places to start?
- andrewfromx 10y agowhen I read "4 years" I don't remember doing nothing but code for all 4 years during my CS degree. Part of the appeal must be that you focus on just coding intensely for a short period of time. I'm thinking back on my 4 years at pitt.edu and my god did I waste a lot of time. If you distill it all down, maybe it does == 3 months at good camp.
- danso 10y agoI wouldn't be surprised that a bootcamp grad could beat a college CS student in practical web knowledge. Stanford has a web applications elective, CS142 [0]...in the previous years, it focused on Rails [1]; this year, it moved to the MEAN stack. In both syllabi, a week is spent on learning HTML/CSS alone...this year, I believe they spend a couple weeks learning JavaScript. This class is an elective, which means that students aren't expected to know HTML/CSS/JS before taking it, though the core CS classes (Java, C) are prereqs. This also means that students who don't take 142 could quite graduate without having any practical knowledge about web development. That said, it's not because the CS students couldn't actually learn practical web dev, and as others have said here, the best bootcampers are often folks who have a STEM background already. [0] http://web.stanford.edu/class/cs142/ http://web.stanford.edu/class/cs142/ [1] http://web.stanford.edu/~ouster/cgi-bin/cs142-winter14/index.php http://web.stanford.edu/~ouster/cgi-bin/cs142-winter14/index...
- jhchen 10y agoIt was not long ago that Computer Science degrees itself faced a similar challenge, against more well-rounded liberal arts programs, championed and prided by the Ivy Leagues. Today MIT and Stanford are ahead by the strength of their more “practical” engineering degrees. The data from Triplebyte supports the same narrative, just in greater granularity: businesses value practical skills. There is value in being balanced and diversity, but this applies to teams, not necessarily individuals. Not everyone on your engineering team needs to be an architect. After your globally distributed, fault tolerant, realtime, highly available system is designed, somebody’s got to build it. And most startups or software teams have no business even trying to design such a system in the first place. In the US, my generation was told we all needed four year degrees. We don’t. Some jobs and some roles certainly but the entire population of future adults? There is an engineering shortage in the US because everyone was too busy getting four year degrees in more well rounded fields. Meanwhile Apple needs tens of thousands of engineers that could have been trained by two year vocational programs that the US was apparently above for our children, and thus cannot meet their business needs. And yet this data from Triplebyte is incredibly encouraging because while we screwed up the educational policy, it may not be so difficult to fix.
- WaBlueKey 10y agoI really appreciated your response. I too came from the four year degree generation. After years in my field (technical communications), I decided to pursue my earlier dream of becoming a software engineer. I think the shift in times and ever increasing business needs for engineers are propelling this change, but there is also an overall need to become more versatile. I am fortunate enough to have found Holberton School, which has a two-year software engineering program that emphasizes project-based and peer-learning methods. I appreciate the balance of theory and practical work that I have to complete but most importantly, the flexibility with which I can learn. The evolution of tech will continue to span out and eventually, these shortages will be felt outside the US.
- azth 10y ago> it may not be so difficult to fix. Would you want graduates of such programs working on the software that goes into your operating system, your car, or other such systems? I doubt you'll find people graduating from these programs working at places like SpaceX or the JPL (unless they're doing some CRUD/web dev work), or even at Apple designing compilers or iphone processors. Just as an anecdote, my current company hired a couple of graduates of these programs, and they didn't fair well.
- AJRF 10y agoOne thing I realised my final year of University is how much marketing Universities do towards the job market. They shop their students and curriculum around to employers all over the county (some on an international level). There is going to be a lot of inertia involved when it comes to hiring from Universities that most Bootcamps don't even consider or spend time doing. I don't think they give universities any cause for concern, and wont, for some time.
- JustSomeNobody 10y agoLikely, you see more people getting a CS degree because they feel it's a good job than the people going to bootcamps. The people going to bootcamps are more likely to be doing it because they've done some development and really like it. Now, what bootcamps aren't going to give you is the breadth of a CS degree. But if you're getting a CS degree just for the money, you're not picking things up very well either. So, I can see where a certain % of CS students and bootcampers are roughly equivalent. I feel if you're very interested in CS and get a college degree and do really well in college, you're going to come out ahead of someone taking a 3 month bootcamp. I also feel there's more opportunity for CS degrees. ie, one probably isn't going to see too many 3 month bootcampers doing real time development. (I'm talk real real-time, not that buzzword web real time.)
- Kinnard 10y agoI would love to see a break out for people who are neither bootcamp grads nor college grads but who are completely self-taught, like me :) Surely they've received some applicants in this category.
- emodendroket 10y agoThis is neat, although as someone who attended neither (well, not for computers anyway) I guess I can't do the solipsistic thing and look for myself.
- forgotAgain 10y agoI wonder how many of the engineers at this weeks Google I/O or the next Apple Dev conference went to bootcamps.
- TheCowboy 10y agoProbably not a lot. One obvious reason is because they heavily recruit from elite universities. They have the budget, size, and reputation to make that approach work. Another reason is because the number of people who have gone through bootcamps likely represent a tiny portion of the programmer labor force. So looking at the percentage of Google engineers who attended bootcamps has to be compared to the larger pool of applicants, otherwise it may not be measuring what people think it means.
- lyime 10y agoIt's hard to measure hunger. My intuition is that it plays a big role when it comes to finding success after going through a bootcamp.
- egonschiele 10y agoHey, I wrote an algorithms book aimed at bootcampers! The epub is out today, print book to follow: http://amzn.com/1617292230 http://amzn.com/1617292230 I'm hoping this will be an easy to read algorithms book for bootcamp grads. Here's a sample chapter for anyone interested: https://manning-content.s3.amazonaws.com/download/f/a75f93d-81e7-4c32-b1b8-7033df6bbf36/GrokkingAlgorithms_SampleChapter2.pdf https://manning-content.s3.amazonaws.com/download/f/a75f93d-...
- m0ngr31 10y agoI bought the book on Amazon, is there a way to get the .epub before it ships?
- egonschiele 10y agoYou should get a download link from Manning in your email, let me know if you dont!
- m0ngr31 10y agoI haven't seen anything yet. Do I have to register the book after it ships?
- egonschiele 10y agoWhat is your email? I'll have Manning check on the order.
- douche 10y agoJust bought it today, can't wait for the dead-tree version to get here. Looks pretty interesting. BTW, Manning was running a promotion on their mailing list for a 50% discount today.
- savrajsingh 10y agoOne of my close friends said it best: "savrajsingh, Lebron James doesn't care if you start playing basketball."
- analognoise 10y agoOf course employers love bootcamps - they need business logic monkeys who lack the fundamentals and therefore don't increase in value over time as much as the people who actually put in the time with said fundamentals. It's cheaper to have somebody who doesn't have a real education.
- MaxfordAndSons 10y agoThat's a remarkably cynical opinion. Why do you assume bootcamp grads learn and become more valuable at a lesser rate than CS degree grads? You're also making the assumption that bootcamp grads decided to forgo a CS degree in favor of an easier route, which in my experience is rarely the case - by and large bootcampers are there because they want to change careers, not as a way to cheat the system without learning "the fundamentals".
- changkx 10y agoObviously this isnt every case but quiet frankly it's bullshit if somebody who studied some "worthless" major like psychology or history then thinks they can do a 10 week coding bootcamp and be on par with a CS grad. If anything the TIME alone that a CS grad has to put in to graduate puts them above coding bootcamps.
- MaxfordAndSons 10y agoI don't think most people come out of bootcamps claiming they're "on par" with CS grads, but rather that they're good enough to be given a chance for some subset of programming jobs. Also the time based argument strikes me as misleading - bootcamps are much more intensive than university curriculums. University students aren't studying 10-12 hours a day, 6 or 7 days a week every week; most Bootcamp students are. That said, I recognize that the University student undoubtedly takes in a greater volume of material, but the ratio is severely distorted by referring to it as 4 years.
- kin 10y ago
- morgante 10y agoI'd love to see some more mathematical analysis of these differences. In particular, I suspect that while the averages are similar, the distributions look extremely different. Specifically, the average engineer out of either a bootcamp or college is pretty mediocre. But the top 10% of engineers are mostly college graduates and are definitely not bootcampers. This is because the best developers are overwhelmingly passionate about development and have been doing it since high school. If you love programming, you might go to college to get a firmer academic standing. You definitely won't go to a bootcamp—if you've been programming for 5 years, a 3 week bootcamp makes no sense. On the other hand, when it comes to the bottom tier I suspect bootcampers are a lot better. This is mostly because the bottom tier of CS graduates are atrociously bad. Regrettably, it is possible to graduate with a degree in CS without ever having written a single program by yourself. They slink by mostly through cramming for exams and "collaborating" with peers. My impression is that bootcamps are actually less tolerant of this behavior: you won't make it through a bootcamp without ever programming autonomously.
- RegEx 10y ago> if you've been programming for 5 years, a 3 week bootcamp makes no sense If you want to make a transition to web dev from say, systems programming, cramming that knowledge into a few weeks might not be a bad way to go. At that point, you should already know how to learn, it's just a matter of sitting down and learning it.
- ammon 10y agoThis is roughly what our data shows.
- brudgers 10y agoThere are several factors that don't enter this analysis. 1. Bootcamps can be selective over a range of non-academic criteria such as interview skills, personal hygene, and prior work experience. Or to put it another way, unlike a public university, a boot camp can select for culture fit both in its internal cohorts and in the workplaces it targets. 2. Bootcamps tend to attract people with previous work experience: someone more likely to have several years of working to keep a roof over their head than a recent CS grad. There's a difference between a junior programmer with their first real job and a junior programmer who has spent six years working crappy jobs [or good ones]. 3. Bootcamps have much more latitude to train for employment and employability. Listening to Jeff Meyerson's hours of bootcamp love songs, those interviews have left me with the distinct impression that doing so is common. 4. Bootcamp grads may come out with a stronger alumni network that can provide recent feedback about interview processes like Triplebyte's. Going in with some idea of what's coming is likely to produce better results. 5. Bootcamps don't have to report their "failures". There's no independent oversight or accountability of the sort common in university education. A "C student" may simply find it impossible to graduate a bootcamp. The bootcamps are free to shape their "graduate" pool however they wish.
- AceJohnny2 10y agoMy girlfriend did a bootcamp. It was a very useful experience, and overall we would recommend it. All your points are valid, including the last one unfortunately. That was the one black point about my gf's experience when she was having trouble finding something that suited her: they dangled the threat of dropping her from their network. Also, I should add that bootcamps like hers aren't a "Zero to Hero" offering. They actually expect you to have significant skill in programming, being able to complete non-trivial exercises and projects in their language of choice before even starting. Don't mistake this for a rubber-stamp institution that takes already-skilled people though. It's just that their minimum requirements are already pretty high. The curriculum thereafter is pretty grueling and she learned a lot.
- deleted 10y ago[deleted]
- 10y ago
- WWKong 10y agoGo to college. Life is long and it is not about passing your first interview. Real world is complex and ever changing. The point of going to college is not to acquire coding skills to pass the interview. It is about facing real world challenges: people, responsibilities, complicated decisions, uncomfortable situations etc. And hopefully at the end of it you are better prepared to take on life. It is a harder path than going to a coder factory. Take the hard path.
- hwang89 10y agoThe majority of bootcampers already have an undergraduate degree and years of life experience - enough to drive them to take on more debt and change careers. Pretty sure this is the harder "real world" path to an entry-level coding job.
- Sk1pp 10y agoMakes total sense if you're coming out of high school I think. But we can assume that there is a decent amount of people that are switching post college to a programming related field. And in terms of college being the hard path, I'm not sure that it was. I don't know how college helped me with "responsibilities" or "Uncomfortable Decisions". Not to mention the cost of college is pretty extreme, taking on 7k (usually more) a year at a state school would be expensive and stressful. (Real world challenges lol) I think the solution would might be to step up the bootcamps to be a little more in-depth, and probably take a little longer, like a year at night, or something like that.
- 10y ago
- genzoman 10y agowhether or not you come from a CS background, or a bootcamp background the proof is in the pudding: can you answer the whiteboard questions? if so, you pass, and nobody cares where you went/did not go to school. if that's not enough, revise the whiteboard question.
- Jormundir 10y agoThese results aren't very surprising because this is about interviewing performance. The goal of bootcamps is "teach you enough to get a job"; they're basically gaming the interview process by teaching to the test. University programs on the other hand are "teach you CS theory"; learning to interview well is up to the student and the specific school's offering of interview training. I think there's a strong argument to make that university programs are too focused on theory, when the vast majority of their students are going to go out and get practical engineering jobs. I don't want the pendulum to swing too far to the practical side, though, because then you lose the long-term benefits of getting a CS degree. Although, schools can certainly buff up their practical material. Anecdotally; when I participate in hiring, I tend to discount the bootcamp grads. Maybe it's unfair, but my experience hiring them has been that they know how to interview well, and know their tools well, but when you compare them a year in, they're pretty far behind their university counterparts. I see a plateau, where it's hard for a lot of bootcamp grads to move from doing generic web development to designing more challenging systems. Obviously it depends on the individual, but this seems to be a categorical struggle for bootcamp grads with little technical background. A lot of companies really just need more people doing web development, so being open to the bootcamp pool is essential, and ruling out bootcamp grads is silly.
- tetrep 10y ago> I think there's a strong argument to make that university programs are too focused on theory... Is there? I found practical programming knowledge to be very easy to pick up due to having piles of theory that back up why it's a good idea, why it makes sense to do so, etc. You just need someone or something to tell you to do it. It's why side projects are such a good idea, you get a great wealth of knowledge just from your own mistakes/failures that will occur naturally as you map theory to reality. But you can learn so much more so much more easily when you have that theory to start with.
- uptownfunk 10y agoAt the least something like a 1 unit weekly seminar on how to approach interviews would be super helpful. It would also make it feel like Unis were coming from a good place if they said "Hey, we're gonna teach you the theory, but we're also gonna make sure you kickass at an interview as well so that you come out strong when looking for a job". I'd really appreciate that attitude more.
- findjashua 10y agoI'm not sure why this is a surprise. Computer Science and Software Engineering are different things, the only common factor being programming.
- partycoder 10y agoHaving interacted with a lot of both lately, my impressions are that bootcamp graduates focus on mostly on functional requirements. They have a hard time identifying non-functional requirements, assessing and mitigating risk, and start getting confused when things go low level. In my experience, all "friendly" technologies have sharp edges somewhere, where you start getting exposed to low level issues. When you face these issues, there's no guarantee the answer will be in stack overflow and you will appreciate having learned some theory.
- seanhandley 10y agoWe've hired a couple of junior developers lately that had no college experience but significant online training and the experience so far has been very positive. Given how long it takes universities to update course materials, I'm not sure they can compete with this kind of education programme. It's true that a lot of the fundamental computer science is missing but with senior devs on the scene, any gaps can be filled with an afternoon around a whiteboard.
- baron816 10y agoAll you need to know: some companies can use bootcampers very effectively, some cannot. It all depends on what the company is doing. It's evident that since many companies have found great success while employing bootcampers that the skills they provide are useful.
- eastWestMath 10y agoThis just in: web dev body shop is perfectly happy with bootcamp grads.
- Fiahil 10y agoCould it be possible to combine both worlds? Getting a university degree by spending four years with a strong focus on practical skills and intense workload[1]. To my knowledge only the top tier of american colleges (MIT, Berkeley, Stanford, ...) come close to that achievement. But, in France, where I live; I had the opportunity to go to a private school "specialized" in computer science (Epitech, 42, if you wanna look it up), that was mostly an "enlarged bootcamp" from year one to year three. It was kind of funny, for me, when my peers from traditional schools ended up discovering version control in their final internship. [1]: Once you replace the shitty paper exams by actual projects in programming classes, you'll be amazed by how much you'll increase student proactivity.
- serge2k 10y ago> How to use an editor is something that a traditional CS degree program would never think of teaching. Of course not. Why would they ever do that. It falls into the same bucket as version control. It's useful, but go learn it yourself because it's not that hard.
- danellis 10y agoI swear, articles like this are going to cause me to have an existential crisis. I started learning programming as a child in the 80s. More than 30 years later, I like to think that I've acquired a lot of valuable knowledge and experience across a broad range of topics, and yet... when I hear about people training for three months and walking into decent jobs, I start to wonder what actually differentiates me at all. For the sake of my ego, I'd love to hear that these bootcamp graduates have shallow, fragile knowledge in a narrowly focused area.
- AnimalMuppet 10y agoWell, they definitely don't have 30 years of experience... And that matters. A big part of what you've learned in 30 years is mistakes not to make. It's the bugs you don't write, and the bad architectures you don't build. That makes you a much better programmer, even if you know less about the new shiny than someone who just went through a bootcamp.
- blister 10y agoShit man, I feel your pain. I'm actually quasi-looking for a job now at a super senior level (lead engineer or above) and finding it surprisingly frustrating. I'm employed full-time and have a family. I get daily phone calls from recruiters with interesting positions and then expected to be available for 8 hours of interviews and crap like that. I jumped through a few of these hoops early on but since I have a breadth of experience instead of a laser specific focus on one technology, I'm apparently getting disqualified from some of these positions. It's been a really weird experience for me. I mostly gave up, figuring that if I lost my current (good) job I'd have the free time to devote 16+ hours each week interviewing/applying for the types of gigs I want. Our industry is bizarre at times. It's weird being on the other end. Almost all of my jobs have come from word of mouth and personal networking where I never even needed to interview. I interview and hire all of my engineers by taking them to lunch and just getting a feel for their interests and personality, so seeing how everyone else seems to be doing it has been a huge culture shock.
- seattledev14 10y agoWhen you think about it as skills training vs. college I think it delivers on it's promise. In college, most people don't declare a major until their Sophomore or Junior year, so the idea that competition is a 4 year degree is a bit misplaced. Code Schools don't teach music appreciation, though there are a lot of musicians. Bootcamps offer an intensive at 40+ hours a week vs. a two hour class two days a week. Can you deliver skills based training in 10 weeks? The placement rates would say yes. Do some schools focus on placement while others focus on taking tuition... That's true as well. Look to find the school that has a placement track record.
- ogrev 10y agoThis is basically a warning to every single person going through bootcamps right now: Your skills are not special. You can be replaced with ease. Unless you differentiate yourself through what you learn either at your job or after the camp and demonstrate it through your work then your job will be kaput. That's basically what all of those Everyone Can Code advertisements were trying to achieve which is to make these skills a commodity. Good luck.
- mattnedrich 10y agoGreat advice - also applies to college graduates. It applies to everyone, really :)
- harlanji 10y agoThis is the most honest comparison I've read so far. I dropped out of high school because I was making good money by 18... kept working, saw my own limitations, and did a BS degree in 3 years, graduating at 26. That was 5 years ago today, actually :) I see this same distinction in practice, thanks Triplebyte for quantifying it. If I were staffing an engineering team, I'd absolutely take junior engineers from bootcamps and senior engineers with university backgrounds. I like the surgical model from The Mythical Man Month, and have seen elements of it working by hiring junior test engineers of varying technical backgrounds and training them. I think a BS degree in CS makes a lot more sense when you're hitting the edge of your capability as an independent contributor--many may never need it, some will love going on a few year sabbatical and earning their 'piece of paper' (as I did). Biggest factor that gave me an edge was I had lots and lots of context for all the content of classes, and I took notes every single day, Beginner's Mind style and didn't try to test past intro classes... even CS 101 with Scheme. I was also able to work on my mentoring/leadership skills with classmates.
- Ologn 10y ago> it still just seems hard to believe that 3 months can compete with a 4-year university degree. Yes, it is very hard to believe. Impossible, actually. > Bootcamps, are intense. Students complete 8 hours of work daily In-class time is not the gauge for college. Students are supposed to spend at least three hours studying for every hour spent in class. On top of that are office hours with the professor, as well as contact with the TAs or study labs. If my courseload for a semester is Calculus 102, Theory of Computation, Algorithms 201, Principles of Programming Languages, and Computer Architecture, I don't see how it is different than a bootcamp because a bootcamp is "more intense". I don't know how you can get more intense than juggling these five topics. > Traditional CS programmers spend significant amounts of time on concepts like NP-completeness and programming in Scheme...But it is not directly applicable to what most programmers do most of the time. Bootcamps are able to show outsized results by relentlessly focusing on practical skills...How to use an editor is something that a traditional CS degree program would never think of teaching. Ugh. I took a course in OS principles and then one in distributed systems. The first course covered mutual exclusion somewhat, the second much more. I spent quite a lot of time writing complex Java programs that handled mutual exclusion well. Guess what I am doing today, years after that course? Writing a complex Java program that uses mutual exclusion. I only took that second course because it fit my schedule, but it has come in very handy over the years. Insofar as NP-completeness being "academic CS", I have unfortunately seen too many bugs ( https://bugs.freedesktop.org/show_bug.cgi?id=3188 https://bugs.freedesktop.org/show_bug.cgi?id=3188 , https://sourceforge.net/p/jedit/bugs/3278 https://sourceforge.net/p/jedit/bugs/3278 etc.) where people did not heed the polynomial growth of algorithms. They're trying to dumb down what you can't dumb down. The reality can be seen if you look around a SoMa startup and wonder where all the grey-haired programmers went. Where did those programmers who were in their mid-20s in the late 1990s, programming for the dot-com startups, in an even more inflated market, go? Where are the grey-haired, balding programmers in your company? And this bootcamp is the answer. Just look at the real estate prices and you know the market has heated up. Naval Ravikant turned down $600 million last year because he said there weren't enough places to invest that. Despite talk of perhaps some cooling since the beginning of the year, things are pretty hot. So get some kid to go to a bootcamp for a few months. They can only get their hands on one real programmer, but they can hire a few of these bootcamp kids to do a few MVP's, or maybe code some features up, which the real programmer will have to fix later. What happens to these kids later, who have no foundation in what they're doing, who have no deeper understanding of what they're doing? > programming in Scheme...How to use an editor is something that a traditional CS degree program would never think of teaching. That's because a traditional CS degree program teaches you to write your own editor if need be. Stallman went to MIT and wrote Emacs, Bill Joy went to Berkeley and wrote vi. What the hell point is there to teaching an editor? I was using Eclipse with Android plugins a year ago, now I'm using Android Studio. University is to teach concepts which will exist decades from now, not the Javascript library framework du jour. The ones who will make out on this are the bootcamps, and the companies who can use these kids when the market is hot and will dump them when their usefulness is over. Just like what happened in 2000 (or 2008). You'll see what your bootcamp and two years working at a failed startup amounts to when the economy cools, job listings dry up and the posted ones say "BSCS required". Being able to cut and paste from Stack Overflow and use frameworks other people wrote and extended is not an educational foundation. There are a lot of strawman arguments on the other side. Yes, the hardest working, brightest bootcamp graduate is probably better than the laziest, dullest person who managed to graduate from some third-rate college and get a CS degree. And so forth. None of that detracts from the point though.
- nappybrainiac 10y agoI'm not sure that a comparison between bootcamps and college is viable. College is not just about learning to code. You also learn to deal with professors and how to get the best grades out of them. You figure out how much you can drink without the glaring hangout that interferes with your morning philosophy class. You sign those forms to get credit cards that haunt you till you have a job. If you're smart, chose a good college and get really lucky, you might actually learn something and get a job after graduation. Boot camps are about learning to code, creating networks and passing interviews for tech jobs. You can't pledge, or hang out with the furries, paint your face with your college colors for the football game at the weekend, or struggle figure out if your summer course fulfills the requirement for your social science elective. These two places of learning can peacefully co-exist and each one has its purpose. I even think that it would be good for some CS Degrees to walk into a bootcamp to explore something new and expand their knowledge. Bootcamp replacing college? I don't think so. Not till bootcamps have long lines of students trying to change their course selections at the registrar's office. There are some options that lie somewhere in the middle...
- superuser2 10y agoIf I were stranded on an island with the laptop I used in college and a power source, I'd have a pretty good idea of how to stumble through: - A multithreaded UNIX-like operating system with user programs, system calls, and a filesystem, with reasonable (if not entirely optimal) caching strategies. - A TCP/IP stack for that operating system. - An authenticated encrypted channel over my TCP/IP stack with forward secrecy by building a pseudrandom function up to a stream cipher, RSA with OAEP, Diffie-Helman, etc. - Network services from the RFCs in C (we did a router and IRC). - A high-level programming language with support for both functional and OO idioms based on the typed lambda calculus with recursion, lists, records, tuples, ref cells, subtyping, etc. - A lexer, typechecker, and interpreter for that language using parser generator tools, a recursive descent parser, or a shift-reduce parser in a pushdown automata model. - A formal specification of the evaluation and typing rules and a type soundness proof for that lanugage. - A distributed KV store with Paxos, Raft, or Byzantine Generals running on my encrypted channel and written in my language (we used 0MQ and were given a 0MQ broker that could be told to drop messages for testing purposes). - Greedy, dynamic programming, network flow, and ILP algorithms with proofs of correctness and efficiency. My class work repositories put me about three quarters of the way there. I'm sure bootcamps can teach people enough to tread water in a dynamic language web framework, and that meets real business needs and adds real value. But college is a chance to go deeper. I know nobody is paying us to build our own lightsabers. But - and call me old fashioned if you'd like - I think a professional ought to be able to build his own lightsaber anyway.
- felix_thursday 10y agoThere's something to be said about a person doing a bootcamp. Not only is it a drastic career pivot, but choosing to invest in yourself like that is a huge sign of maturity, growth mindset, and awareness. It's no surprise that a bootcamp grad can quickly get up to speed in their first professional dev environment. I did the WDI bootcamp through GA, and loved the experience. My motivations weren't to become a full-time web dev, but to become a much better, more well-rounded product manager. It's paid off 5x over so far. There's a ton of garbage bootcamps out there, and it's unfair to lump them all together -- it's unfair that these exist. period. While, you can't replace the deep technical and theoretical understanding you get with a classic CS degree, if your goal is to build web apps, do you really need the formal experience, or can you learn that on the job?
- puppetmaster3 10y agoAlso cheaper and faster, a good way to save tax resources maybe?
- AlexeyMK 10y agoI'm most curious to see what the stats are deeper into the funnel, specifically: - At what rate do bootcamp grads vs new grads get offers (intro --> offer at portfolio companies)? - Is the above metric significantly different for different classes of companies (either segmented by company size, field, or "CRUD-eyness" of company? As a former hiring manager at a "much harder than CRUD" company, I remember looking at some bootcampers and saying "I wish we could interview these people, but the knowledge gap is just too significant".
- DaveParkerCF 10y agoOver the last three years at Code Fellows in Seattle (www.CodeFellows.com) we've seen the market change a lot for students, hiring companies and curriculum. At launch, there was a lot of pent up demand. 400 people applied for a Ruby class of 25. Most that took that first class had been self taught and in the surveys said they had been hacking at projects for an average of 18 months. Code school was a way to speed their path into a professional developer role (note developer, not engineer). The majority of students today already have a degree and are looking to switch careers, average age of ~30. They are looking for skills to transition so in that way, going back to college isn't an option unless it's for advanced degree. The same is true for the veterans that are transitioning to the workforce, they have been in a very structured environment and want to speed through job ready training vs. four more years at college. "Stack switchers" tend to be the top of the compensation range. If you have 10 years of .Net experience and want to switch to iOS. You'll earn top dollar. If you don't have much real world experience you'll land an entry level JavaScript job with that skill. The needs of hiring companies has also shifted as the market has matured. There are more "code school grads" in the market looking for jobs, so the process of screening needs to be better, interviews need to be improved and tools like triplebyte.com improve transparency of skills. Hiring Junior developers has never been the preference for employers. Everyone would rather hire both skill and experience. But when you're competing with larger companies in a hot job market, you'll often take Junior talent that is a good culture fit. By culture fit I mean a combination of past education, work experience and new skills. Combine that with work ethic and desire and you see why most of the strong code schools have a high (90%+) placement rate. Curriculum have changed as well. Code schools have to be teaching at the front end of the hiring demand. Teaching an old tech stack where job postings are heading down won't work. Review StackOverflows recent survey if you're curious about stack preferences. Code schools are also required to be licensed with each state where they do business. That's a requirement not all schools follow. It's really about consumer protection in that way so check with your state. The industry is still immature and you're correct that there isn't any reporting standards, e.g. are placements rates reported at 90 or 180 days past graduation, etc? We're working with a number of companies like the Iron Yard to standardize on reporting and moving to audited results over time. I hope that someday we can apply the same placement rate standards to other academic institutions. As a dad of college age kids that would be amazing (note the White House tried that two years ago with a scorecard and the Universities said no). Regarding the debate of should everyone learn to code or no one learn to code? It's a skill, it's not for everyone. It's a job that isn't for everyone. There are a lot of online resources, information sessions and one day courses, start with the low risk version and see if it's for you. With an average starting salary of $71k in Seattle, the compensation appeal is a strong draw for people outside of the tech industry. You may be drawn to the compensation just make sure that you are also drawn to the work.
- indatawetrust 10y ago> Note: We are only accepting applications from programmers. significant.
- AlldenKope 10y agoCompanies focus too much on attracting talent, not enough on developing it. If both of these screened avenues of entry to software development are as promising as these metrics indicate (each with their pros and cons) here are some potential larger takeaways for companies: 1) Invest in the continuous development of your employees, regardless of their background and seniority 2) Hire for teams, and diversify teams with both CS and BC grads 3) Hire more people in general (maybe on a probationary period) Fit to small teams with the goal of cultivating experientially diverse teams, and spend significant time developing employees - junior and senior. Any intellectual work should involve continuous learning and development. If the company's focus is restricted to current projects, or on the bottom line, or if managers enforce strict division of labor, an organization will warp to optimize for those metrics and become less adaptable to inevitable changes in the market (or within the company) and the company will fail to compete - or at minimum incur major opportunity costs. What these metrics suggest is that if you take relatively successful candidates and invest in their individual development, both in depth and breadth, that investment will pay off. You'll create engineers who find better solutions to problems and - more importantly - who find better problems to solve.
- andreasklinger 10y agoI agree in all points. How i usually justify this (anti)pattern in hiring for myself: For startups it's hard to think/plan/project further ahead than they are old. Especially if you are measured by short term impact vs spending or long term planning.
- soneca 10y agoI believe not all bootcamps are equal. Is there anywhere a curated list of good, recommended, worth your money bootcamps?
- douche 10y agoSo would the best of both worlds be the combination? Four-year CS program for the fundamentals and the deep knowledge, then the summer after graduating (or really, senior spring, when the coasting sets in) a bootcamp-style training on practical development? I don't think that a traditional CS degree makes you code enough to become a good software engineer. I certainly wouldn't have gotten enough practice actually writing code if I just did my coursework and didn't dabble in other things, like game development. Let alone other practical skills, like debugging/profiling (barely touched upon), source control (likewise), testing (completely ignored), project management/estimation (noop...). I'm still amazed and horrified that I took a Data Structures and Algorithms course that required nothing beyond proofs and a little pseudocode - not a line of actual, working code. It could be tailor-made for really understanding memory-management or TDD.
- puppers 10y agoUniversities don't necessarily teach students programming. They teach them Computer Science. Bootcamps teach students programming, definitely not CS. I highly doubt they could teach a student 4 years of CS material in 3 months.
- strathmeyer 10y agoTriplebyte figured out in twenty minutes that I didn't learn enough while getting a CS degree at CMU in order to get a programming job so... good luck to them.
- megapatch 10y agoThis is obviously comparing different things. Bootcamps and College are not replacing each other. But there is a difference between learning because you are hungry for knowledge (college) and learning because you are hungry for food (boot camp, you need to do your job). The former makes you better in the trade.
- lordnacho 10y agoWell this is interesting to me, as I've recently worked with a bootcamp graduate, and I've been looking over my brother's shoulder while he finishes his CS degree at Columbia. - Bootcamp lady was very able on the iOS project we were working on. She seemed to know where things were in XCode, and she understood Obj-C and Swift (no embarrassing questions about what classes are). She didn't seem to know about other environments (and said so), but we were doing an iOS project. - Ivy league guy seems to have touched every common language (c, c++, Python, HTML/JS/CSS, R, and more), along with common tools (vim, pyCharm, tmux, gcc, VC++, laundry list). I was surprised by how practical it was, actually. I thought it would be obscure algorithms the whole way, but I guess they take the theory and essentially force you to learn the practical aspects by implementing things in relevant stacks. - Bootcamp lady was very good working in our little MVP team. Understood how common management ideas like Agile work. Conscientious with looking at the Trello board, asking questions in Slack. Not sure if this is just her personality, or because they tell you how software teams work. - Ivy league guy had lots of group projects, but they tended to be dysfunctional. There was always someone shirking. Some people had no clue what was being built or how to compile it. There didn't seem to be any management oversight, just blind "let's get this piece done" type organisation. - Degree guy has way more breadth. He was routinely looking at machine learning, implementing demos with scikit, setting up VMs for himself, looking at assembly, looking at SQL optimisation, and other diverse tasks. Bootcamp grad didn't need this stuff, but also would need significant training to get to that level. - Ambitions were similar. My background is in financial code, and they both want to do that. Bootcamp grad has quite a mountain to climb, particularly with things that take more explanation than MVC. She has a good attitude, so if someone would teach her she could do it. My brother is better positioned though, and would need less teaching to reach the same place.
- enricobruschini 10y agoThel real big difference that too often Americans forget is that college (and all the education system below colleges) gives you the structural mindset to break down complex problems and find solutions. They create your way of thinking and your rational side. Bootcamps, instead, just teach you how to execute some actions. It's like the difference between colleges and industrial schools.
- provemewrong 10y agoI find the whole premise a bit amusing, because in my country the prime target audience for bootcamps are undergrad CS students or fresh graduates.
- madiathomas 10y agoBootcamps are filling a void which existed for a long time in the CS industry. Most of the time, A CS grad is hired to do a job that can be done by someone with little programming knowledge. I feel it is a waste of resources to hire a CS grad to do CRUD app with maximum 5 users on a very good day. Now companies can use people from bootcamps for such kind of jobs and use CS grads for deep and high level stuff. Surely some top bootcampers will be able to do high level stuff too.
- ArkyBeagle 10y agoProgramming isn't all one thing. You have to have what amounts to an epistemology about the system you're working on right now or you're going to break things. A degree improves the chances of this. About half of what I do is teach these things, on the job. Just being able to classify a systems error can be daunting - is it a show stopper, or an ignore, or something in between? I see bootcamps as being fine for getting people into seats, but the rest takes a long time. Finally, employability and what (IMO) CS/programming should be about are diverging rapidly. This was not always so. This is starting to be a real problem.
- norea-armozel 10y agoMy employer has been hiring a few people from some local coding bootcamps here in the Minneapolis area. Most of them are very decent at programming, so I'm not sure if they had any experience prior to their bootcamps or not, but I can't say I have any complaints for those they've hired. Never had a fix any of their code since they've been on the job either. Sometimes they need more help since they didn't get the discrete structures or software architecture knowledge that I did from my traditional CS degree. Honestly I think that should be something you pick up on the job or have been taught in high school (I'm biased of course).
- trich7 10y agoI would love to add a few comments. I do not know about the specific CS program nor code bootcamp they are specifically are comparing about, but I can speak to a general CS degree and the general bootcamp education. Full disclosure, I am a founder of a coding bootcamp. Nothing can replace a 4 yr degree with basis in theory and multiple subjects but bootcamps offer people a way to jumpstart a lagging career or make a step into a new one. Being hirable in this industry is saying something, and that is what a great bootcamp should do. That being said bootcamps are teaching current real world and career-like solutions. Many argue that you don't actually get the real-world experience in CS 4-year degrees due to behind the time curriculum (due to long approval processes that coincides with accreditation) and long and sometimes boring lectures without a lot of application. Bootcamps take a flipped classroom, hands on, and immersive approach. Less lecture, more project-based learning. Many developers fall under the 41.8% group on the recent StackOverflow study of self-taught developers. A very large number of developers in the market are finding their skills in very non-traditional ways. What many CS grads learn is undoubtedly useful, I would never take anything away from that, but with software expanding into so many different fields, blurring the lines between who was traditionally an "engineer" and who isn't, and with the increasingly rapid pace at which languages/frameworks/best practices are constantly changing, there are a lot more opportunities to contribute in code than by cooking up advanced algorithms with linked lists. In fact, many of our partner employers were frustrated by the lack of applicable, modern technology competency by the CS grads they were interviewing. As only one piece of anecdotal evidence to this: we've had various CS grads take our programs because (as they described) they only learned languages that were not anywhere to be found in the companies they were interviewing with. Companies are starting to recognize that those who apply themselves in a bootcamp are able to learn quickly and adapt to new technologies and projects easily. Employers are looking for someone to get the job done with the skill set that matches the technologies that they practice. Many employers don't care if employees have acquired that skill set in a garage when they were 12 years old, at MIT, or at a coding bootcamp. But, bootcamps aren't for everyone, you really have to apply yourself and consume content quickly. But if those requirements are met, bootcamp attendees really can excel! I know because at ours we have had so many success stories just like the afore mentioned where a student truly applies themselves, lands an amazing job, or starts a hot tech company and truly changes the trajectory of their life. Plus it happens in a tenth of the time of a 4-year degree and at a fraction of the cost ;) Bootcamps offer a more personalized mentoring. Being able to see delegates, resonate with students emotionally, pick up on subtle nuances of communication and respond appropriately is the very essence of education. I believe passionately that training and coaching are not about getting something from one head to another, but are an intimate dance that transforms both parties. I hope that helps a bit.
- wanderr 10y agoThe problem I have with bootcampers is that the bootcamps greatly over promise where they will be skill level wise when they finish, so expectations are way beyond junior developer roles. They also usually come out of bootcamps with a very narrow skillset; they can somewhat easily whip out a web app with a simple backend and rudimentary data sets using whatever framework that bootcamp focused on. Increase the complexity of the project even just a little and they get stuck. There are some diamonds in the rough and some bootcamps are better than others but in general I'd much rather see someone who learned by hacking on things alone than a college or bootcamp grad.