7 ms·
There’s absolutely no comparison to be made between a CS degree and a bootcamp program. One is vocational, the other almost purely academic. The main difference
by aphextron 8y ago
There’s absolutely no comparison to be made between a CS degree and a bootcamp program. One is vocational, the other almost purely academic. The main difference really is in mathematical training. There’s a wide gulf between the skills needed to succeed in CRUD web development, and the ability to succeed in a four year degree program that requires passing calculus, linear algebra, discrete math, and differential equations. I’d wager greater than 90% of working developers without a CS degree could not pass a test in any of these courses, or even discuss the topics at an intelligible level. If the role you are hiring for requires these skills, you need a CS or other hard engineering grad. The problem is that the vast majority of companies don’t need that, yet somehow feel like they are lowering their standards by accepting that fact.
- randomacct3847 8y agoI’d wager 90% of working developers with a CS degree also could not pass a test in some random mathematical topic they studied X years ago in college either. Also, while there are those that go from bartender to developer via bootcamps, a lot of people who do these camps have technical undergrad degees (other engineering, math, physics, etc.) and probably took as many math classes for their major as a typical CS grad. And let’s be real...most developers, maybe especially at FAANGs, are frankly overqualified for their day to day job and aren’t doing much more than things they learned in a CS 102/103 class.
- phillipcarter 8y ago> maybe especially at FAANGs It's hard to say how it is in the large, but at Microsoft I do apply CS principles fairly regularly, use statistical tools, and think fairly regularly about different data structures and algorithms. A lot of this is due to working in performance-constrained environments. If that were not the case, then I would say the academic side of things would be less prominent.
- randomacct3847 8y agoI should say many, but not all. I hear too many stories from angsty mid-career FAANG developers who do little more than write a bunch of Protocol Buffers all day, every day.
- RandallBrown 8y agoWhen I was at Microsoft I didn't apply CS principles beyond occasionally thinking "This function is going to be O(n^2), maybe I should change it. Oh, we'll never have more than 100 or so items, so it's probably not worth fixing that."
- asdfasgasdgasdg 8y agoI think I understand what you're trying to say, but I don't think what you've actually said is correct. I'm a >senior engineer at a FAANG and have been in the software game for more than ten years now. I definitely do not feel overqualified for my job, and I don't know anyone else who does. Or, at least, I don't know anyone who actually is by their demonstrated skill at their work. I guess I can't know their internal feelings unless they tell me. What I can agree to is that the job has significant challenges that a CS education does little to prepare you for. The interpersonal challenges. The challenges of designing large systems, forward and backward compatibility, the interaction of business and technical priorities, deployment, production safety, etc. And it makes little use of a number of skills that were very important to CS performance. I can tell you I've used zero graphics programming knowledge, little of my compilers course, very little of what I learned in my networks course (despite that I'm regularly called upon to write programs that communicate over the network). I've written exactly one proof since I started my professional career. In that sense, my CS program over-qualified me for the work. But I think it's more accurate to say that I'm differently-qualified, education-wise, from the field I'm actually working in.
- randomacct3847 8y agoReplied to the other comment, but I hear too many stories from angsty mid-career FAANG developers who do little more than write a bunch of Protocol Buffers all day, every day.
- asdfasgasdgasdg 8y agoThat isn't the type of work I do.
- randomacct3847 8y agoI wasn’t suggesting that you did, just saying anecdotally hear a lot of gripes from mid level FAANG developers whose day to day is that, hence the point that many, but not all, developers are probably overqualified for their day to day role.
- xiphias2 8y agoAt FAANG most of the work is boring copying from one datastructure from another. The remaining 5% needs understanding on working on big data, which means statistics (as long as you're working on backend...I'm sure frontend needs less math). I haven't seen differential equations, but sometimes calculus, probability theory and a basic understanding of machine learning and deep learning is needed to understand what other teams that you're working with are doing, or to analyze the statistical significance of an experiment that you ran. At FAANG I often wished I knew probability theory and statistics better (instead of other things that we learned at my University).
- oddthink 8y agoI don't know about overqualified, it's more that the job is hard in a different way. I'm not a CS grad, but it's not as if I'm actually using my numerical analysis or computational fluid dynamics coursework either. However, I do jump between discussing if a trie is the right way to implement something, discussing whether the "simple" model should be a SVM or boosted tree, trying to figure out if we've covered the major abuse angles in our product, coordinating with all the other teams we're collaborating with, analyzing the experiment results, etc, etc. Having at least some actual CS certainly helps fill in the gaps, even if it's not what I'm doing most of the time.
- ramraj07 8y agoDo CS grads study svm?
- randomacct3847 8y agoMany CS programs have machine learning courses, but at least when I went to college they were not required.
- Quenty 8y agoYup! Senior computer engineering student, we covered SVMs in our machine learning 2 class!
- WalterBright 8y ago> I’d wager 90% of working developers with a CS degree also could not pass a test in some random mathematical topic they studied X years ago in college either. I wouldn't, either. But I've discovered that if I go about relearning it, it comes back very quickly. Having learned it before, I also recognize when I need to go relearn it, and what I need to know. It's a lot better position to be in than having no idea how to go about figuring out how to solve the problem.
- ruang 8y agoSo true, it's the unknown unknowns that tripped me up before going back to get a Masters CS degree.
- mbell 8y ago> I’d wager greater than 90% of working developers without a CS degree could not pass a test in any of these courses, or even discuss the topics at an intelligible level. I'd wager that 90% of working developers _with_ a CS degree would not pass any of these tests. The reality is that the vast majority of software developers use little to none of this math in their professional employment. We really need to stop forcing people to get science degrees to order to be employed in engineering, it makes little to no sense.
- mcguire 8y agoThey don't even need engineering degrees to be employed in engineering.
- dragonsky67 8y agoThe fact that you don't use the knowledge gained in a particular course does not make that course worthless. The discipline in having to work your brain through the mental gymnastics required to understand the material stands you in good stead for solving different problems down the road. I would far prefer to employ somebody who has a wide range of experience and knowledge over somebody who has churned out what is essentially the same CRUD web site anyday. Even if the job is to produce CRUD web sites. One employee will just be able to produce what they have always done, the other will be able to look at the particulars of the problem, analysie it and potentially produce a product that is far more likely to meet the customers requirments.
- deleted 8y ago[deleted]
- jklepatch 8y agoThe important question is: do employers care about CS degrees? My personal experience, having a (good) engineering diploma, tells me that the answer is a big NO.
- flukus 8y ago> I would far prefer to employ somebody who has a wide range of experience and knowledge over somebody who has churned out what is essentially the same CRUD web site anyday. Even if the job is to produce CRUD web sites. Do you also prefer to pay the premium price that someone with a wide range of experience and knowledge commands? There is an even higher premium to get them to accept doing CRUD work for any length of time, if you can convince them at all. > One employee will just be able to produce what they have always done, the other will be able to look at the particulars of the problem, analysie it and potentially produce a product that is far more likely to meet the customers requirments. It seems like you're conflating "once had this knowledge" with "currently has this knowledge", this is only true for recent graduates, after that you starting forgetting everything you don't use regularly. I'd encourage everyone to go an khan academy for a refresher on everything they've forgotten since middle school, I'd even forgotten things I was extensively drilled in like long division. I'd also strongly disagree that a comp sci degree teaches you to break down problems and come up with optimal solutions.
- johnwheeler 8y agoI’d wager 99% of programming jobs do not (directly) deal in those maths.
- valtism 8y ago> I’d wager greater than 90% of working developers without a CS degree could not pass a test in any of these courses, or even discuss the topics at an intelligible level. As someone who did not major in CS, and learned coding on the job, I find this particularly elitist and an awful attitude. I realise that I am behind the ball a bit on things like having memorised the space-time complexity of sorting algorithms, but I am filling these gaps quickly, especially when it applies to real world problems I face in my career. I can't say for certain that I would be able to pass calculus, linear algebra, discrete math, and differential equations, but I think that I would. To throw some elitism back at you; I wound not consider any of those subjects to be anything except pretty basic in the realm of mathematics.
- aphextron 8y ago>I can't say for certain that I would be able to pass calculus, linear algebra, discrete math, and differential equations, but I think that I would. To throw some elitism back at you; I wound not consider any of those subjects to be anything except pretty basic in the realm of mathematics. It's not elitism. I'm saying this as someone who tried (and failed) to get a CS degree after working in the industry for 4 years as a self taught developer. Math classes have a way of exposing deficiencies you never even knew you had. It takes years of study to gain the mathematical maturity needed to pass these classes for anyone with just a basic American high school level of education. And yes, they are quite basic in the realm of mathematics as a whole, which makes it all the more disheartening. It made me gain a whole new level of respect and understanding for the necessity of these skills, and how they simply cannot be picked up along the way in the same manner as coding.
- endlessvoid94 8y agoYou might be correct, but in my experience, the vast majority of people don't think about universities this way. They value what the degree unlocks for their career. I think what you're saying is true, but the problem is that people hear success stories of silicon valley technology startups being founded in a dorm room at MIT and decide they want to have the same opportunity. Can't blame them.
- xtracto 8y agoThese triplebyte posts are basically SEO spam. Even they don't believe what they write I Interviewed with them about two years ago, mainly bc I was looking for interviewing ideas for the team I directed. The interview was good, but they definitely asked about CS fundamentals, and funnily they rejected me because I did not know enough of them hehe. I held no grudges, because I wasnt tried to get somewhere, but I find hard to believe that someone without a CS degree will pass their interviews.