There is a general rule of thumb. People who don't cheat, tend to strongly dislike people who do. People who do cheat, convince themselves that everyone does it, and it isn't a big detail.
Admittedly a ton of people cheat. But as someone who doesn't cheat, if I find out that you did, I'm going to lobby to not have to have you as a co-worker.
I have no idea how many people there are out there like me. Hopefully enough to discourage you from cheating. (Probably not, but I'd like to believe that it is not just a quixotic gesture on my part.)
In general, I don't cheat, but I don't find any problem with other people cheating, either. I think the difference is that you find the axis on which you are or aren't cheating (in this conversation, a degree) important and worth ranking and measuring people against. I don't. It's a silly game and people can have whatever numbers they like if they (or, perhaps, their parents) really want them.
I like knowing that the number I got was the one I honestly deserved (this is the same reason I never, say, crammed before tests in school--the grade I got wouldn't have reflected my lasting knowledge of the subject), but I know that I can't trust anyone else's degrees/certifications/previous employments and commendations et al. to represent their honest talent/skill/dedication, so it's a bit silly to consider them any kind of useful comparative (rather than self-evaluative) measure.
Like that other poster keeps pointing out in the job threads: if you want to hire good knowledge workers, an IQ test and a work-sample test will get you further than any set of expensive status-signalling criteria ever could.
...if you want to hire good knowledge workers, an IQ test and a work-sample test will get you further than any set of expensive status-signalling criteria ever could.
My understanding is that anyone can do it if they provide a validation study showing that the IQ test directly correlates to job performance and doesn't discriminate on other protected statuses. My understanding is also that the number of companies that have done this is as close to 0 as makes no odds.
No, it can discriminate on other protected statuses as long as you can prove that the test has a direct correlation to work performance. (Actually, the decisions require 'a strong basis in evidence' of 'business necessity', which you would demonstrate by showing a strong correlation.)
In practice, the race baiting laws only matter for professions where black employability passes the giggle test, and any topical test can be easily designed to correlate very highly with IQ.
> I think the difference is that you find the axis on which you are or aren't cheating (in this conversation, a degree) important and worth ranking and measuring people against. I don't.
I'm perfectly happy to interview and hire people without degrees: experience counts for a lot. But lying about anything on a resume or in an interview is an immediate disqualification.
In this context, "In general" negates "I don't cheat...". Of course you may just mean that "nobody's perfect". However, there are people who habitually use lying as a tool to gain an advantage or place the blame on someone else. Without the opportunity to know someone better, I'd see little lies as a sign they are this type of person.
As an employer I would be very unlikely to hire somebody I suspected of cheating. If somebody's willing to lie to get the job, I have no idea why they'd stop once they had it.
That's more complicated. Often our beliefs aren't even coherent. (The canonical example is the "I have a Dragon in my garage", where any experiment you can come up with will fail to show the presence of my Dragon, and I know it, even though I still "believe" there is a Dragon.)
So it is possible to lie to yourself. Rationalization, wishful thinking, motivated cognition… As we are on average terrible liars, it's often easier to first convince ourselves of the lie, then repeat it with a straight face.
I have never met a person that never lies. But they rarely consider it "lying". It is a thresh-hold issue, a matter of getting through life and a balance between morality, convenience, and what level of inaccuracy constitutes falsehood.
"I put that I delivered them tomorrow, because it keeps the books simpler, but can you just sign today? Okay, thanks man!"
I've posted this before, but it's worth posting it again:
None of us could live with an habitual truth-teller; but thank goodness none of us has to. An habitual truth-teller is simply an impossible creature; he does not exist; he never has existed. Of course there are people who think they never lie, but it is not so—and this ignorance is one of the very things that shame our so-called civilization. Everybody lies—every day; every hour; awake; asleep; in his dreams; in his joy; in his mourning; if he keeps his tongue still, his hands, his feet, his eyes, his attitude, will convey deception—and purposely. Even in sermons—but that is a platitude.
The problem is that lying on a resume is very closely related to a situation that will arise in most development jobs and which can really damage a team. Consider a developer who is in a status meeting and is behind or having trouble with their current project. Someone who lies on their resume is much more likely to be one of those people who try to cover it up, lie about the current status, or shift blame. It means that the project lead is always going to be second guessing their status reports and unsure whether to really trust their estimates.
I hear this stuff all the time, "yeah, it is almost done, I just didn't get it checked in...". Probably code for having major problems or sometimes not even having started it. If you get in a work environment with many of these characters, life sucks.
We can't see into the minds of others, and what I've observed is that many of the people who lie, do not even seem to realize they are lying. They don't accept themselves as liars. They twist their view of reality to the point where the self serving lies are truth. I've seen this reality change almost instantaneously when the needs of the lie shifted.
Think about politicians. Do politicians know they're lying when they lie? I think in some cases this is the case, but I think in many cases they have convinced themselves of the lie for so long that they can't even conceive that it isn't the truth. Probably goes a long way towards making them convincing to others.
People do lie on their resumes, but it's kind-of hard to catch them. When I was in charge of tech interviews, we had this one candidate who came in, I looked at his resume, asked a few general questions and then started asking tech stuff. I think he had "SVN" listed, and I asked if he's familiar with SVN. He said "no". I said it was listed on his resume. He didn't know what to answer. It was awkward.
One of the real features of not lying is that you don't have to remember it. But if you lie you have to tell the same exact lie to everyone or get caught up in it. Why add to the stress of an already stressful process (interviewing) by adding a bunch of untruths you have to keep track of?
On the College Degree question I see a degree as the first thing you do where you don't have to do it. Or more precisely you have found it within your self to accomplish a goal that took longer than a year with an uncertain outcome and one where you could quit at any time. A lot of engineering work can be like that. Something that is going to take a couple or three years to realize, will have bits of crap in the middle that will be annoying but required to do, and will have an uncertain outcome.
So if you have a degree I know you can do that, if you don't I have to probe to see if you can. If you haven't had a job where something took more than a couple of years to deliver I don't know if you can stick with something long enough to get it done. That is an issue for me as a hiring manager. Now if you left college because you were working on something else and that took you a few years to get right and shipped, well that works just fine for me.
But if you lie you have to tell the same exact lie to everyone or get caught up in it.
The writer Anais Nin kept track of which lies she had told to whom in a notebook. She had two husbands. It was complicated. Eventually she upgraded the notebook to a system of index cards in a file box.
You're placing too much emphasis on completing things. The vast majority of startups won't be around for the length of time you're suggesting. The vast majority of BigCos have plenty of people who can finish projects and maintain the status quo.
Both kinds of companies need people who can start major projects and get results quickly.
"You're placing too much emphasis on completing things."
Probably, I try not to hire folks who can't complete things. I think you're off on your startup timing through. I know lots of startups that took a year to get to their MVP and then another to get to something they were willing to call 1.0. But by the same token I don't think of things you could do in a weekend and ship as being 'startups'.
College taught me something about lying on a resume. I was applying for a job and took my resume to the school's career services person to look it over. She asked me a couple questions about hobbies and classes and said she'd get back to me with an updated resume. A couple days later, I really needed to get my resume in, and she finally sent it back to me. I forwarded it off with just a slight once-over.
During the interview, the man uttered a phrase that stopped my heart: "So, tell me about your electrical engineering experience." As it turned out, the career services woman understood my basic PC building skills as electrical engineering skills. Much like you, I was up-front in the interview and told him that it was a mistake on the resume. I got the job.
After graduating I wrote to nearly 100 companies it cost me a fortune in postage. I never heard from any of them. I decided to call one up because I was shocked I didn't get a response, such was the fit between my previous university placement and the job spec.
Cue an awkward conversation. A polite lady candidly told me that I clearly hadn't proof read my CV because in the third paragraph it read 'I am a smelly cunt' randomly in the text. Presumably a prank gone wrong.
Clearly someone had doctored my CV in my flat or in the labs and I'd not proof read it. I would have been embarrassed but I was too devastated.
Needless to say, I picked myself up but not before I edited my CV!
I had a candidate in last week and I asked about some experience he had listed on his resume. He said he wasn't too experienced with what I was asking about so I specifically pointed to two positions his resume said he had and his reply was that the recruiter must have changed the job titles from what they actually were.
He was a good candidate but not quite what we were looking for and we both wasted an hour of our day. The only upside was that I was already looking for a reason to stop working with that recruiter.
It was my first job out of college, working tech support/help desk. I explained that I had career services help me with my resume, and that in the hurry to get the resume submitted I had not fully proofread it. He knew that I had applied and gotten an interview without having a resume submitted and that it needed to be in HR's hands before the first minute of the interview.
He was actually a pretty cool boss. I have to imagine that making that same mistake wouldn't fly in most places, which is why I mentioned it as a warning.
The resumes of people straight out of college/university are often horrible, so this is more likely than you think.
I don't know why that is though, it's obviously important. Maybe these, err, kids, think that as they have no working experience, employers aren't likely to look at it a lot?
It's really hard to build a resume without having experience (in both your career and in creating a resume). When your main accomplishments consist of taking classes in your field of study, what do you put down that is both relevant and not too much information? How do you predict what the company wants to see on a resume when many job postings flat-out lie to you, puffing up the job and inventing requirements that don't actually exist? How do you emphasize that you know these skills but don't have any concrete evidence beyond a degree to prove it?
It can be done, obviously. But making a good resume is a skill that generally take time to master. If you do it right the first time, you may never need a resume again. These difficulties are why career services exist at colleges. And even they can't get it right sometimes.
My exasperation comes from the CS field interviewing recent CS graduates. Many don't put the personal/hobby programming/adminning/etc projects they have done on their resume. The result is a resume of less than half a page that lists their name, study and hobbies (outside CS!). And sometimes with sloppy formatting & layout.
They presume "it wasn't real work" so it "doesn't count". I'll be the judge of what counts!
If your hobby (programming, Arduino, security research) is relevant to your industry, it's a great way to tell people that you know and are interested in something without making it the main focus of your resume.
If I'm applying for a network administration job, knowing the Linux source code wouldn't be required but you'd better believe putting "hobbyist Linux programmer" would do nothing to hurt your chances of being hired.
Aside from what the other poster said about work-relevant hobbies, having hobbies on your resume can be handy for the interviewer. It allows some chit-chat to put the candidate at ease.
It's typical here to put them at the very bottom. I've have interviewers in the Valley use the put-at-ease technique on me, so it must happen in the States too.
More likely they haven't built up enough experience to know how few of the things they learned about writing resumes in college really apply to a job search for a serious technical job.
I worked full-time in my industry for five (six?) years before finishing college.
College for software engineering/comp sci lacks depth and applicability. They try to pander too much to people who don't have the discipline to learn what a computer is.
Computer science is not exactly about applicability. It is as mentioned in the name of the course is about science. Software engineering is although extremely complex is not exactly a science. Science is not about getting cool products into the market. It is about making a tiny progress in human knowledge.
In an engineering point of view you are absolutely right but the fundamental mistake here is you have no idea what you signed up for. Computer science is not software engineering.
I've interviewed (either on-site or phone-screen) ~110 new grads over the past 6 years, for a company that theoretically gets the best of the best (though in practice, it turns out more like http://www.youtube.com/watch?v=OXRi28W-ENY).
I'd agree with the BS part. The best BS students can write programs that accomplish the goal they want to accomplish, but aren't "good" at it.
The MS students are hit and miss,in the sense that most (let's say 70%?) are not significantly better than the BS programmers at programming, though they are often have better at algorithm understanding.
However, there are some MS students who are really good at programming. I don't know why there is such a stark difference from the BS folks, who are uniformly bad, but it does exist.
Let's think about this for a minute. Most students earning their BS are around 20-22. Were very good at programming when you were ~21 with little to no experience? This is why entry level positions need to really be entry level. You're going to have to find the ones that are really motivated and bring them into an environment that promotes mentoring. If you're lucky, then in 2-3 years you have someone that can program your socks off.
You don't go to school for art if you don't know how to draw. You don't go to school for history if you don't know who King Tut was, and you sure as hell don't go school for math if you don't know what a protractor is.
Why do people feel that they belong in a comp sci program if they've never written a line of code in their life?
If I have an option of hiring someone at 22 and mentoring them for 2-3 years in the hopes that they'll become useful or hiring someone at 22 who has been programming for the last 6-8 years and knows what the hell they're doing, I'm going to pick the self-taught programmer almost every time.
But you do study Philosophy, Medicine, Economics, Archaeology and Anthropology and many other subjects without having studied them before. The subjects that are not (or are rarely, or badly) taught at school often expect people with little existing knowledge but a strong interest and an enquiring mind. Computer Science falls into this category. Also if you think of Computer Science as being primarily about programming rather than the maths, theory and science of computing I don't think you fully understand computer science.
I chose to do Computer Science because I wanted to properly understand computers. I had essentially no programming experience although I had tried a couple of times but hadn't found the right way in, (QBasic by Example didn't work for me and I didn't discover K&R or a C compiler which I think would have worked better for me). At the end of my degree I was definitely not a great programmer but I could program in Java and ML (taught in the degree programme) and C/C++ and the WIN32 APIs self taught and used for my final year (significant scale but poorly structured) project.
There people on the course (at a very famous university) who really couldn't program at the end of the course but knew the material and official answers well enough to get good degrees. There were also many that started with good programming skills but it was certainly possible to learn enough in the three years to be able to start work and do useful programming and build experience.
Something that surprised and disappointed me at University was how few people seemed to really try to take advantage of being there and learn generally within and beyond their subject rather than being course and exam focused (not just CompSci but all subjects).
Am I a great programmer? No, but I've only spent 15 months within a professional development team, another couple of years on demo level and proof of concept software in an R&D environment and the last year self retraining in iOS and Rails development following five and half years in Product Planning and Business Development.
Who should you hire? I don't know but some simple programming tasks I. The interview stages are probably a good idea. If you want someone who is just a programmer maybe someone incurious is a good bet if they have the skills you need now but whether they are self taught or university educated I think the big question is whether you want someone to fill a particular role now or for the future growth potential that they have. If you are only interested in the fully capable now rather than the trainable (and mouldable to your company way) you may miss out onbetter long term bets.
I didn't say i thought it was strange that BS students can't program, only that i agreed that they can't.
Personally, if college is not preparing them for the practical practice of their art (I'm not saying it should be done to the detriment of the theoretical side, i'm just saying it's not being done at all right now), that seems like not necessarily the best use of time/money.
FWIW: I have the same view of law school, which is essentially worthless in terms of real world practice. If you practiced law how they test you in law school or on the bar exam, you'd be disbarred.
Let's think about this for a minute. Most students earning their BS are around 20-22. Were very good at programming when you were ~21 with little to no experience?
I'd expect a 21 year old who studied computer-science to have programming experience outside school exercises, and not show any signs of sucking at it.
If this isn't the case I see no reason to expect them to improve to a level that they "can program your socks off" after another 2-3 years.
We can argue about what "bad at programming" and "program your socks off" means, but my main point is that there is no excuse not to have some programming experience by the time you graduate.
grad students tend to have a curiosity and motivation. A few grads go to put off real life - most I have met are much better at questioning and probing.
I would expect a ms/phd to be distinctly better at questioning and thinking about things outside of face value than a bachelors, on average.
Were you able to find out when they first started programming? My experience is that BS candidates who started programming way before college were much better than the ones who started only after joining a CS program. I think it's a combination of longer experience programming, plus once you have some practice at programming, it's much easier to learn and understand the theoretical underpinnings of CS.
I think it's also about the reasons for starting programming. Most people start programming before joining a CS program not because they have to, but driven by their curiosity. And it's quite probably that they retain the curiosity throughout their education, pursuing more programming opportunities than your average BS.
I think this is largely a result of the average CS student never working on a non-academic project. The projects that CS students tend to work as coursework don't require too much investment in learning to become a good programmer--the code they write is written, turned in, and never looked at again, and working in teams typically isn't common. They never have to learn to be good programmers. The exceptional one's seek out extracurricular work and their programming improves with practice.
That is unfortunately the belief of many that use college as an excuse to goof-off for a few years and simply get a job on the way out. Unfortunately, students are finally realizing that it is not so easy.
Then there are those students that were diligent and made use of the opportunities college provided. This not just means classes, but building relationships, participating in groups, starting businesses, etc. Do you need college for this? Not as all, but the things I mentioned are made a whole lot easier when in a community of like-minded individuals.
Your point about still learning however is a good one. So many stop truly learning the few years after college once they get into a career.
UK based experience here so my experience may not apply outside that.
As some of you know, I worked as a successful technical recruiter for a number of years and I only ever came across one organisation that requires proof of your educational qualifications. The rest simply assume you're telling the truth.
It's a risky strategy but in software development at least, someone with a few years of development experience under their belt who lies about having a CS degree will struggle to maintain the lie once they are given tasks that require a fundamental understanding of programming theory. The more experience you have, the easier it is to pull it off.
On a side note, we interview tech directors and CTO's on a regular basis and ask each of them How important is a CS degree in todays market? as well as How much value do you place in a Developers personal projects such as github & demo sites when they apply for a job with your company? and the answers give an interesting insight into the mindset and importance of experience versus qualifications.
As a UK based programmer I've had 3 jobs since leaving University. Out of those, 2 I recall asked to see proof of my degree (photo copy of my graduation certificate). The other I can't remember but I think they did too.
This is probably because I am a more recent graduate, if I had 10 years experience I imagine that would be more important to companies than my education. However, I think plenty of places do take it quite seriously.
As someone who hires if I find a lie on your CV, even a relatively small one, I have to make the assumption that you're untrustworthy and I won't hire you. It may be the only one but I have limited exposure to you and limited time to build a view so one lie is a big deal.
And if you say "I did it to get your attention", my response would be "why, haven't you done anything real worth my attention?"
The problem is that most people who lie aren't undiscovered geniuses, they're simply liars. I might miss out on a genuis at some point in my career but I'm certainly going to miss out on a lot of the grief that comes with hiring dishonest people.
EDIT: Removed a section based on something I think I've misunderstood.
Hold on. I might have misread, but I thought the point was he -didn't lie-. He put 'Mensa' because he was in Mensa. It stood out because so many other people had an 'education' section at that spot on their resumes.
There's a lot of confusion about that. I thought that was the point, too, but enough other people thought differently that I searched for him.
He doesn't seem to be a current member of Mensa. That doesn't mean he wasn't a member at the time, though. So far as I know, there's no way to look up records of past members. (Except maybe by a Mensa employee, which I'm not.)
Still, I don't think he meant that it was a lie. If someone asked me about it on my resume, my answer would be much the same as his. I usually have a second reason, though: If it bothers anyone that I'm a member, I don't want to work there. In my experience, people who have a beef against Mensans tend to make life very hard for smart people in general. They seem to make it their life goal to bring them down a notch. I don't need the extra stress, so I just avoid those companies.
* A CV is not created under stress, it's a considered document which will almost certainly have been drafted and reviewed. Lies on a CV are not spur of the moment things, they're thought through.
* Yes we all lie but there are different levels of lie. Lying in a way which might involve someone making a decision to give you a job (and thousands of dollars) that they might not otherwise give you is a significant act of dishonesty.
* An interview is a time limited thing and because of that I have limited information on which to base a decision. If one of the things I discover during that interview is that you have perpetrated a significant, considered act of dishonesty, it's almost certain you're not going to have done anything to allow you retrieve the situation.
I'm not saying the person is a habitual liar, I'm saying I don't know but I'm not going to take the risk given what I've seen.
Probably worth saying that I'm talking about lies here, not exaggerations (which I accept as part of the game).
When I got my first job in Silicon Valley it was through serendipity (my part) and desperation (on the part of my first employer.) I really didn’t have much of a resume – four years in the Air Force, building a scram system for a nuclear reactor, a startup in Ann Arbor Michigan but not much else.
Statements like that make me think most of the HN crowd live in a different stratosphere. That's a pretty good resume by normal standards.
I fully agree here. Either Silicon Valley was a much more exclusive place in the 80's, I'm fooled by the 30 year technology difference, or this is needless self-depreciation.
Recently I interviewed a candidate for a fairly niche but high demand field. I generally liked him - he had skills that would have been useful to the team, and he was a very bright person. But a couple of us felt he exaggerated aspects of his resume by sprinkling in a couple of bullet points he knew we were interested in (from the posting) but didn't understand well. He would have fit well on our team, but ultimately we decided we couldn't trust him. If he lied about being "proficient" in skill #2, how did we know he wasn't lying about certain achievements or even jobs from the past?
I realize his lie was less severe than making up an education (and ironically much easier to catch), but it's a good example of how small lies can do a lot of damage.
> If he lied about being "proficient" in skill #2, how did we know he wasn't lying about certain achievements or even jobs from the past?
I think you can tell if someone is lying about specific job experience in technical areas; when you drill down, the detail won't be there.
But there's a more general issue here (though I think you're only slightly guilty, because your leap is quite small). It's about a kind of intuition about dishonesty being an aspect of a person's character, rather than a mode of behaviour in a particular scenario. A lot of people make wild jumps from single actions to an inference about behaviour in lots of different situations. I think behaviour is heavily dependent on the situation, and much of what we think of as "character" is unwarranted.
People generalize from small incidents (of honorable or dishonorable behaviour) to a character classification, and then specialize these labels back down to predictions of behaviour elsewhere. But the guy who would never cheat a shopkeeper out of mistaken change may actually be a tax fraud, not because of "character", but because of wholly different frames of reference, possibly even resentment of government.
It's the same with people who judge "attention to detail" by spelling or grammar errors. I label them narrow-minded myself :)
I'm with you 100% right up to your last point, which sounds just wrong to me. The whole idea of "attention to detail" is that it's a personality trait that allows a person to see small details and defects even in areas where they aren't expert. And most of us believe it exists.
So yes: if you submit a resume with clear spelling errors (i.e. ones caught by a spel chkr) most of us would take that as evidence of a lack of attention to detail. And we'd generalize to you skipping a test case before pushing code, or making sure all your stock photos are licensed before deploying the site, or...
The mentality that lying is one of the worst things you can do in the workplace is either there or it's not. If I learn a candidate is casually dishonest in just an hour, the red flags are too obvious. Sure, it's a proxy for his character, but it's a really good one.
You've framed the act in a way that justifies your position. But what if your experience of HR in companies is incompetence and buzzword bingo? In this frame, getting through the HR screen is a hurdle to getting an interview, not an action "in the workplace".
I'm amazed my position is even remotely controversial here. Many people here, including yourself, are framing the debate from the perspective of their own experiences as candidates, which is a biased way to look at the perspective of an interviewer.
The fact is interviewing it tough, and is inherently a flawed process (I agree with you that ideally the interviewer could get to know the candidate's character, but an hour or a day isn't the correct timeframe to do this). Good interviewers try to find the best fit for their teams, instead of lamenting the fact that the problem can't tractably be solved perfectly.
No, actually I'm not. I've never had to embellish my CV and every interview I've done has resulted in a job offer.
I'm actually attacking the notion of "character" itself. Yes, there is a set of habits and probabilities of certain responses to various scenarios, but I contend that the mental model of "character" (as it is normally understood in Western culture) is a poor predictor because it groups together certain situational responses with labels that have no necessary underlying correlation to validate them.
My own judgement when interviewing job candidates mostly comes down to technical depth. I'm primarily interested in competence and demonstrated ability to deal with and get results in a complex technological system. I'm not really interested at all in CV buzzwords - and that's what most of those bullet lists end up being, tags to try and get through HR filters. But my experience is also coloured by working in relatively large companies, and being a technical guy, not a manager making the hire decision.
Great question, that's something I specifically thought about. We probably would have interviewed him if he had said "some knowledge of" etc for those bullet points (which would have been truthful). He actually had quite an impressive resume without the fibs.
We probably would have interviewed him if he had said "some knowledge of"...
But as everyone "knows", you just can't use weak language on your resume. And if it just so happens that you were let go of from your last job for some petty, grossly unfair reason, heavens, no one wants to hear the truth behind that!
So people face a lot of pressure to burnish things up, here and there. I'm not saying there absolved of responsibility, when they get caught at having fibbed. But there is something of a Catch-22 at play, here.
You have to be careful with this line of thinking and I'll explain why - recruiters. They will take an existing resume and "fluff it up" for the exact job description.
Yes I've seen recruiters change/add additional job titles to match exactly what they knew we were looking for. Then the candidates come in and have no idea what I'm talking about and everyone's time is wasted.
But a couple of us felt he exaggerated aspects of his resume by sprinkling in a couple of bullet points he knew we were interested in (from the posting) but didn't understand well...and ironically much easier to catch
Right. If you exaggerate on a skill the company is interested in, the chances of being caught out are nearly 100%.
If anything, catching such a mistake says something about that candidates intelligence :-)
I've had more than one situation where I was interviewed by someone to see if I was "proficiient in skill #2" where it was obvious to me that they were either incompetnat or unreasonable.
For example, I listed Win32 programming on my resume back when I would do windows work... and one guy would ask me the parameters for various functions in the API. When I said I always looked those things up while programming he seemed taken aback and said "well, have you used (some specific area of the API)"... and when I said yes, he asked me to list off the parameters.
Needless to say I didn't get an offer from that company, but have had trouble respecting them ever since (and am not surprised that they haven't amounted to much of anything and haven't been innovative.)
Its quite possible that he told the hiring manager I'd lied because I couldn't name a single API he asked.
I just sat and thought about a function I use a lot in my current programming. Cant' quite remember the name of the function itself or its parameters... because I haven't used it today. When I need it, its there, (and its autocompleted by the IDE anyway.)
I think the biggest problem with companies hiring is that they often have people who have no clue how to interview doing the interviews. Seen that a lot.
I'm sorry that happened to you, I've dealt with the same kinds of things. It sucks when bad interviewers block good candidates.
In my case I assure you that's not what happened though. When the candidate realized he was faltering on too many questions about skill #2 (really basic questions) he started talking about how he was currently reading an introductory book on it and how he was excited to work somewhere where he can apply it. Oh yeah, and he claimed on his resume that he had been applying it at his current job.
I stopped attending college with one semester left until graduation. It's on my resume and it's never held me back in any way.
The key is that I was able to prove myself early on in my industry (before even leaving college). That set me up with the connections I needed to get my foot in the door.
edit: I guess I should clarify that I left college to take a job, not because I was failing or anything like that.
I'm in the exact same, comfortable, spot. I left college with a year, maybe a hard semester, until I graduated. Took a great job, had lots of work experience even before college and have never had a problem. If you have no experience they look for a degree. If you have no degree they look for experience. Just make sure you have 1 of 2.
I went to a 5 year school with co-operative education (Northeastern University) and ended up quitting and going to work for the company I was interning in a previous semester prior to starting my final year. I have the school listed on my resume but I do not claim to have a degree.
This is shocking. In the UK this is potentially a criminal offence, and it certainly leaves the liar open to civil action. And even if they don't bother with courts they can just dismiss you and you've lost most of your protections.
And it sounds like really weird advice. What happens if recruiter tells Joe to just make something up, and then sometime later has to approach Joe with "a great candidate; a perfect fit for the job"?
That's for any job. Obviously there are some jobs which are more protected - you cannot call yourself a dietician or social worker unless you're qualified and registered.
Well for the recruiter it is probably no risk. They get paid if the person gets hired, nothing happens to the recruiter if the candidate gets fired/arrested a year down the line for lying on their CV.
Why give them a second chance at all? It is essentially a "no risk" situation for them if the only consequence for them is a slap on the wrist for a first offence.
Because like it or not, we needed them. We were willing to take the pain of dropping them if it was the only way to get them to stop causing us extra pain.
Since they stopped when forced to, the pain was gone and we continued.
We used a couple other recruiting companies, too, and none of them produced enough viable candidates to keep the desks filled. (That sounds worse than it was. It was a growing company.)
Please don't take this the wrong way – I'm not trying to judge whether it's good or bad – but it sounds like this might be cultural, maybe associated with the American "fake it till you make it" approach.
Years back I was a consultant and was interviewed for a telecom assignment. The meeting was nice and later he called me just to clear some things up. He kept talking about Erlang and then asking me about my experience level with Erlang and I told him I had none, but that I love programming languages and probably would learn it quick.
Then he said I had Erlang on my resume... Turns out my boss had altered my resume without telling me. I was honest and told him that I had no experience and had no clue how that ended up on my resume, maybe he read the wrong resume? Nope. It felt really awkward hearing him say he just couldn't trust anything on my resume now. But he understand him perfectly well.
My boss just laughed when I later told him what happened. He also told me to be a bit smarter and play along better.
This is a great piece from SB and one I can totally relate to. Since I've started working for other people, I've never found myself in a serious ethical quandry with interviewers regarding my dropping out of school. Maybe because in most cases, I haven't been asked about it as there are lots of folks in my field (SEO & search marketing in general) who learned on the fly through their own sites, etc. But if asked, I tell them the path I've taken to get to where I am, although I try not to go into my life story.
It's usually more of a challenge when speaking socially with co-workers, especially when you're dealing with real "job people," who follow the school-career-40-years-of misery path to a tee. Frankly, I try to avoid talking about it as you're usually subject to one of two diametrically opposing viewpoints. Usually, they don't say anything that would make it outwardly identifiable but you can pick it up through body language etc. It's either:
A. "What are you, some kind of idiot?"
or
B. (what I've gotten more lately) "What do you think you are, some kind of genius?"
It's funny because I don't consider myself either of those things. But to keep the conversation away from that, I just avoid talking about it, although I will if asked. (One guy I used to work with it just stared at me blankly like I had just kicked his dog or something after I told him I had dropped out of undergrad and not a masters program, although he was the exception to the rule!)
I don't know how many companies I've applied to declined to speak further because of the lack of degree but I've only had one company ever flat out tell me in the interview process that they couldn't hire me: and that was an education lead-gen company.
Honesty & transparency really are your best weapons in situations like this.
Dealing with people who do not like those that do something else than (what the listener expects) the "default" thing happens in so many contexts. Not going to college is just one of many. Some simply have a difficult time with those who "live intentionally" - they seem dangerous, subversive, maybe even untrustworthy to said listener. Try explaining to certain people that you're over 30 and not married (and never will be), don't have children (and don't want them), live alone, don't own a house or a car (and take public transport) and watch as their faces change to shock, confusion, or abject terror. It's a particularly odd reaction as these things (like not getting married, living alone, etc.) become more common in places, but some groups/cultures/subcultures simply have not caught up with that reality.
It's perhaps a ubiquitous reaction to those perceived as "purposeful" outsiders.
I have zero college experience, I've never lied about it, and I've never had a problem getting a job. In fairness, my specific area of expertise (front-end design/development) is one where you can make a real name for yourself simply by building something awesome, but I'm still of the opinion that moxy and gusto will take you farther in many fields than a degree. Especially in technology.
I have had the joy of interviewing people who've lied on their CVs (Resumes). One particular pearl was a guy claiming he'd worked on a particular project I had lead, I proceeded to ask him about the project who ran it, what it was about etc, he gave some vague answers, needless to say he didn't get the job.
Though the worst offenders for this aren't individual agents, its usually 3rd parties such as body shops trying to provide augmentation staff or recruitment agents doctoring resumes to try and get candidates in. I believe it was the case with my earlier example.
I consider even small lies on a resume to be red flags. The worst ones are lies that don't have to be told to get the job. They expose character flaws that I don't want in anyone working with or for me.
For example, I had a software development candidate who put "Fluent in Spanish" on his resume. Spanish wasn't a requirement for the job in any way, but unfortunately for him there were several native Spanish speakers in my office. I pulled a co-worker into the interview room and asked her to speak with the candidate in Spanish. I understand a little Spanish and was able to follow as she asked him about where he was from and what his hobbies were. The candidate could barely converse with her. I guess he had a couple of courses at school and called himself "fluent".
You never know everything that is true and isn't true on a resume, so interviewing someone is a process of building up a web of trust. I'm going to validate whatever I can in an interview from software design and pattern knowledge to whether or not you really were an Eagle Scout. It's all fair game if you put it on your resume.
I guess he had a couple of courses at school and called himself "fluent".
Umm, another possibility is that he learned Castilian, and the people in your office grew up speaking some Latin American version. Just the other day a native speaker from Spain told me of his being completely flummoxed by the border guards trying to casually chat him up on his entry to the U.S.
Nope. The people I worked with were almost all from Spain. They spoke Castilian. My main exposure before them was always from Latin American sources. I LOVE the way Castilian people speak since it's so clear.
We had Latin American folks in the office too. They never had a problem speaking with each other. Maybe a border guard speaking broken Spanish confused someone, but this woman was just trying to ask basic Spanish 101 type questions.
The follow-up to the story is that I came across the same candidate's resume 6 months later. He had changed the "fluent in Spanish" to something like "basic Spanish".
I had a very similar experience when I was much younger, fooling myself that by not specifying how fluent I was, I wasn't lying when claiming knowledge of language X. Then I had an interview much like the one you described and learned that "misleading statement" and "lying" are close relatives.
Yeah but quite often people are thrown off balance when encountering other native speakers of a shared, large language group (but speaking a different accent or dialect) for the first time. That's all I'm saying.
In high school I was a terrible student and therefore I didn’t think I was that smart. My sister, much older and much wiser, thought otherwise and had me take a Mensa test when I was a junior.
The numbers confirmed her suspicion.
Being a Mensa member didn’t make school any easier but it gave me comfort that I wasn’t a complete idiot, just that I learned differently. Convergent was the only time I put Mensa on a resume because of how the recruiter described the intellectual horsepower of the hiring exec and the rest of the team. I thought I needed something to wave to get in the door.
It worked. After that I just let my resume and accomplishments speak for themselves.
"""
People get hired because, somehow, they get hired. In my case I did something which these days would be easy to check, and would get me into trouble, and when I started out, in those pre-internet days, seemed like a sensible career strategy: when I was asked by editors who I'd worked for, I lied. I listed a handful of magazines that sounded likely, and I sounded confident, and I got jobs. I then made it a point of honour to have written something for each of the magazines I'd listed to get that first job, so that I hadn't actually lied, I'd just been chronologically challenged... You get work however you get work.
"""
I'm lucky enough to have never been faced with a situation where I felt like I needed to lie to even have a chance, so I have a hard time judging. Always a tough call.
I've seen good candidates get turned away for not finishing college, and to that I have to ask would you turn away Mark Zuckerberg or Steve Jobs? Many professions need to change their attitude about requiring college degrees.
Is Zuckerberg a particularly skilled programmer? Is he some kind of business genius, churning out an endless string of sure-fire hits? Or did he get insanely lucky and cash in before it all fell apart?
You ask this question in a way that suggests that you think he got insanely lucky, and that's it. Whereas I actually think he is a great businessman. (I also think he got lucky)
He could have sold Facebook for billions of dollars at any point. If he felt like he was riding on luck, he should have expected his luck to run out at any moment in the last five years or so, and thus have a strong incentive to sell. So he was either being exceptionally irrational (stubborn, stupid, etc.) or he knows something you don't about the business he's in.
The "insanely lucky" part focuses more in initial traction and less on future actions. He got in at the right time in the right milieu. THAT part is luck. You take it as a foregone conclusion that the social revolution would happen, but its not clear when or how it would manifest.
Later on, even if he made a misstep Facebook wouldn't blow up. If he tried deploying Beacon earlier on, for example, FB might not have proliferated.
"He could have sold Facebook for billions of dollars at any point. If he felt like he was riding on luck, he should have expected his luck to run out at any moment in the last five years or so, and thus have a strong incentive to sell."
That's true of many people, including the Digg people.
I don't think the latter part follows: even if Facebook got big (and became worth billions) primarily through luck, it doesn't mean that the rational decision would be to assume it was only luck keeping it afloat thereafter. Once something's already big, it's a whole different game; now you're managing a large company with considerable assets and brand. Presumably at that point he also had lots of paid lawyers and staff advising him.
People need to stop holding up Steve Jobs and Mark Zuckerberg as examples. Those are exceptional individuals, much in the same way that a Lebron James is an exceptional athlete. College is not necessarily the best use of their talents.
In interviewing my fair share of candidates for technical roles, the most exceptionally talented people were well qualified regardless of educational background. For good or merely average candidates, college became a more significant differentiator. Those with a college CS background were able to convey basic computing concepts easily while those without struggled mightily. The differences were even more apparent when reviewing their code samples.
College degrees are not necessarily an indicator of great talent or that someone will be a good employee. However, it at least insures that candidates have a knowledgebase of skills and a grasp of core concepts.
They are good examples because they show exceptional people exist. Given that they exist, there is a chance another one will be waiting in line to join your time. If you narrow your search, you are going to miss them.
For a job on my team? When we have to ship a product and have a deadline? Of course I'd turn them away.
There's a difference between being an employee and being a founder. For a start, I'd want an employee who can work well with others, doesn't think they know everything, is responsible and isn't likely to quit before the project is done to start their own thing. Four years of college is longer than most of the projects I've worked on, but it can be an indicator that you can finish something you've started, even when there are bumps or low points or setbacks.
One of the best programmers I helped hire and worked with had stopped going to college - so I'm certainly open to not making an absolute rule; but saying a college degree isn't everything is not the same as saying it doesn't mean anything.
The beauty of the software industry is it truly is merit-based. The degree might get you in the door but they will test you immediately to see if you are capable of handling the position. So don't lie. Tell them the truth, because there is nothing to be ashamed of. I'm going on my 17th year in this industry without a degree. If you have "it", whatever that may be, they will take notice. And if they don't then it's just a bad fit, no big deal. There's another one down the street.
I just want a little bit of a reality check. How many of you that are dismissing CS degrees or saying if you go to college don't study CS because you already know it .... How many of you really know what you're talking about? I don't mean that in a derogatory, you may be the foremost experts on things for all I know. I just don't think either a) this phenomenon is that common or 2) it is a very deep knowledge, if it is common.
I'm well aware there are expert CS people that don't have degrees. I know some myself. But I don't think it is as common as you all are saying.
I've met plenty of undergrads, sophomores, etc that were self taught before college and think very much the same about their skills aa many here do and only takes a few classes for them, if they were honest with themselves, to disabuse them of this notion.
I've also met a lot of self-taught people that are good at a couple things but lack a lot of fundamental understand, and many think they are great because they are whipping out PHP spaghetti farms like nobody's-- most are not like this though.
I'm not sure following a YouTube tutorial on creating a Web blog engine in RoR is an epiphany that means "I'm self taught, I don't need no stinking college."
While there are brilliant, intimidating self-taught computer scientists/programmers, I'd say there are a lot more that fancy themselves in this category but don't know a Lamport clock from loop unrolling. I have no idea about anyone's individual situation or knowledge level, I just think there is a lot being made this self-taught phenomenon than bore out by reality.
As a computer engineering undergrad with a < 3.0 GPA at a top 5 CompE school with 1 more semester to go, I've felt a lot of pressure to lie about my GPA on my resume just to be above the 3.0/3.3/3.5 cutoffs that so many jobs have. It's a little tougher to score an interview without a GPA on my resume, but I feel that once I'm in an interview, I'm at little to no disadvantage compared to anyone else since I think most places will prioritize actual problem solving skills over a number with 3 significant figures...
Currently unsure whether it's better to blurt out "2.6" or "don't worry about it" when recruiters ask me what my GPA is after seeing the rest of my resume. Either way, I sleep way better at night compared to lying.
Whatever the current HR types say, it doesn't define you.
It will matter to them for the next couple years and then real world experience will be much more important. And more enlightened companies will care more about real world results instead of grades most of the time anyway.
I didn't meet the "GPA minimums" for my first job but since I left my GPA off, no one realized it until much later.. a year after I had the job and I was invited to do college recruiting. ;)
Most of the mainstream tech companies that the other students are going after don't ask for GPA. The only company who did go out of their way to ask for it is Google. I don't list my GPA on my resume at all, and it's worked out pretty well (as long as you can fill the space with side projects or other experiences). I tend to apply solely to those companies and startups, so I definitely can't say anything about the whole field.
I graduated with a 2.8 from a top 15 school (actually, I believe it was 16, now that I think about). I never felt the need to put my GPA on my resume. The few times I was asked, I explained I was working nearly full time while attending school full time.
If a recruiter asked, I would respond with, "Is there a minimum GPA?" If so, tell her. If not, I would say its not important. The important thing is you have a degree from a top 5 school.
My school has a one page policy document in acceptable ways to format the significant figures (up to 4) and rounding (down only). Violations can lead to excommunication from career services office.
Don't lie about your GPA and don't bring it up. If some recruiter asks it, say "its not worth putting on the resume, and you shouldn't be rewriting my resume. IF you're looking for something to use to pitch me use X, Y, or Z" ,where those are projects you've done, in class our outside of class, that are relevant to the job.
Two possibilities- the recruiter is trying to filter you out (in which case, if you are qualified for the job, never work with that recruiter or firm again, and tell them this every time they contact you) or they are looking for something that can use to make you stand out... and don't really care about the GPA.
Any company that won't hire you because your GPA is not high enough is a company run by idiots.
At your age, it may seem silly for me to say that, because you've not experienced this kind of idiocy before, I bet, but it is the case.
A company looking for a CS student whose worth your time is one who will want to talk to you about programming, not your GPA. (they might ask but they won't really care)
You'll learn a lot more from the people who don't confuse symbols for reality.
At one stage it seemed it was easier to get an IT job if there was an obvious lie on your CV. The manager interviewing you would more likely employ you if they thought they could bump you anytime simply by doing a CV checkup.
Thing is, it'd be nice if it were something more of a two-way street. The same companies that would be incensed at the slightest fib on a resume will quite often lie to the candidate, at some stage or another in the selection process -- or like as not hire through recruiters to do the lying for them, as if this absolves them of any ethical responsibility.
Not to mention the lies that start trickling on down from on top, once they start the job. But that's a different topic.
No degree here, but never lied on a resume either. It was very difficult landing my first job (in my teenage years), but eventually I got into the industry by starting a company and going bankrupt two years later. Frankly it was a wonderful way to get going, and nobody has significantly questioned my credentials since then, and especially not now that I have 20 years of professional expertise. Seriously, just start a company, and if you fail at age 16, nobody really cares, and you've got something on your resume. To get a few hundred (or thousand) bucks, get out MS Word (or Google Docs), type out several dozen pages of detailed business plan, and show it to all family, friends, and ex-teachers (but stay away from banks and VC, because they don't care and you're wasting their time). Now that it's 2012 and all, you only have to beg (or mow lawns for) $500 to land an iOS developer license. Then you can write a resume, show your first year of experience, and talk about your app in the App Store.
That said, I'm not going to tell you that I'm just so special that I couldn't have used college, and the people who do say that, seem to have chips on their shoulders. There is certainly an appreciation for design patterns and the humanities that any college would have taught me, that I had to learn I needed, and go and seek out on my own, and that's hard. But then again, college students today are faced with the prospect of a lifetime of debt, just to land a career with an average (I said average, not you or me) 15-year half life. It hardly seems appropriate.
Anyway, point is, you never need to lie if you have the enthusiasm. With enough enthusiasm, the experience eventually builds to a point where nobody questions your formal education.
I've had the recent experience of interviewing for a Java programmer with some devops experience.
In all the interviews academic achievements were neither considered nor mentioned.
However, it was astonishing to me how much the candidates own opinion of their programming skills differed from the actuality as evidenced by their performance on a skills test.
No trick questions, just Java basics like the immutability of strings and some basic inheritance questions.
I hated time wasted on college, but I did it. I did it via distance education course to save a lot of time and now I have diploma saying I am masters. It is not A grades, but rather just above pass level. This adds zero to my knowledge or my abilities, but I pass all these stupid filters put in place by HR people.
I do lie on my resume. I write that I have a master in engineering which is also true except for never doing the thesis. At the interview I tell the interviewer straight up as the first thing that I lied and don't have a formal degree but it was a necessity to get the interview in the first place. I then tell them that I completely understand if they want to turn me away and I apologize.
I have never been turned away. No one have ever really questioned why. I am very skilled at what I do and the rest of my resume reflects that. I am far better than most people I met who program with or without a degree in my field.
Never having finish my degree makes this a necessary evil for me - I wish I could go back (life at this point does not allow me to).
However I feel no remorse for lying and frankly it's the loss of the company if they assess my entire character based on this.
If you clarify it as the first thing you do in the interview I'd expect most people to not consider this lying, but as a safeguard against silly HR/recruiting.
Some countries have a "master without dissertation". It doesn't technically exist here either, but you could just put that...
Once he's in the interview? Of course nobody does that, it's too confrontational. He might not have gotten hired because of it but there's no way to know.
On my resume I list my BS-ECE and then masters _classes_ in AI, Supercomputing, and Robotics. When (usually) asked why I didn't complete the degree I then give 'em the reason, which is valid enough that it generates conversation.
I only recently got an MSc in Computer Science, I'm in my late 30s.
Before this I never put an education section on my CV. I was homeless when others were doing their A levels and Bachelors.
What I found is that every employer simply filled in the gaps and assumed that I had a degree.
The choice I faced usually came much later when sat a lunch table one day someone would bring up a "What did you do at college?" conversation and it would eventually be asked of me. At that point do you answer to sustain their idea of you based on the assumption, or do you answer honestly and change their impression.
In the early part of my career it was simply best just to change the conversation (very easy to do, people love talking about themselves). In the latter part of my career I chose to just be blunt and open.
Being honest never hurt me, but I strongly suspect that lying would've hurt me hard.
I'm really skeptical of the "honesty is the best policy" lesson being taught here. The reality is that being dishonest (on a resume or otherwise) can be very advantageous. Why else would people lie?
Be honest because you believe it's the moral thing to do, not because you expect to be rewarded for it.
Might be because the benefit of lying is immediate, but the drawback much more distant (getting fired in the future). People aren't always very good long-term thinkers.
You might be right that pathetically lying on resumes in the end provides a career with a higher average income or whatever. Given that many of us here are probably honest and/or having to hire off resumes, I'd guess we're all collectively hoping that's not true.
Our company hired a promising recruit who as it turns out had 'embellished" their resume and it caused a lot of friction and general bad feeling for both parties when they couldn't complete some relatively simple tasks. I took responsibly as I had hired them - although next time I will probably implement the obligatory whiteboard! As it is a basic web dev shop I don't place too much value in a prospective employee with college degree(s) for the work involved - it would almost be overkill! However working effectively in the respective domain is what I would consider important (for this particular job anyway).
That's odd. That's not my impression at all. I figure he would have put anything that would draw some attention - Had he been a boyscout, he could have put that down, but since he happened to be a mensa member, he put that instead. I definitely don't think it was a lie, as that would have undermined the entire point.
My impression was since he didn't have any college degrees, he was being turned away from jobs. He contemplated the idea of simply lying, but instead, thought of another way to draw attention to his credentials that would help people overlook the fact he hadn't gone to college. Rather than make up a degree, he highlighted the fact that he was in Mensa, which ended up working
What this post really brought home for me was the importance of 'knowing your shit'. Steve didn't have the degree, but he had the knowledge and could basically prove it. Lots of graduates with the paper couldn't do that.
If you have gaps in your knowledge that should not be a life-ruining situation but it needs to be corrected, hence Udemy, Coursera, and the new wave of ed. startups coming down the line.
Steve didn't have the degree, but he had the knowledge and could basically prove it.
That's not really what happened. Steve had specific technical knowledge and experience that he wouldn't have gotten in school anyway. Also it sounded like most of that technical knowledge was irrelevant to the new position.
I imagine most of what happened is that the interviewer decided to trust his own judgement and gut about Steve's raw brainpower and ability to learn. And there's the issue of not having a degree - you rely on people sizing you up to be competent at it.
There's another element that hasn't been covered in this discussion. I've you've been out of school for more than, say, five years, it is quite possible that quite a bit of what was taught and covered in college is outdated in today's marketplace. That's certainly the case if you go further back, say, ten or fifteen years. Under that scenario, you definitely want people who are very comfortable shifting gears and learning on their own. I can safely say that virtually none of what I do today I learned in college. The basics, yes, but not the specifics. The languages are different, the technology is different, the patterns are different, project management is different, etc.
I have worked with a lot of people without degrees doing work at fairly high levels. In my experience, this seems to be a category that self-selects based on real-world competence. Some have been absolutely brilliant. I have seen people without degrees dig into new subjects with an intensity that cannot be taught or trained. I have also seen people with degrees get flustered and give-up or fail to perform despite their years of formal schooling. I have hired folks with degrees that have been a complete waste of time.
I do understand the need for an easy filter. This is particularly the case at larger companies where it is very, very hard to be open to anything outside the norm. It can take a lot of work to hire someone without a degree. And, yes, it can be risky. At the same time, I've found that most people without a degree are very confident and sure of themselves and are more than willing to prove their knowledge and worth. I have met people with degrees who got offended when challenged. It goes both ways.
There's also the issue of how and why someone went into college. There's a huge variance here. In my own example, I had been doing electronics as a hobby, building all kinds of analog and digital circuits, and even wire-wrapping my own microprocessor boards way before I hit college. In sharp contrast to this, once in college, I met a lot of people who had never touched a soldering iron yet somehow decided to go into electrical engineering. You could tell the difference between hackers and students. Those of us who had been hacking the stuff for years before college had a very different understanding and attitude about things. The kind of thing that connects calculus class with physics lab in your mind instantly whereas others are just good test takers.
If you get a no-degree hacker or interrupted-degree hacker --and they are good-- you are likely to have someone who has far more understanding, drive an passion than someone who just up-and-went to engineering school one day without having had skin in the game prior to that.
I personally don't place a degree at the top of my list. I've been burned by that before. I take the time to really get to know the person as much as possible. Hiring is expensive and should be viewed as a long-term investment. If someone is going to be with you for a few years it is quite possible that during that time there will be needs to shift gears and adopt new technologies, frameworks, etc. Among other things, I need to know that anyone I hire can roll with the punches and actually welcome these kinds of challenges with open arms.
One of my worst hires: MSEE, worked at Intel for several years. I needed him to design high-speed signal processing boards (FPGA, signal integrity, transmission lines, controlled impedance, GHz+ range). He failed miserably. It was obvious that he did not full understand the subject beyond basic book level. He finally admitted that most of his focus at Intel was in switch-mode power-supply work but he really wanted to get the job. I shifted him over to designing power management electronics and he did OK. Just OK. What I learned from this is the opposite of the article in many ways. He was truthful about the degree and had impressive looking work credentials, but he bent the experience line enough to land the job. I should have done a white-board test on him but, hell, he had a Masters, right? I was glad to see him go about a year later. My junior engineers could do better power management design work than he did.
The other element here was what I call "big company syndrome". Large companies tend to have a lot of segmentation. Engineers can focus in one area and only that area and rely on other team members to carry the rest of the weight (and understanding) of the other areas of knowledge. In smaller companies you have to be more of a generalist. The problem with the hyper-specialist is exactly that. In some cases they have no clue of anything beyond their little sandbox. This is bad. And this was the case with my worst hire. He had been one of several hundred (or thousand?) engineers at Intel and could only see one small sliver of the entire universe. He had no reason nor the drive to dive into other areas and learn them on his own. That's why he failed to make a shift into another, larger, ecosystem.
He left to grab a Director of Engineering job at a hardware startup. I knew that he was not even close to being qualified for that job, but he somehow managed to sell himself. Three months later he was calling me to see if I had any contract work I could throw his way.
I've you've been out of school for more than, say, five years, it is quite possible that quite a bit of what was taught and covered in college is outdated in today's marketplace.
Perhaps for people who went to vocational school, but not for liberal arts and sciences majors. The math behind much of Computer Science, for instance, has been around for decades and it does not change. Sets, hash tables, queues, etc.
I need to qualify this a little better because it sounds like I am saying "no college" is good. That's not the case. I would not hire someone who's only finished high-school and had zero college work. The only way I could possibly do this if their verifiable work was so outstanding that there was no doubt they could perform.
I want to see basics such as college-level math, calculus, physics and, ideally some CS course work. If they dropped out after that and the work history and relevant knowledge checks out I would not hold being a college dropout against them.
Very few people can get a solid education by themselves just out of high-school without being exposed to college-level work.
I know people without any degrees that have more college units than most people with two degrees. They are simply perennial self-driven students and have not interest in degrees but rather, knowledge. Admirable, if you can do it.
Would adding Mensa to your resume really help you get a job? I talked to a hiring manager friend about this a while ago and he felt adding things like that don't make sense unless you have some achievement related to Mensa. One caveat - he wasn't in the tech industry.
IQ is strongly correlated with job performance, so yeah, providing evidence that you're in the top 2% by IQ is a really valuable indicator.
My Dad was in Mensa, and reading their national magazine as a kid I was not exactly ever inclined to join, but as a quantifiable, generally useful piece of evidence about a candidate it's pretty hard to beat.
In contrast, Neil Gaiman's famous commencement speech in which he admitted lying about his resume to get work early in his career: http://www.youtube.com/watch?v=ikAb-NYkseI
In Israel jobs usually ask for a BSc degree OR service in the army's intelligence unit. People go out of the army here with 3 to 5 years of experience in highly difficult subjects so tech companies usually care less about your degree.
My first thought on reading this is that it should be probably be called "Breaking NDA" rather than "Lying on your Resume." That said, businesses to vary on what they consider confidential.
I have experience of interviewers routinely either
lying or not knowing what they're talking about,
and expecting the candidates to lie and be as
dishonest as they are.
One interviewer even got offended when I was
truthful about one of my weaknesses - a skill
I believed not to be a requirement because the
company - a large, reputable French bank - had
lied about the job description.
In fact I had previously specifically asked his
boss (the hiring manager) in person about that
area of work, and he had lied with such a straight
face that he deserved an Oscar.
I think the college degree hiring issue is all about confusing a symbol- the diploma- with reality- having the skills. So, Steve's anecdote is about getting hired by someone smart enough to test him to find the reality.
I have similar situation as Steve. I was studying physics, working for a nationally recognized lab under a guy who should have gotten a nobel, when I got a job as a software developer and realized that was what I really wanted to do with my life.
I used to put down that I studied physics, but eventually, I just dropped it. My resume now is one page, with a summary at top of my skills and a list of the places I've worked taking up the rest.
I find that this is a really good filter. If someone won't hire you because you didn't go to college, you know that this is someone you don't want to work for. They are expressing a prejudice-- assuming you lack a skill based on their own assumptions, because they probably needed college to teach them. Many times people rationalize this by saying "college shows commitment". Well, keeping a job for 4 years shows commitment. Outside projects that are a lot harder than college was shows commitment.
The real reason I didn't finish college is that it didn't make mathematical sense. It costs a lot, delays your career and doesn't deliver sufficient value to cover these costs. I think that situation has gotten a lot worse.[1]
So, the right thing to do is look at the education section skeptically. Did they work their way thru college? Why did they go? Did they think they were getting more value than the cost?
I hear companies won't hire people without degrees. I see "BS requires, Master preferred" a lot. I never let that stop me from sending my resume, and back when I was willing to work for others (rather than myself) I tended to get interviews, and 4/5 of those interviews would result in an offer or another step in interviewing (for companies that had a multi-step process.) I learned quickly to send all my resumes out on one single day, and have interviews scheduled close to each other, lest I get offers from some companies before I'd had a chance to interview at others.
None of these companies cared whether I had a degree. (And the ones who did, probably never called me in for an interview, but there's no way to tell which jobs have already been filled vs. which ones were at companies with that prejudice.)
But I consider that a blessing-- this filters out companies that confuse the symbol (eg: the diploma) for the reality (eg: having the skills.)[2]
I've met a lot of "smart" people who think they are so smart that they don't realize how much smarter other people can be. This limits their world view. It even interferes with their ability to comprehend or think logically. They let prejudices and ideology get in the way of perceiving reality.[3]
The last thing you want to do is work for a boss who believes his fantasy over reality.
And filtering out the ones who think you're not qualified because you don't have a diploma is a useful tool for that.
Epilog:
I express strong feelings here. I am unabashedly opinionated, but I think it is critical in hiring to hire people who think differently than you. I think its critical to give the benefit of the doubt, allow a wide variation and then focus on what's really important- the relevant ability, their capabilities. I think "cultural fit" is often used to exclude good candidates for unfair reasons. I think I'd hire someone I disagreed with all the time if they were qualified (but haven't put this to the test yet- only having hired someone who disagrees with me most of the time.)
[1] I am very willing to hire people with degrees. Even though college is often a waste of time and money, and could show bad judgement, they can also show other things-- like the need to spend a couple years finding yourself outside the overwhelming influence of your parents, or the need to figure out what it is you really want to do with your life, etc. Some do it out of a commitment to their parents because it means so much to their parents, and I respect that. I don't think that someone turning 18 magically means they've figured everything out.
[2] I have found, however, that hackers (eg: people who taught themselves when they were young) right out of highschool are about as equally prepared for employment life as (most) people with CS degrees right out of college. Either way its going to take a couple years before they're really productive. Hackers shouldn't go to college.
I am assuming that hackers are generally auto-didects and not the kind of people who need to be trained, while college is for people who need to be trained, the kind of people who can't just pick up a new language over the weekend, or can't just read a college textbook to get the stuff they hadn't learned otherwise.
[3] In fact, I think that the fact that so many of these people who focus on degrees are people who went to college because they needed to be Trained, means that they are people who generally simply don't understand that some people self train. They don't see the advantage of the auto-didact who will learn things that seem ancillary (eg: economics) or irrelevant to someone who has been trained.
I think the training in college teaches a narrow way of thinking, or maybe it just doesn't expand the mind, while the autodidacts will expand their own minds.
Companies would be much better off hiring autodidacts and making sure at least one is in the interview loop, to ensure that the trained people don't exclude someone based on their own narrow thinking.
"Oh, your company has written your product in Haskell? That's nice. No I've never written any Haskell in my life, but I learned Lisp when I was 14 and write a long of Erlang, and pick up languages easily. I'll have no problem picking up Haskell."
I think this above conversation sounds like nonsense to a trained person, because a trained person doesn't "just pick up" a language.
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.
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.
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.
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 ;-)
My philosophy on hiring has always been to hire the smartest people who are still capable of working and communicating well with others. Over the years I have found that I need to focus more on different areas during the hiring process depending on the presence of a degree.
Those with degrees I need to ferret out if they actually like to program or if they just are in it "for the job." I tend to find that those that have come to programming via another route are more likely to actually enjoy it.
Those without degrees I need to spend more time ferreting out the "plays well with others" skills. I tend to find that those without a college degree tend to have less experience attempting to solve tough intellectual problems as a member of a group -- this is usually alleviated by more professional experience. One other quirk that seems to come up more often[1] is the "Smartest Person in the Room" syndrome, the constant need to prove one's superior intelligence. If you get more than one of these people on your team it tends to turn every discussion or meeting into an unproductive fireworks display of one-upmanship.
My perfect hire is the self-learner who loves to program, has a mastery of the fundamentals of computer science, can effectively communicate complex topics, and has enough confidence in their abilities to stow the ego.
Then again I'm also looking for some beach front property here in Colorado...
[1] - I also see this quite a bit with people who are _really_ proud of where they went to school. This is then usually combined with them somehow working the name of their alma mater into the conversation at least a dozen times during an hour interview.
I don't think your comment is totally on point. I've kind of seen both sides, and I think you're understating the value of formal education. I taught myself programming as a teenager, worked at a tech startup through college (getting a degree in a non-CS engineering field), worked as a software engineer after college, then headed off to law school.
There is no substitute for the skills you'll develop early in your career hacking code at a startup. At the same time, after years of working as a programmer, I feel unbalanced. I've had a lot of success at my previous jobs, but ran into challenging problems where I wished I had a few more formal analytical techniques in my toolbox. I can "just pick up" a new programming language, but I haven't been able to "just pick up" type theory.
After three years of education in law, I've come to appreciate what formal education brings to the table: an appreciation for the big picture principles of a field that are hard to grasp when you're neck deep in code working at a startup. Any auto-didact could be a lawyer. With practice, doing similar things repeatedly, they could be a very efficient one. But even a mundane corporate bankruptcy can bring up a novel point of law, and its when you encounter something totally unfamiliar that a formal education really proves useful. I think someone who can draw on the broad principles of the field is at a huge advantage when dealing with a complex novel problem than someone who has just seen the pretty specific areas that they've hacked on.
Now, if I could choose between an auto-didact with no degree and someone with a great degree and no ability to self-teach, I'd choose the former, most of the time. But if I were doing a startup that involved designing the next TCP/IP, I'd probably pick the PhD without any programming skills to speak of.
EDIT: I'm not comfortable with the accuracy of what I wrote. I'm leaving it for the use of the term "lying culture", which I think is real and is a useful summary term.
Negotiating such circumstances continues to be a struggle, for me. To the extent my opinion has any value, though, I would recommend being on the lookout for becoming part of or involved with a "lying culture" and getting out of such circumstances as soon as possible.
As I stated, in my case I compensated. For me, that seemed to end up being a self-destructive approach.
Several bad personal circumstances perhaps kept me more "trapped" than I might otherwise have been -- if it was not just personal weakness. Regardless, from that perspective, my recommendation is to walk away. The sooner you do so, the less it's going to cost you. And you won't be further empowering those who are shoveling the shit.
--
I started a longer comment, but I'm going to reduce it to the phrase I used within it: A lying culture.
A lying culture is corrosive, and it is particularly damaging to those who don't lie and aren't interested in the priorities such a culture tends to emphasize. (Personal power, control, and exploitation.)
I've managed to negotiate some such cultures, in good part by finding and connecting with the decent sub-population within them. Sometimes that included winning the trust of somewhat disengaged employees over to my cause.
However, negotiating such a culture for a time does not equate with long term success. I think, in retrospect, it is better to get out. Personal connections can mask, but not counteract, the larger influences.
It is also worth keeping a keen ear tuned to if and when your work culture starts turning into a lying culture.
Those "stay the course", "engagement", et al. memos can be one canary, and if you're paying attention, you'll observe some of the brightest employees -- where their personal investments and risks aren't too high -- jumping ship soon after the scent of such a change begins wafting around.
It is, I think, not just about personal opportunity. It's about a low or zero tolerance for bullshit.
College can also open your eyes to a vast array of scholarly disciplines and help you become a well-rounded, cultured, and thoughtful person. It doesn't always work, and it's not the only way to reach this end, but it's not a bad option.
You can only do so much in a limited span of time. Each person has to optimize for what they hold important.
Not going to college was the best thing that ever happened to my career. I got to spend my "college years" optimizing for business, which put me miles ahead of my peers who went to school. I now earn significantly more and get to work on more interesting projects (by my metric, at least) than my friends who even have PhDs in the field.
But that came with a cost. I missed out on a lot of non-career qualities by not having the college experience. I don't feel either direction is wrong, you just have to choose which is more important to you.
Really smart hackers should go to college, if they want to, but it is hard to find a college that won't be boring for them. There are a few out there, usually small. Don't study computers, it's a waste of time, you already know them. Study something else, like Art or History or Philosophy. Keep hacking on the side (because you can't help it, you're a hacker).
I agree on not studying computers. Happily, despite the odd name, Computer Science isn't actually about computers. Or a science. Even if you "know computers" chances are you don't know computer science. And if you do there's always abstract mathematics :).
Also, I think the advice to go to a small college is exactly backwards. If you're really smart and can teach yourself, go to a large research university. Compared to little colleges, these universities focus quite a bit more on novel research and less on teaching students. The professors are chosen on their aptitude in the field, not as teachers. So you get to work on ground-breaking stuff with brilliant people, but have less instructional support. This is a great compromise if you are something of an autodidact.
After all, the classes are not the most important thing you should get out of a university education. It's working with other extremely smart people, doing novel and nontrivial research and being able to pursue very specialized and advanced topics of interest. And the classes that are the most important--the most advanced ones, naturally--are the sort that aren't offered at little colleges anyhow. For example, I'm going to take a class on program synthesis next semester; I don't think I'd have that same option at a small college, and it's certainly a very exciting topic!
Besides, an engineering, mathematics or CS program at a good research university is more than challenging enough for anyone. This sort of education is a great complement to the average hacker--it ensures you have breadth even in topics you don't like (CPU design may be icky, but I had to learn the basics all the same :P), gives you depth in the subjects you do like and supplies a very helpful sort of systematic organization. It really helps draw connections between otherwise disparate areas of study and gives you a good base to pursue more advanced interests.
I agree completely. The truth is that there are simply techniques that have been finely crafted over decades that you are simply unlikely to discover from your own hacking. There are algorithms that are subtle and the product of pure academic research. For example, a self-taught hacker probably wouldn't even know that there are methods to build a self-balancing binary tree. This is because, in the course of your own hacking projects, you may never encounter datasets that are large enough and ill-conditioned enough for it to matter whether you used a self-balancing node insert algorithm or the standard algorithm that any clever highschool student could roll up. How many self-taught guys can code quickly and even bug-free, yet don't know that there are better algorithms for sorting than bubble-sort? These are the type of things that someone with a formal education would be aware of, even if they couldn't code the algorithms themselves or very well.
I used to think that just being a good hacker was all it took to be a good developer but the fact is that you don't know what you don't know. There are things that you are forced to learn in academic courses that you may not have chosen on your own but which end up being valuable in unpredictable ways.
This comment shouldn't be in the gray. We, as hackers, shouldn't place as much importance as we do in our college diplomas. Very few of use are computer scientists. Very few of us learned as much in 4 years as you did at your first startup (or even hacking on the side, for that matter)
It's one thing to say that we shouldn't place so much importance in diplomas in the context of hiring. It's quite another thing to claim that "really smart hackers" will be bored if they take Computer Science at MIT, Stanford, Berkeley, Oxford, etc.
I actually sort of followed this advice. When I started college, I was working towards a CS degree. I already knew as much programming as I wanted to learn and quickly got bored with it. Some friends recommended I switch majors to something I didn't know and actually still had an interest in learning. So I switched to networking. Now I'm employed in information security and I keep my coding only on projects I want to work on.
It's actually sound advice (and like all advice, you should think it through fully), if you know something already why pay $80k to get a piece of paper to prove it? Many people are employed in jobs they know but didn't major in.
And that's cool, but it isn't a necessity if you are being employed to do a particular job.
(Because of the glut of liberal arts BAs, there aren't a ton of jobs for "well-rounded, cultured, and thoughtful" - though those might be little bonuses)
I'm going to give some personal experience about why I only hire people with degrees, which I realize is not data. If anyone can think of a way to actually evaluate this at a statistical level, I'd be very interested.
I've worked with a large number of people both with and without college degrees, in the US and abroad. And I've found that it's not the degree that counts -- it's the liberal education (I mean that in the sense of a well-rounded education, and many college graduates are not receiving that, particularly at colleges/universities where they're groomed for a role in software engineering). People with a broad background aren't just more inclined to problem-solve, they're better at it -- they come up with more innovative and subtle solutions, they're better able to manage their own time, etc. Time and time again I see issues being kicked around until they land at someone with a "well-rounded" background, who actually is willing to examine and solve the problem rather than looking at it from a single perspective.
I don't doubt that one can arrive at this state of mind without attending college, or that some who attend college fail to get there. But I want smart people who are able and willing to problem-solve, and in my experience college graduates have a serious edge.
Also keep in mind there are fields besides CS/CE in which teaching yourself is all but impossible because the materials with which to do so are not cheaply available to anyone the way computers are (I'm thinking specifically about biosciences, chemistry, etc.).
I also happen to believe there are myriad benefits to a (good) college education besides vocational preparedness, but I'll spare you that spiel.
You're still making the mistake of equating Computer Science as a college major with software engineering as a profession. The two are not entirely distinct, but very different. Their overlap is not large, and mostly consists of "coding".
Filtering for autodidact programmers will certainly find you people who've more strongly focused on programming, possibly on software engineering, than on computing science.
However, when you need someone to tell you how to build a filesystem that's redundant to the Nth degree or when to use a decision tree construction algorithm instead of a naive Bayesian filter for data classification.... you'll need a computer scientist, and you'll damn well call for someone with a degree.
"I have found, however, that hackers (eg: people who taught themselves when they were young) right out of highschool are about as equally prepared for employment life as (most) people with CS degrees right out of college"
I doubt you meant it this way but that's pretty damning - in my experience people with CS degrees (or any degree) right out of college are horribly ill equipped for most things.
The problem with college is while it teaches some really great stuff, it gives people an over inflated sense of what they know and what they're ready for.
In that sense they're often the opposite of many high school graduates who might be a little too unsure of themselves because they're too worried about not having a degree.
I suspect it's an accurate statement. Employment life comes with many requirements many of which aren't taught at schools and aren't always easy to pick up when self-schooling either.
I don't think "ill-equipped" is the right word. You probably have the right "equipment", just none of the experience or secondary skills needed. Neither hacker nor college graduate. One might have more programming experience and the other might have more formal scientific training, but that's just not what is being talked about there.
It's difficult to start if you don't have a formal paper or don't want to lie about it... if you have proven yourself somewhere already, it's not a problem anymore.
I had very slow start because I didn't want (or know how) to lie about my education, I'm doing great now don't care about it anymore.
Admittedly a ton of people cheat. But as someone who doesn't cheat, if I find out that you did, I'm going to lobby to not have to have you as a co-worker.
I have no idea how many people there are out there like me. Hopefully enough to discourage you from cheating. (Probably not, but I'd like to believe that it is not just a quixotic gesture on my part.)