This is BS, most of these companies are looking for snowflakes from top 10 schools, who have been programming since they were in middle school.
I have plenty of competent friends who had a hard time finding anything better than an IT desk job after graduating from Stony Brook, NYU-Poly and City College.
Most smaller tech companies don't even consider training their new employees. Instead they want a 'ninja' who is comfortable with their tech stack and can hit the ground running straight out of school. To make things worse 90% of them think their analytics platform or social network for cats is the next Google, so they put their candidates through ridiculous interviews that have nothing to do with writing CRUD apps.
I even know people here at Columbia University who didn't get any good offers outside of finance.
I don't disagree that companies are often looking for people who have resumes and skills far exceeding the simple, minor needs of particular jobs.
On the other hand, I have met many CS majors at local New York colleges, and even among the seniors who seem to be in the top half of the class, their knowledge of some basic things is almost universally absent. Such as software version control - they don't know what it is, they don't know the names of any version control systems, like git or perforce, and they don't know how to use any of them.
They study for class, mostly, but seem to have no interest in all of this outside of class. Not once in four years do you check a project out of github, fix a bug, and then send a patch and pull request? And that's among those who study and are in the top half of the class. Some kids don't even care about studying much and I don't know why they're even bothering.
Learning things like git are very doable on the job.
In university, one should concentrate on learning things that are impractical to pick up on the job - calculus, statistics, theory, quantum mechanics, dynamics, etc. Stuff that takes sustained, concentrated focus to learn.
For example, although I got an engineering degree from Caltech, my practical knowledge upon graduating was about nil. But I found on the job at Boeing that the practical stuff was easy to pick up, and pairing it with the theoretical stuff I learned in school made for an effective combination. Others who did not know the math/theory, never picked it up, they'd spend their career avoiding it.
I'm with you in this. I would just like to add that learning calculus, statistics, quantum mechanics etc is important learning to apply it from young age is equally important.
I had a friend in school who was so very good in physics, he could just grasp every concept and get top grades. Once, we decided to make a video game or two in the computer lab during the sports periods (we bunked sports periods). We started with implementing simple projectile motion of ASCII characters, Simple Harmonic Motion of an ASCII gauntlet and lots of cool stuff and effects. I remember, even with his top notch knowledge of mechanics, he was unable to do simple things, and I ended up doing the games alone. Then after he avoided interacting with me, and rather completed his school homework during the sports period. He would come to the lab just to say that the game is not looking good, and I could have done this or that. I think he had inferiority complex. I scored lesser than him, and all the teachers heavily favored him. Our friendship became more formal.
I know what you mean, but I can't blame people for having other obligations or interests outside of programming. I went to a public high school here in NYC and have good friends who had to work their way through college, some of them even had siblings to support.
Knowing about git, tdd and etc is important but it's not something that can't be taught. It's as simple as pairing them with experienced engineers and pointing them to a few relevant books.
I'm taking Computer Architecture in grad-school this semester as a "make-up" from never having completed it in undergrad.
My partner for the programming projects had never seen git before, and proposed that we simply email each-other files. This is at Technion, the single best technical institution in Israel and one of the Top 50 in the world.
The fact that you find it strange that these students don't do much programming and related stuff outside of class seems to be part of these high expectations - if they don't do much of these things outside of programming, then they just aren't interested enough, even if they get high grades.
Contrast this to some other, hypothetical study/profession where you are judged by your grades and work experience. Not your grades, work experience, and weekend projects.
This is not to say that these standards are necessarily bad, but rather that it is part of the higher standards that programmers have to live up to.
I'm Canadian, but I always thought I was knowledgeable about American universities.
I'd never heard of Harvey Mudd college, and here it is competing with the two giants of US engineering, MIT and Caltech.
The take away from this seems to be that you shouldn't assume your interviewer knows that your degree is from a "name" school, or that the school you went to will influence any one in a positive way.
I remember someone here mentioned that they went to University of Texas Austin and that they thought that should ensure them of getting an interview anywhere and I wasn't sure if they were joking or being serious as I'd never heard of UoT Austin before as being a good computer science school.
I would imagine that most US employers are more familiar with them than most non-Americans because we're more likely to come across the less-well known schools when we were applying for college. Edsger Djikstra was a professor at UT Austin, by the way, so their computer science program is pretty well known.
Technical types in the US have heard of it, and (as others have mentioned) Rose Hullman, and hold them in high regard. They're just much smaller than their counterparts, and don't have huge grad schools, so they wind up lumped in with liberal arts colleges in the collective mindset.
UT Austin is one of the top few public Computer Science programs, up there with University of Illinois and UC Berkeley and maybe 1 or 2 others that I'm missing. When the oil money started coming in, they went on a hiring spree.
btw - I'm a big fan of the idea of more Engineering schools in NYC. Even with Poly, Columbia and the new Cornell school, there are more jobs than talented candidates.
I'd err on the side of saying you're just not knowledgeable of American universities. But there's really nothing wrong with that, nor is it necessarily reasonable to expect someone not from the US to be familiar with US universities. At the very least, it opens you up to considering candidates based on their interview and not pedigree.
For what it's worth, Harvey Mudd and UT Austin are both very well-regarded schools.
I've been told to not bring up the interviewee's degree or university unless they explicitly bring it up. Typically, the conversation stays focused on recent projects and coding questions.
I didn't go to Rose-Hulman but was recruited to do so. I have a very high opinion of the school and I'm here in the bay. Just a data point from a UofI alum.
Why? Does the name of the school matter that much? If the person that is doing the interviewing is judging you by your skills objectively, they shouldn't care about the school you went. There are plenty of great engineers that went to state schools, and plenty of crappy ones that went to more known schools.
Also, after a couple of years of work experience (after your second job), nobody really pays attention on where you went to, so don't get too hung up if your interviewer is not familiar with your school.
Caltech is much the same way though, outside of engineering nobody has heard of it. Like Harvey Mudd, it's a small *private school that hasn't yet become a household name.
I didn't say it is unknown. It's well known, but only in certain circles. As contrasted with, say, Harvard which is known by just about every mother, brother, and child.
As a graduate of both Harvard and Caltech, I can confirm that this is true. Even many people in Pasadena, where Caltech is located, are only vaguely aware of its existence, and even many southern Californians confuse it with Cal Poly Pomona. Of course, Caltech is universally known and respected among technical people, but the contrast with Harvard—which, as you say, is known by just about every mother, brother, and child—is unmistakable. (Indeed, it's telling that many references to Caltech in these comments misspell its name. Hell, even many Pasadena city street signs misspell its name. Apparently the Institute is embarking on an ambitious new branding strategy—I suggest that getting Caltech's home town to spell its name right would be a good place to start.)
I went to a suburban high school in the southeast, and while I'd heard of Stanford, I literally had no idea where it was. I thought it was in the northeast. No one from my high school had ever gone there, and I'd never even met anyone who went there (not that I knew of, anyway). It's probably different now, that was the mid 80s.
I'd heard plenty about all the ivy league schools, and kids from my high school went to them.
I was very aware of MIT as THE best tech school (in the reputation I'd heard), but I also had heard of CalTech at the hardest school.
Other schools that were on my radar did include Harvey Mudd, though I had no clue at all where it was. Colorado School Of Mines too, for some reason. Probably more because of the weird name than anything else.
I did well on the SAT and had a large box full of brochures schools sent me, so I got exposed to a lot of lesser-known places that way.
There was one that had me utterly fascinated, Deep Springs College. It's a 2 year school out in the desert. You basically work a ranch and take a sort of custom curriculum, then transfer to another school to finish a degree. I was too chicken to go, but if I could change one decision in my past, I'd go. I think it would have made for a radically different experience.
> I did well on the SAT and had a large box full of brochures schools sent me, so I got exposed to a lot of lesser-known places that way.
Is this typical? I did well on the SAT (in 2003) and had exactly one school sending me literature, a university in Tulsa, OK. And I'm pretty sure they were doing it based on my PSAT score, not the SAT.
You can also make an incredible ROI by not paying for an expensive degree and instead gain knowledge & experience through other means (teach yourself, free online courses, open-source projects, paid internships, etc). Just take a look at today's "Who is hiring?" [1] and you'll notice very few list degree requirements. Most are looking for a combination of experience and knowledge.
It sounds like you're talking about programming jobs and an education in computer science. In this area, it's true that you don't need a college degree.
But the article makes no mention of computer science or programming. Instead, it talks about engineering, a set of disciplines that may involve programming but often centers on a much different curriculum.
A degree in, say, mechanical or industrial engineering will unlock opportunities that would not be available otherwise.
They are measuring different things - the atlantic is measuring 20 year ROI, whereas payscale is measuring mid-career salary (according to the payscale methodology, "the typical (median) mid-career employee is 42 years old and has 15 years of experience." So higher initial salaries would fare better on the atlantic survey than the payscale one.
Only Berkeley, Stanford, and CMU show up on both lists, but what data is there does seem to confirm higher initial salaries for elite private college like Stanford (though the publics seem to catch up by mid-career).
> the typical (median) mid-career employee is 42 years old and has 15 years of experience
I find this pretty fascinating. I'm on track to hit or fall under this begin-your-career-at-the-age-of-27 threshold, but I've never perceived it as typical at all; quite the reverse. What are 50% of people doing until they're 27?
I don't know, it's a good question. I personally floated around a bit in my early 20s and finally went to grad school at 26, so I'm more aligned with this definition of "mid-career", but I always thought of my case as a little unusual, especially for software careers. But maybe it's a little more typical than I thought.
That's actually really interesting, I think. There are clearly some jobs that blow away computer science jobs, such as in the finance industry or certain lawyer positions, but for computer to average better, that implies those jobs are more of a lottery ticket than a computer science job.
CS isn't the same as software engineering, but the companies recruiting from Harvey Mudd CS majors tend to be fairly engineering-heavy in their outlook, even when hiring for CS positions. There's a lot of attention from places like Lockheed, Aerospace Corporation, even the oil & gas sector. Those kinds of companies typically require a STEM degree, unlike tech startups. Which specific degree varies based on the job: sometimes CS, sometimes engineering, sometimes math, sometimes it can be flexible.
You can get a loose idea of who's interested in recruiting there by looking at who sponsors senior clinic projects, and what areas they're in, e.g.: http://www.cs.hmc.edu/clinic/projects/
Don't take this guys advice seriously. Not having a degree means you will get paid less than people you have proven to have better skills than, and many doors to many lucrative opportunities will be locked. You'll have a social stigma, and you'll constantly have to be proving yourself in situations where your coworkers don't.
EDIT: my comment was a bit angered, and I apologize for that. Just this morning I found out that a company i had a great interview with yesterday told me that despite liking me the company had a policy that they can't hire senior engineers without a technical degree. Its tough.
Everybody who has this problem should just get the dang degree. It's not very expensive and not that much work, assuming you've actually learned enough to justify one.
Some established licensed and accredited state schools that will grant a degree entirely by examination:
If you're working for a university spinoff, academics probably come up more often than in the rest of industry. On the other hand, I led development on the flagship product of a university spinoff before taking over product management for another product that that university spinoff, and I have one semester of college to my name. So, no, I'm not sure this is really a regional thing either.
It might be more "specialty-related" than geographically-related. I work in the same field as Thomas (security), am from Boston, and have had largely the same experience as him about degrees.
I've also built security practices for three organizations, and can attest that not only is education not a positive hiring factor, it's at best neutral.
If you are an expert in some niche and are known in industry, not having a degree is not a problem. Bill Gates does not have degree and I am sure lots of companies want to hire him (even for board of directors). On the other hand if you are regular software engineer with average skills, not having degree will definitely close some opportunities. It does not mean you won't find a job (in this market you have to be really really bad to not get any offers) but you will miss promotion here and there or not called to interview for some better companies.
In the last seven years I have interviewed more than 150 people and only 2 or 3 did not have relevant technical degree.
The problem is that almost all 18 year old think that they are that special snowflake that is not average while vast majority of them are just average or worse.
I never said it was a requirement, I feel myself successful and I don't have a degree. But the path has definitely been harder than my friends who do have one. So with that, I recommend not taking that path intentionally.
I'm a University drop out, 20 years of it. It has always been in my mind that I don't have a degree. It has closed doors to me, made me feel inferior in conversation and with the job market getting harder has shut off the job supply and I've got 20 years professional programming experience. The ad says Graduate Degree, that's that, no interesting job for you.
I tried to go back to Uni but it was: you dropped out, so no loan for you, you have to pay for the first year yourself (we didn't even have loans the first time round).
I have finally done it, this September I start at University once more.
> I've got 20 years professional programming experience.
According to many, 20 years of professional programming experience is a death knell to even those with the best degrees money can buy. It is assumed you should have moved on to bigger and better things by that point (not an opinion I hold, but a sentiment that seems pervasive).
Did you find that it became more difficult to find work as you got older?
A bit. I always worked at startups / business development. I love programming and I'm very good at it. I can smell hype.
One of the things that turns me off, though, is the framework de jour scene but the converse is dull plodding.
My degree is a BSc in Supply Chain Management after doing an HNC (part time) in Manufacturing Engineering financing it all working as a Cad draughtsperson for 3 years.
The BSc is about 20% IT based and there's plenty of scope for modeling and statistical analysis so hopefully a perfect blend of skills.
Thanks. It will be totally life changing, I can feel it already and it's still 5 months away. The downside is I currently live in a three bedroomed house and I'm moving into a 13 Sq m room. So a physical and mental declutter.
I couldn't agree with you more. Whenever someone says, "Well you did it without a degree, why can't I?" I never discourage them, I simply stress the difficulty of their decision. Instead of credentialing with a degree, do you want to job hop for 3 years, constantly having to prove yourself time and time again just so you can move on to another company with an incrementally better salary? Do you want to be misunderstood for years at a time by strangers, friends, and family? Do you want to constantly have your opinion discounted until proven correct? These are just some of the things you'll have to deal with.
When I look at my debt-ridden peers graduating from top colleges this summer, I can't help but feel happy about my head start: no debt, enough savings to do whatever I please at this point, and an above-average pedigree. But while it may sound like a "success story" to most and I am happy now, I'll be damned if there wasn't 10 years of darkness and constant feelings of inadequacy that I had to plod through very much alone. It's been one heck of a ride, that's for sure.
These days you can get a degree and still have just as hard of a road. Some (possibly most) degrees are not valued as a badge of general competence any longer IMO.
Nope, that's the slick sales presentations and readily available loans that convince otherwise intelligent high school kids & parents to attend fancy private schools with lots of ivy.
I went to a not-so-fancy state school whose brutalist architecture looked more like a prison than a school. No ivy, few trees, poorly equipped gym. Got out with essentially zero debt, took a salary cut at my first job that was negated by my first job switch two years later.
Fancy private schools with lots of Ivy have pretty good financial aid. If your family has a relatively low income level it might even be cheaper to attend an Ivy league university than a state university.
I come from a middle-class background. My family was too poor to the rich and too rich to be poor.
For me, in the 90's, the choice was about $8,000 in merit aid, ~$9,000 in unsubsidized stafford loans, ~$2,000 in state subsidized loans about something like $7,000 in PLUS loans for my parents. Or $5,000 or in-state tuition.
In some ways, that's a good filter. If a company is going to let "policies" stand in the way of the best choices, maybe they won't be a great place to work anyway.
Everyone does not have access to the link that you've just posted. Also in fields other than computing, you can't get hired (of course there are always exceptions) to design mission critical systems unless you have an aerospace / mechanical / chemical engineering degree.
Good luck studying on your own to want to work as a chemical engineer because MegaCorp will totally hire you to work with chemicals and there aren't many startups hiring ChemEs.
Also, kids are quite gullible and everything for most kids suggests that you need to go to college. The path goes somewhat like this:
born -> pre-school -> school -> middle/high school -> college
There are a lot of people that take 6 figure loans to study photography, or major in english. That I don't get.
I think adults seriously overestimate most kids' sense of long-term planning, commitment, self-awareness and grit. When I was 18, with 4 years of programming experience, chances were terribly tiny I would spend my time in a structured fashion continuing to improve my skills and then start a career early.
More likely I would just sit around playing video games and reading interesting-sounding wikipedia articles, and maybe coding up the occasional fun toy or two until I got bored and ditched it.
Until I started starving, and then go "Well f*&k. Should have thought about that." And I probably wouldn't think about that unless someone is dragging my ass into a college/job.
Right. I could even see someone spending months to learn Java in a structured fashion. But how many people are going to sit down and spend months studying in a rigorous fashion things like the theory of computation, or complexity theory, or lambda calculus, or graph theory? Recently I had to make a hash from a list of numbers, and thought to use a Gödel number for the hash. How many self-taught programmers will do this? I mean, how many self-taught people really sit down and learn a decent amount about even slightly complex things more immediately practical than pushdown automata, such as about critical sections and mutual exclusion?
They might learn it if everyone required knowledge like that to get a job. Are junior level, self-taught staff really going to be hired to fix those problems? Maybe at Google, but not everyone's Google.
Most of the self-taught crowd are gunning for web dev or design positions or bolting on some skills to do useful things and never need to make their own 'tools for the job'.
If you're on your last leg for a shot at a career (like I am), there's a pretty big pull to get the minimum knowledge first so you're useful to someone and then go for advanced CS topics once you can pay your bills. A decent position allows saving for a CS degree.
I studied Physics in college, spent a couple years writing test automation, and am now a software engineer. I'm almost-completely self-taught, and have spent the past two years going through all the undergrad CS curriculum. All I have left are Operating Systems, Distributed Systems, and Advanced Algorithms and Data Structures. I use textbooks for when I want to dive deep into the details, and Coursera lectures for higher-level overviews of topics I don't need to know in detail, such as Networking or Compilers.
It's not work if you tackle a problem you actually care about.
Getting a child excited about data structures, algorithms, and coding conventions will be difficult.
Have them dream up a guide, and let them fumble through the implementation while seeing the fruits of the labor unfold before them. Now that's excitement. And learning. Without ever feeling the need of forced discipline.
“If you want to build a ship, don’t herd people together to collect wood and don’t assign them tasks and work, but rather teach them to long for the endless immensity of the sea.”
— Antoine de Saint-Exupery
> Just take a look at today's "Who is hiring?" and you'll notice very few list degree requirements. Most are looking for a combination of experience and knowledge.
Key word is today. Yes, today, with the DJUSSV up 150% over the past five years, and billions being shelled out for Oculus and Whatsapp and so forth, no degree is needed for many jobs.
What happens when the economy takes a dive like in 2008/2009, or 2000/2001? You get laid off from your company and then send your resume in to open job slots on Craigslist. Except they are getting dozens, maybe hundreds of resumes. Even after culling for relevant experience, companies might have dozens of good looking resumes to choose from. The next obvious way to cull resumes is get rid of the pile with no degrees.
In bad times, CL job ads dry up, especially those not requiring a degree. Even if it doesn't state it explicitly, HR will probably grill you on your education background and plans.
As far as an expensive degree, people can go to a good state school and get Pell grants and the like. As far as people teaching themselves, most good programmers are always teaching themselves. They need a basis to work off of though and a BSCS is that basis. If you're going to spend four years studying the basics you need to know, why not borrow/spend the $50k to go to a very good school like Berkeley or UIUC, down to the $25k for state schools with decent CS programs?
Relevant for computing, but not so much mechanical, chemical, aerospace, etc. The engineering world is big, and software development is just a small part of it.
That's total nonsense. You might want to be an engineer because you want a solid remunerative career, but have an affinity for chemistry rather than computing, or want to work on airplanes, etc.
You can be a potential English major, but decide to go into engineering because you want to be employable, and still have a preference within engineering fields. Just because a career isn't the one you have the most "passion" for doesn't mean all other careers are fungible.
Yeah, it is troublesome to me that they always do these comparisons across professions. What would the numbers look like if they evaluated people with engineering degrees vs. people with other degrees (or perhaps no degrees) in the same jobs? Would the ROI of an engineering degree still come out so far ahead?
Which is fine if you are both good at and interested in something wherein you can do this. I have a BSEE and am trying to get back into an EE-oriented position. For EEs, things have gotten to the point where me just having a BS is tolerated; they really want an MS+. Professional licensure is going that route as well now, unfortunately.
I invested a little cash in '97 when I went to college. If I'd invested 4-5 times more I might not be working right now. Or I might have gotten excited, over extended, and lost it all. Who knows.
I also wonder how the typical ROI compares to just buying a condo in a college town instead?
The gotcha with that comparison is that people will give you 100k in student loans at 18 years old, but you'll have a hell of a time getting 10k to go margin trading with.
The world is not a meritocracy, and so we must not underestimate the value (ROI?) of the various social connections one makes at different schools and degree programs.
The value of a lot of things in life including an engineering degree cannot simply be reduced to a dollar amount, unless the moment you set out to get a degree, your only and final goal was how much that degree would fetch you down the line.
Unfortunately that isn't really up to us, since in our society you have to work to survive until you die or retire. Until having no job means a livable lifestyle, most people have to consider real dollar values when considering education.
Looking at the ROI on a college degree is very tricky even if you are just using to to compare schools. I clicked through to the original data set (http://qz.com/193400/here-are-the-american-colleges-and-majo...) and it shows that they used a net figure for calculating tuition that assumes average grants and loans. I don't believe this includes a TVM calculation for the loans though. This can really add up if you have 70K in student loans...
I'd like to see a better comparrison with public schools in the engineering field across the entire career of an engineer. I went to a good state engineering school for mechanical engineering. Cheap in state tuition (and a 529) meant no debt post graduation. That's huge when starting out. Additionally my classmates and I had offers inthe 60k-80k range. That might not be as high as people right out of Stanford but I can't imagine it has a large effect over the length of someones career. When you factor in that many of the graduates from more prosetgious colleges carry debt for 5+ yrs after graduation.
The annual % ROI on my degree is basically infinite, since the state of Florida paid for my entire BS. Sure, Florida Atlantic is not a place most people have heard of, but I still managed a Fortune 500 EE job right out of school, in late 2002 no less.
I would suggest you still have opportunity cost to consider. Assuming a four year program, you could have, on average, earned $120,000 during that time. If you then invested that at 5% until you reached retirement age, you could have earned right around $1,000,000 over your career above your regular income going forward. As such, your ROI should really be calculated on what you are able to earn in your career above that.
To add, I would suggest that someone who has the determination and mindset to successfully complete an engineering degree should be able to earn even more than $120K during that initial period, but there are lots of variables that could be considered. It is impossible to narrow down exactly what opportunity you lost during that time, but it is almost certainly not zero.
> I would suggest you still have opportunity cost to consider.
The opportunity cost comes in to the 20-year ROI column, which I admit without a change in my career trajectory would have me well below the top schools in that list.
> Assuming a four year program, you could have, on average, earned $120,000 during that time. If you then invested that at 5% until you reached retirement age, you could have earned right around $1,000,000 over your career above your regular income going forward. As such, your ROI should really be calculated on what you are able to earn in your career above that.
As you said, the actual cost depends on a lot of variables. However, that is an unrealistic starting point, at least for the period 1998 - 2002 when I was an undergrad. As a trade apprentice, which is probably the best job I could get with only high school, I would be looking at about $20,000/year, or $80,000. Plus, your starting point neglects living costs and taxes, which are going to consume a significant portion of that amount and which my scholarships covered. It further neglects working during school; I made $3,000/year - $5,000/year doing landscaping, maintenance, tutoring, and other odd jobs. That amount is about what a part-time (20 hours/week), minimum wage job would pay at that time. That cuts the opportunity cost down to $20,000 - $40,000 for the entire period, which is not much of a head start on a career that is going to pay me more than that in my first year after graduation.
I argue that mathematics and physics degrees are more valuable than engineering degrees. It prepares you for one of the most fundamental of skills for white collar jobs: critical thinking.
Much of the other stuff can easily be self-taught given a strong/exceptional foundation in critical thinking ability, and it can be used to great advantage in differentiating yourself from your peers.
Depends. While I haven't studied mechanical engineering myself, a lot of my friends who have, seem to have spent a lot of their time learning to use steam tables and working with lathes (something I personally would love to do, btw) instead of racking their brains to solve problems in physics/math.
Personally, I think everyone should learn at least the basics of modern Algebra (not high school stuff, but: groups, semigroups etc.), Topology etc. (Note that I did not get an education in either Physics or Math, but am jealous of those who did)
This probably differs from school-to-school. At my school most engineering majors had senior projects or capstone classes in which you had to apply the things you learned to produce working products.
Applied projects and practicals are more along the 'working with lathes' line, forcing you to practice what you've learned.
"Critical Thinking" (and its development) is perhaps more nebulous, but I imagine that it comes with extensive work on proofs and problem-solving in more abstract situations.
Not anywhere near as rigorous in engineering than the pure disciplines. "Discrete math" is often the baby version of "Elementary Number Theory"/"Introduction to Higher Mathematics" type of class for example. The Physics 101 type class engineers take is often the baby version of the general physics classes given to those who intend on or are considering becoming physics majors. Engineers almost never see anything like real analysis, abstract algebra, or topology unless they go to graduate school, and the challenges in working your mind around the concepts, language, and proofs founded on hard logic. Physicists often don't see those topics either (a good portion do though due to necessity), but physics tests problem solving ability at a level engineering doesn't typically match.
Not to say that engineers are necessarily inferior - there is a foundation that I'd say most don't have though in comparison.
You failed to validate your claim that Physics and Math majors are better than Engineers at Critical thinking (to some degree where that makes them more valuable to companies).
Further, the entry level physics & math classes at my school were the exact same classes that physic & math majors took. This clearly isn't universal, but you can't make a generalized statement that entry level physics & math classes are harder/better than they are for engineers. Physics 1,2,3 is Physics 1,2,3 (101,102,103 in uni numbers)
I could insert some snark comment about if they were truly better at critical thinking, they would have pursued a degree that was more easily marketable, but that's besides the point.
Engineers have skillsets that are in high demand, and that's why they're valuable degrees.
Is critical thinking a part of that, probably. Is it as valuable from a Math/Physics major? We'll just let the market decide.
My comments were based on what I have seen out of most typical universities. Engineers were often given their own watered-down type of classes (some schools give them different numbers, others don't) - this was also true where I went to graduate school (which is a top 5 engineering school overall, sometimes ranked #1), the pure version of the classes, even calculus, were more rigorous than the engineering versions of the same - some of the engineers were aware of this, and some of the sharper ones opted instead for the versions of the classes geared towards the respective majors. I have taught both these types of classes as a TA for math & physics, and tutored for the same & am thus better qualified to speak of the differences quite frankly.
Companies that hire pure talent often have went after top math & physics types, especially Wall Street - that's no secret, and this has been true for decades. They are extremely marketable degrees, and attractive to any company when combined with domain knowledge in other fields - to give some examples of some of the things that some of my peers are doing who possess those degrees, they include public policy, programming, data science, statistics, academia, teaching, economics, patent law, and finance. The versatility is what is valuable, not necessarily the domain knowledge of math or physics itself, although that could be helpful too (i.e. the NSA, the largest employer of mathematicians, who often train them as programmers afterwards).
It doesn't hurt that they are usually amongst the top degrees to have in various charts, and related careers to those skills are similarly rated very high (e.g. statistician being #2). Engineering (most notably computer science) has had a surge as of the past decade due to the talent crunch and surge in innovation in software, but at the top, many companies still are very interested in more traditional candidates who show initiative since you can teach someone many things if the person is well grounded in fundamentals, but you cannot necessarily do the reverse as easily.
The fact that engineering programs are required to meet professional accreditation standards, on the other hand, means that the degree is more consistent. My father always complained about some of the other math majors in his program who worked hardest in finding the easy courses that satisfied their (very flexible) degree requirements. He encouraged me into engineering for that reason.
A degree in math or physics requires much more math than that which engineers study. Likewise a degree in physics requires much more physics than engineers study.
Nearly every engineering class I had was really a math class in disguise. Granted, it was often a very specialized, applied math class. Although in my experience at least by grad school, math students are usually in a very specialized field of mathematics as well...just a different one from engineers.
I think the difference might be this, in undergraduate degrees:
* Mathematics is entirely about proving arguments and solving problems within logical systems.
* The 'hard sciences' (esp. physics) are about working within a theoretical (often mathematical) framework and testing it with experimentation.
Contrast this to engineering disciplines, or even medicine, where the focus is on gaining knowledge which you can use to solve problems. It's problem-solving, but doesn't have much of the scientific method about it.
At most US schools, Engineering is just Math, Physics, and perhaps Chemistry, with a lot of problem solving thrown on top. All good for critical thinking. And hard.
Unfortunately many employers don't think so. As a mathematician/physicists, you'd have to sell yourself as a engineer at the same time as convincing your employer that you're more qualified than someone with an engineering degree.
Employers rightly think so. There's a lot more to engineering than being good at math and problem solving. The "other stuff" that Bahamut so flippantly dismisses as easily self-taught involves a lot of domain knowledge and best practices. Engineering curricula also includes project-based courses in which you have to apply your knowledge to produce an actual product, sometimes working in a team with your peers. This builds a lot of the skills necessary to effectively tackle real-world engineering challenges and is not something that you would get from a math/physics degree.
I've found that once I proved myself as a programmer, I've become a highly sought after engineer due to my extremely high ceiling - my education is heavy in math & physics (math & physics undergrad, math grad education).
It does take some self-investment, but you have a flexibility not afforded by most disciplines - math & physics best prepares you more generally if you apply the lessons. I feel confident innovating/performing in many other aspects as well, but I chose software engineering & the developer crunch chose me.
I am a Mechanical Engineer, and almost every Mathematics student and most Physics students that I know could do what I do. But I could very rarely succeed for a week in any of their lives. From this I can only conclude that they are smarter than me.
1. Georgia Tech is just off the list. I saw another version of this list with the ivy league schools removed and it was there.
2. Many engineers that come out of Georgia Tech stay in the south, making less money due to lower cost of living. Schools in Boston, New York and SV will of course provide higher ROI because jobs in those areas pay more. I made $20k more than many of my classmates who stayed in Atlanta just by moving to Cambridge.
GT is #2 on the public schools list, and just outside of the top 10 overall. GT also blows the roof off of the scale when it's measured by percentage ROI instead of raw dollars.
If you go to the linked QZ article where they change the computation to take cost into account differently you have UVA and GT (in-state) topping the list with a significant margin.
I'm not sure what this post provides when the original post they link to is pretty much the same data plus some additional data about computer science degrees specifically.
Ah, but if you have those interpersonal skills, you can advance almost as far without the engineering degree at all.
You see the problem.
The business economy rewards bullshit and schmoozing to a higher degree than it does actual work. Until that changes, any attempt to get kids to learn useful things instead of how to work the system is fighting to swim upstream against a very strong current.
As a result, a lot of people that are engineers, scientists, or any other profession that requires a great deal of training in proportion to the typical monetary rewards are doing it because that is something they had a personal interest in doing. They achieve personal satisfaction in doing work that is too difficult or detailed for others to do well.
You can only rely on that for so long. If you structure jobs in your companies for such people to be spectacularly unrewarding, the people who would have otherwise been engineers will choose other difficult careers that pay well, and satisfy their engineering urges as a sideline or hobby.
As long as we have a business culture that values the ability to have a conversation over the ability to land a camera inside a 10m by 10m square on a completely different planet and still get clear images back, the people who can do both will often choose to engineer their own career path rather than work for the benefit of people who do not fully appreciate their work.
Big things are only accomplished by teams. Building and maintaining a team of people who are skilled and work well and productively together is actually very difficult. Most teams fail to achieve anything lasting of note. For example, most startups fail.
NASA needs great engineering to build things like the Mars Rover. But they also need great management--it takes both.
I don't think I can agree with everything you said.
Big things are accomplished by people with high ability. Adding team support to those people will reduce the amount of time required for those people to finish. Adding good management to the team reduces the overall cost and prevents friction.
Building a team that works better together than the sum of the individuals in it working separately is actually pretty easy. The hard part is getting everyone to do something specific and profitable. The reason why startups fail is usually because not enough real people wanted to spend enough real money on the product to pay the team members as much as they could earn doing something else. If you try to assign blame for that, it might not even land on the same continent.
NASA only needs great management to stay on time and under budget. With no basis for comparison, no one can say for certain whether any particular feat of engineering prowess was fast or slow, cheap or expensive. But it is starting to become apparent that engineers of equal ability, working at SpaceX instead of a larger and older space contractor, can launch cargo into orbit faster and more cheaply. That's the difference management makes.
Engineering provides the raw ability. Management sets the multiplier for time and money costs.
The "usual suspects" answer is that the students there are elevated in quality relative to other schools.
For a similar concept, I lost a job as a teacher that paid $20k / year after taxes. For a year after that, my job-seeking strategy might be best described thus: http://xkcd.com/874/
Then I got a job (in software development, not teaching) paying low six figures (...before taxes. Watch the magic of accounting render two similar things nearly incomparable to each other). Does that reflect the incredible (in excess of 100% annual return, say) effectiveness of "fuck around" as a way to get jobs?
"There are more technical jobs open than qualified candidates to fill them."
I love how virulent memes just get reiterated as fact once they reach a certain critical threshold. This one in particular, is pure bullshit as has been falsified over and over again [1][2][3][4]. If you see people bring this up, please set them straight. This meme needs to be killed.
Labor has never been in such high supply, and it has never been cheaper. [5][6]
With regards to stupidly overpriced education, I recommend it to those who can afford it because it is an extremely enjoyable experience. Don't take out 300k of loans to do it though. Instead, use online courseware (EdX, Coursera) to build a useful skill set, work for a few years, then go to college if you really want the social experience and old boys network. Because that's the only thing college has to offer in this day and age.
You have to be careful about counting jobs and engineers and declaring a shortage or surplus - because those statistics contain an implicit assumption that engineers are all the same and are completely interchangeable.
In my career, I've seen absolutely enormous variation in the productivity of various engineers. This includes pathetically incompetent ones that graduated from top-name engineering schools.
Quite a few engineers are negatively productive - they subtract value. Bad engineering can cost a company terribly, even destroy it.
It is true that if you're willing to pay enough, you can hire anyone. But that doesn't mean there isn't a shortage, as the supply of competent engineers didn't increase by one. It just meant that another firm didn't get the person you hired.
>Labor has never been in such high supply, and it has never been cheaper.
But qualified labor is in short supply, and it's never been more expensive.
> "There are more technical jobs open than qualified candidates to fill them."
I'm going to be very pedantic here. This statement is in fact true. Had the word "qualified" been taken out, then you are absolutely right, there is no shortage. However, the problem with STEM jobs isn't the lack of "on-paper" qualifications, but rather "off-paper" qualifications. Everyone wants the next Facebook engineer, but they are in limited supply. Case in point? Me. On paper, I've written web apps in Rails, Python, JS, and PHP for 5 years now, but I do not consider myself on par with my technical co-founder. On paper I am 100% qualified to fill a majority of these positions, but in reality, I'm not. Our expectations are offset by the stories we hear daily about Dropbox, Facebook, Google, etc. We are just seeing starting to approach the bend of the hockey stick in the "software is eating the world". It's only until we have a large quantity of qualified engineers when the hockey stick starts shooting upwards.
This is another perception issue that I keep encountering. The job description you've written above is for an extremely senior engineer, what some would call a product architect (e.g. your co-founder), not a fresh graduate. In fact, being a new graduate is now, by your own admission, considered to be an unacceptable level of training for a "Facebook engineer".
This is corporate bullshit, and you've fallen for it. If companies want someone who has mastered a technological stack, this is not an "engineer". This is an architect. And this position should be paid significantly more than an engineer. Although you may not consider yourself a competent engineer by the "Facebook standard", not only are you a competent engineer, but a senior engineer by every definition of the word. The fact that your evaluation of your own competence is so warped by corporate PR is extremely worrisome.
What I see here is that the bar for the definition of "competent engineer" keeps going higher and higher, without a commensurate increase in salary. This is a classic symptom of excess supply.
I spent 4 years at the largest business software company in the world and have spent 3 years on and off in very small (3 employee) startups. I would presume my bullshit meter is fairly well tuned.
> you've fallen for it.
I haven't. I tried finding a technical co-founder that didn't cost me an arm and leg, and it's taken me 6 years to do so. (YMMV)
> This is an architect. And this position should be paid significantly more than an engineer.
This is laughable. I've seen more architects in my day than most people have seen sales people. Just type in "SAP Architect" on any job search and compare it to the number you get for "Rails Architect". Architects are the bullshit powerpoint pushers I used to see day in and day out in Enterprise IT, who, after 5 years of never coding or implementing, fell short of guiding their dev teams because they couldn't keep up with the ever-changing technology stack. You know who should be paid more than anyone else? The person that can build a small team, make crazy revenue in a very short (relative) amount of time. It doesn't matter what you call those people, but they do exist, are in short supply and should be compensated equal to their productive output.
> What I see here is that the bar for the definition of "competent engineer" keeps going higher and higher, without a commensurate increase in salary.
Actually this has more to do with time than anything. The Next Big Startup™, can't afford to spend 6 months on software, when they can higher Rockstar Dev Mcgee™ who can create it for them in 1-2 months.
Lastly, I'm failing to see the motive behind "corporate bullshit" you speak of. Google and Facebook do not want to pay these insane salaries, so it's in their interest to actually (1) have a large supply and (2) promote that there is a large supply, not the opposite. Their compensation packages are a direct effect of the shortage of supply of qualified talent. If this "corporate bullshit" is being lead by a small amount of vocal developers who are artificially padding their salaries by crying "supply shortage", then this is far from being "corporate".
The question ultimately becomes, what is our idea of "competent". From what I've seen, there is massive demand for people to create the next AirBnB/Dropbox/etc, which requires some very talented individuals to run and maintain. The other 99% clones of those companies that fail are because they don't have those competent people. So it's a loser's game with a bunch of people who demand that they win. Thus, the situation we are in.
EDIT: This video by Gabe Newell says it all: https://www.youtube.com/watch?v=t8QEOBgLBQU#t=12m20s (from about 12:20 to 16:00 - these "least correctly valued" people are no longer incorrect valued, that's my point)
> The person that can build a small team, make crazy revenue in a very short (relative) amount of time. It doesn't matter what you call those people, but they do exist, are in short supply and should be compensated equal to their productive output.
Precisely. I realize that we're using our definitions loosely, but this is exactly what I'm referring to when I mention Product Architect.
My next point is, what makes you think Google/Facebook/etc. have anything they can offer this person? The reality is, this eponymous engineer is a future billionaire, not a stock employee you can just hire with 120k a year and free pop. If this is what big corps mean when they say "competent", then excuse me as I laugh my ass off at their excellent "compensation package".
>From what I've seen, there is massive demand for people to create the next AirBnB/Dropbox/etc, which requires some very talented individuals to run and maintain.
You have to realize that it is absurd to expect someone like this to accept a job at a big corp. Just as a recent example, look at the Whatsapp founders.
Which brings me to my initial assertion: there is no skills shortage. Just a superstar shortage at bargain basement prices.
1) I think there's only a couple of hundred billionaires in the world.
2) 120K is a lot of money for an average American.
3) I don't think 'crazy revenue' is built by the merit and efficiency at which you can complete your tech stack. Case in point, FB during year 1 of its PHP stack; or Digg or Reddit year 1. Personally I think luck has a lot to do with it.
Which brings me to my assertion: There is no superstar programmer. Just a delusion sold by capitalists to get the proletariat to consume more information on an advertising-driven business model. I just want to be a ramen-sustainable programmer (but not ramen-sustainable startup).
Is 120K a year a lot of money in a city where the median price for a 3br house is 1.1 million? (check zillow and us news money magazine for figures).
According to sfgate, the average application developer in SF earns 110K a year, the average dental hygenist earns 106k a year, the average RN earns 112K a year. Software devs earn fine salaries, and I'm very pleased that dental hygienists and nurses are well paid, they should be! But let's not start acting like software devs in high cost areas like SF (where many of the companies claiming a shortage are located) are an exceptionally well paid group compared to other professions in high cost areas. They earn enough that in a two income family with both parents working full time (say, a dental hygenist and software developer), they can afford a house in a reasonable school district, moderate but not exceptional vacations, and so forth.
I'm with noname on this one. 99.99% of those excellent engineers are NOT going to be billionaires.
They'll be lucky to be millionaires (and I'll envy them if I can't join them).
For those marvelous engineers to become millionaires, they need to have the luck to be paired with an excellent business team, build the right product and have a large dose of luck.
I'd rather have a not-so-brilliant engineer and an excellent team, vision and execution (as in build the right thing at the right time and produce value), for most products (very especially for your AirBnB or Facebook examples) you don't need top-tier talent to build it (you do need some to scale).
Edit: some of these marvelous people, which have actually built a succesful startup, tried again and FAILED. So it's not just the person, the idea must be right, the timing must be right and luck has to be on his side.
Coursera has a lot of intro-level courses, but not really much in-depth stuff.
I remember being at the end of my degree and a bunch of us were sitting in the cafeteria complaining about how we hadn't learned anything. Then we realised that we were just talking about facts (and of which we had actually learned a lot - especially about underlying systems rather than factoids), but we had ignored a ton of soft skills in terms of research, collaboration, scientific procedure and rigor, self-expression, critique of other's work rigor, ethics, and plenty more I can't think of right now. In particular, it taught us how to learn further. This is a skill that a lot of people don't have. There are plenty of autodidacts, but they are definitely a small minority of people.
A smattering of online courses doesn't cover most of these items in the same manner or depth. It was certainly more than 'an old boys network', especially for me, since I have kept in contact with 0 people from those days.
Is it worth 300k? Maybe not[1]. But I didn't pay for a US university, and I've seen here on HN that there are claims that such sky-high figures are not the norm, and that there are plenty of ways to get cheaper degree-level education.
[1]Well, it was 'worth 300k' in a way - it changed who I was as a person for the better, and the way I look at new information. But I wouldn't have gone 300k into debt at the time. I did go about 40k into debt though (via HECS)
probabilistic graphical models | compilers | information theory | neural networks | reactive programming | analytical combinatorics
Plus this is just the first wave. You can see that they're organizing classes so they go deeper with their specialization tracks. And its natural that professor's would create the introductory courses first ... because obviously one has to learn the fundamentals before you can proceed to more advanced classes.
Furthermore, I expect that the next round of classes you'll start to see more advanced materials. Robert Ghrist who's created the UPenn Intro to Calculus class said his goal is to create a MOOC in topology (his specialty).
"There are more technical jobs open than qualified candidates to fill them."
I don't understand how people can make this statement without considering price. Really thoughtful people, too. I'm not joking, people who seem very intelligent and thoughtful say this - "there are more tech jobs open than qualified candidates to fill them [unstated: at the price employers want to pay]"
The example people often use is trying to buy a car. I'm willing to pay $5,000 for a used car, I insist on a mercedes in excellent shape with fewer than 10,000 miles, and I state that "there are more people trying to buy a car than quality cars to purchase". All those seemingly rational people who say things like "There are more technical jobs open than qualified candidates to fill them" would tell me I'm being unrealistic about the market. Yet they talk about software developers being in short supply without considering the salary at which they are in short supply.
I have plenty of competent friends who had a hard time finding anything better than an IT desk job after graduating from Stony Brook, NYU-Poly and City College.
Most smaller tech companies don't even consider training their new employees. Instead they want a 'ninja' who is comfortable with their tech stack and can hit the ground running straight out of school. To make things worse 90% of them think their analytics platform or social network for cats is the next Google, so they put their candidates through ridiculous interviews that have nothing to do with writing CRUD apps.
I even know people here at Columbia University who didn't get any good offers outside of finance.