Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Actually, it's not about just showing "commitment" -- a university computer science education shows me (1) how you deal with a hard problem that you've never seen before, (2) how you deal with being around people smarter than you are and (3) how you perform under deadline pressure. Your four years at an employer doesn't necessarily show me any of these things, at least not without a ton of hard, specific questions from me -- indeed, I think that that's what Ben was trying to drive at in his interview at Steve. In my experience, it also happens to be true that top software engineers have learned quite a bit from a computer science education (especially when coupled with several years of practice), and when I find bright people who have dropped out of school or studied other disciplines and ask them tough, direct technical questions, I often find that they have wild misconceptions about the way computers actually work.

Now, you might very well be the exception to that rule, but the cost of a mis-hire is so astronomically high to me that you can expect that if I ever interviewed you, I would expect you to greatly outperform a top new computer science graduate -- and I would interview accordingly. This is possible, but not likely: a top computer science graduate not only has the same intelligence and aptitude that you had at 22, but also four years of formal computer science education and some top internships to really send the principles home. Of course, it would be a mistake to imply that you'd actually want to work for me: after all, I'm the kind of employer that won't hire a software engineer who doesn't have a university degree in computer science...



Completing a BSc with a third involves more deadline pressure than shipping, say, two or three video games? Are you sure about that?

Being more general and less snarky - I think that, probably, you (personally, as a single hiring manager) can get away with "only hire CS grads from great universities with firsts", if you work for somewhere easy to hire into (Facebook/Google/Twitter/whatever), because they don't find it hard to find people, just to find ones who're good enough. If (as I suspect by your estimation of the costs of mid-hiring) you're working for a no-name start-up, you're not only cutting out the brilliant people without degrees (and I've worked with many over my career), but you're also cutting out the excellent graduates who won't want to work for you because you're hiring a monoculture.


Facebook, Google, and Twitter certainly hire/make offers to hire individuals without degree. I know folks that are greatly respected at all three that fit that bill: Wayne Rosing is a famous example. These companies also can't afford to make hiring mistakes and have an extremely high bar.

That said, a Computer Science education certainly improves your chance of getting past the hiring bar. To most it means an exposure to topics they learn about had they spent the four years doing web development: what Bryan called "how computers work" (operating systems, CPU architecture, concurrency), algorithms and data structures beyond arrays and hash tables, and advanced topics (distributed systems, machine learning).

On the other hand, if you've spent those four years contributing to FreeBSD, doing game development (and here I mean doing AI and graphics yourself), or working on another technically challenging project such as a web browser or a compiler, it would be a different story.

I have an MS in CSE but from not from a nationally recognized top-tier school. I think I've done reasonably okay as far as professional success goes, but if I had to do it all over again, I'd have transfered to UC Berkeley (or another top CS school) when I had the chance, even if it meant delaying entering the work force by 1-2 years.


>Completing a BSc with a third involves more deadline pressure than shipping, say, two or three video games? Are you sure about that?

Personally - quite possibly. If you did the BSc I know you were at least able to hand in something that met the basic requirements, on time or close to it. If all I know is you worked at Company X and weren't fired, that could mean any number of things, and I'd have to be a pretty good interviewer to figure out which.


If you did the BSc I know you were at least able to hand in something that met the basic requirements, on time or close to it. If all I know is you worked at Company X and weren't fired, that could mean any number of things, and I'd have to be a pretty good interviewer to figure out which.

I don't follow this reasoning. Unless just having the BSc is actually good enough to get hired instantly, you're going to have to figure out if the candidate is good enough anyway. The additional information from the BSc is slim, at the cost of rejecting a chunk of the candidate pool. Just doesn't seem like a very worthwhile tradeoff.


The pool's big enough that other factors (e.g. interview scheduling) are more restrictive. Tossing out half the pool at random really wouldn't hurt. If there's a trivial-to-measure factor that's even 5% correlated with suitability for the position, it's worth looking at only those applications that have it.


Tossing out half the pool at random really wouldn't hurt.

There was a story posted here before about a hiring manager that flipped coins to sort the candidate pile. "We only hire lucky people here." I wish I still had the link...



As a guy still in school, I would say that more than half of the people in my CS classes are complete dunces. I would think that even by selecting for the degree, you're still faced with the problem of needing people to prove their skills, no? Is a guy who graduated with an almost failing C really better qualified -- at least from a foot-in-the-door perspective-- than a self-taught guy that has the confidence in his skill to ignore the degree requirement and apply anyway?


No. But there's no easy way to tell the difference between "a self-taught guy that has the confidence in his skill to ignore the degree requirement and apply anyway", and an idiot who didn't read the ad properly, and the latter are sadly far more numerous.


You only hire people with degrees? I couldn't afford a degree, that's why I never got one, but have tons of experience. You still wouldn't consider hiring someone like me? Why?

This just seems like you're limiting yourself from hiring people that couldn't afford college, but that are still extraordinarily valuable to your company. Which is just wrong.


I don't know what country you are in, but in the US, they will extend all kinds of loans to you. (That really is the problem). In fact, the less money you have, the better the deal for the loans. At some point in college my girlfriend and I wished our parents had less money because it would have made our cost (which we were paying) so much lower.

Do 1-2 years at a community college, 1-2 at a state college, and you have a 4 year degree at a reasonable price.

I got a merit scholarship, that lowered prices for me quite a bit. Others have noted that although advertised tuition has gone up, the average price paid by students hasn't changed nearly as fast. I.e. the rich people are paying sticker price and the poor are getting subsidized 'need' based loans. The only people getting screwed are those in the middle.


I'm pretty sure there are a lot of people in that situation. Me included.

I bought myself a home when I was 24, so finishing up college wasn't reasonable for me. Instead, I started working on my own projects as well as learning as much as possible to do the job of me and the developers above me. I've learned a lot in those 4 years (and and continuing to do so). So much so, that thinking about going to college gives me mixed feelings.

Its either... 1) Should I spend X amount of money to re-learn the stuff I've learned just to get a small increase in pay, so I can pay off those college bills that I've accumulated from the year and a half training?

2) Should I work on this project (the Bachelor's Degree) instead of finishing up my personal project (that's potentially a great startup idea)?

3) Is and extra $5-10k a year "guaranteed" now better than an extra $500k-10 mil a year "probable"?

I don't know. Perhaps, I can compromise a little. Finish up slowly and have my cake and eat it to. All I know is, with my personal project, I have an opportunity to do something great. In the meantime, I have a good job and am earning a very good paycheck (well as far as the rest on the US is concerned).

I feel that I can always go back to school and finish up. In the meantime, I will continue to learn things on my own through my projects and my day job.


I couldn't get a degree because no school would accept me into their programs to begin with. I haven't found it ever to be an issue in the real world though. Companies often come to me these days.

The good news is that you only need one job. For every company that requires a degree, there is one that values the self-learner even more. There is no use in fretting over individual company hiring practices.


if they can hire the people they need to by being that selective, why not? it's working.


What's your judgement of something 'working'? Maybe many companies are failing because their hiring is limited to a specific academic category. Whilst startups with much less budget surpass them, because they're not limited to anything.

Your company: only academia

Startups: academia + anybody else

With that in mind, it's just plain math that startups have more chance in finding great people.


If you're looking for just another mediocre / average corporate drone requiring a degree makes sense. The average person with a degree will outperform an average person without one. But if you're actually trying to hire top level talent a degree shouldn't matter. Someone who's passionate about what they do and intelligent will be able learn from experience and teach themself.


Actually you have it exactly backwards.

The average person with a degree will outperform an average person without one. But the average person applying for a particular job who can get in is about equivalent to other people doing the same. But people prefer people with degrees. Therefore, if all else is equal, the average person you hire with a degree is worse than the average person without one.

But if you want people to perform at the very top level for computer science stuff, then you both want a top intellect and a degree. (However you, as a company don't realistically have the option of top people.)


But the average person applying for a particular job who can get in is about equivalent to other people doing the same. But people prefer people with degrees. Therefore, if all else is equal, the average person you hire with a degree is worse than the average person without one.

I'm not sure it follows that a person you hire with a degree will be worse than the average person that you hire without a degree. After all, you said "if all else is equal. . . ." If all else is equal than the candidates are equally qualified and the presence or absence of the degree made no difference. I don't see how having a degree by itself (which is the scenario you envision) can ever count against you.

If you hire someone without a degree, the most you can conclude is that there was probably at least one person with a degree that was inferior to that individual. The problem is that you don't know how many people with degrees are inferior to this individual. Exact numbers matter in this case; I think that the reason that people prefer people with degrees is because having the degree is more often associated with the required skills than not having the degree.


It does follow. If you're hiring people who are equally attractive to you, and one is attractive in part because of the degree, then for them to be equally attractive they must be worse on your other desired qualifications - such as demonstrated competence. My claim is that demonstrated competence is more important than the degree. Therefore of those two candidates, the one without the degree usually turns out to be better.

This is actually true about any discriminated against group (which people without degrees are). On average the discriminated against group may be worse (for whatever historical reasons), but the ones who are good enough to become seriously considered despite that are actually better than the ones you would consider equally desirable. Therefore if you're on the fence about a decision, you should prefer the one who lacks the most obvious signals like degrees, etc.

This may sound like an abstract and weird hypothesis. But it is a testable one. For example see http://hbswk.hbs.edu/item/6498.html for evidence that being willing to hire women into management in a culture where women are discriminated against results in better financial returns for the company that is willing to do so.

As for your hypothesis that people with a degree are more likely to have the required skills, that depends heavily on the job. Certainly if you're going to hire someone to work on a compiler, you'd prefer people who know how compilers work. Which gives a big edge to CS grads. But for general software development I'd prefer someone who can quote Code Complete back at me than an average CS grad.

(Disclaimer, I have a masters in math, and almost finished my PhD. If you are looking to hire me, and you have an alternate candidate without my academic qualifications who you think is a tossup compared to me, then yes, I am saying that you should hire them instead.)


I agree that demonstrated competence is what ultimately matters. The problem that I had with your example is that you said "all things being equal. . . ." That implied that the candidates were both technically competent, only one had a degree and one didn't. I understand your point that candidates that succeed despite not having a degree are probably better than a lot of people with degrees. But you are making a stronger claim than that; you're saying that discriminated groups that succeed in getting hired are probably better than others that also got in. Now, you did provide a link to a study that was true of women but I would want to see evidence specific to people with degrees versus those without. The problem with generalizing the way you seem to be is that the people you hire without a degree may not have been competing against the people you hired with degrees.

For example, suppose you have two positions to fill that are basically the same. You fill one position with person A that doesn't have a degree and you fill another position with person B that has a degree. Person A may have gotten the position because they beat people with and without degrees that were also applying to the position. The same applies to person B. On one hand, you're saying that person B will get some level of preferential treatment because he/is has a degree. But on the other hand, you're saying that person A is probably better than person B in a manner that isn't reflected in the basic competency tests that were used to hire them in the first place. However, at this point you're comparing apples to oranges because they weren't hired from the pool of candidates.

Moreover, I don't know what you mean by "better". You might say that someone that succeeds despite lacking a degree is probably more passionate than an equally hireable person that had a degree. He/she may have more job experience. He/she may have passed with an A+ from the school of hard knocks. It seems to me that the only way to quantify this and aggregate over individual differences would be to compare the long-term salaries of people with degrees versus those without. Pay may seem like a coarse measure of whether an employee is better or not (I should know because I left a job in which I was underpaid for years despite being productive) but it is at least a simple measure of how much a company actually values an employee.


Sorry, I don't have access to a study directly on degrees. If you want that, go hire some social science people to study it.

However my personal, anecdotal experience is that peer coworkers that I've had who did not have college degrees have, on average, been better than ones who did. By "peer coworker" I mean "working with me, with a job title similar to or better than mine". By "better" I mean "impressed me more". My measure of being impressed is what I thought of the quality and quantity of work that I saw them doing.

I have no idea what their salaries were like. There were some that I know were making less than coworkers with degrees, even though I thought that their work was better. Most I never had a discussion about salaries with.

That said, on the whole I would wager that discriminated against workers get a worse salary even if their productivity is equivalent or better. Why? Because salary is the result of a negotiation, one of whose inputs is what your alternate options are. People are not paid what they are worth to the company. They are paid what the company thinks it needs to pay them to keep them happy, and the difference between that and their worth is kept by the company as profit. (Companies that do not act this way soon find that they are not able to make a profit and some time later find themselves out of business...) If some employees have a hard time being paid more elsewhere, then they will often be satisfied with less from you.

This phenomena is presumably why the paper that I pointed you to measured productivity on the basis of company growth and profitability, and not on paid salary.


But if you want people to perform at the very top level for computer science stuff, then you both want a top intellect and a degree. (However you, as a company don't realistically have the option of top people.)

Then again, there are people (occasionally) like Steve Blank and Ed Fredkin.


I get bcantrill's point. A degree ensures the candidate meets a certain baseline. I graduated as an electric engineer (specializing in computers) and had to educate myself in a lot of stuff a comp-sci student has to, but with the help of an experienced teacher, in order to graduate. There is no assurance I got everything right.


Interestingly out of the dozens of people I have worked closely with over the past decade the best workers have been the self taught (degree or no degree). I have had the misfortune of making quite a few mistakes of hiring "excellent" post-grads with a first in CS or a related field who are totally useless without the university structure around them.

I have also learned that not everyone is lucky enough to have gone to university for one reason or another, that does not stop them being brilliant though.

There is a lot of snobbery around having a degree (and more so having a Masters these days) which is a great shame.


Would a B.E. make the cut?


I don't want to imply that there's a hard-and-fast rule here -- there isn't. And it's possible (but highly unlikely) that I would hire someone who is entirely self-taught. It's more of a spectrum: if you've done very well in a program than I'm familiar with, I have a great deal of certainty about the kinds of problems you've dealt with; if your degree is slightly different (EE, CompEng) or from an institution that I have no familiarity with, that just means I need to familiarize myself and wade into the specifics -- it's not a strike against, by any means. If your degree is further afield but technical, that will require more validation that you understand computer science; I've seen way, way too many physicists who turn out to be horrifically bad software engineers. If your degree is non-technical, however, then you're going to get lumped into the "self-educated" camp -- and again, it's not impossible that I would hire someone self-educated, it's just highly unlikely to encounter someone self-educated who meets our bar for software engineer.


One of the things that I've noticed in this discussion is that there's been little mention of what your company does (I do, I believe I'm citing some of your work in my M.Sc. thesis). While, in general, I suspect that self-taught developers can do a lot of great work, I also suspect that the kind of development that you're doing at Joyent would very strongly benefit from formal CS training.


I understand bcantrill's point as a quest to remove uncertainty. He wants to interview people who meet certain basic criteria so he can focus on what makes one CS grad different from the other. If he interviews people with more diverse backgrounds he will have to deal with more diversity and the interview would consume more time and resources.

But an engineer or a physicist would probably be able to advise him on what he should sing his hard drives to make them run smoother. I don't think a compsi grad could do that ;-)


>> "if you've done very well in a program than I'm familiar with"

That's not proper English grammar.


Bigots sounds the same, even when they're degreed.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: