• (cs) in reply to DavidNcl
    DavidNcl:
    I use the MS certifications as a filter. If you've got one your most likely a complete and utter tool. No, I'm not kidding.

    Agreed

  • (cs) in reply to KattMan
    KattMan:
    My statement about the degree was in answer to the question, "How is it possible someone like this can get a job?" Yes just saying you have a degree can get you in the door...

    For good reason. Especially for entry level candidates, as thats generally the only experience they could have had. But the relevance of the degree fades over time, and a candidate with "15 years of experience" is almost certainly not going to be hired because of their degree.

    As for the degree itself. Note I said I don't want to hear about your degree from 10 years back. If you have one, fine, if you don't but you have been successful in this field for 10 years, you don't need it. If you have been successful in this field for that long I don't care if you have a degree or not. You either learned what you needed to on the way, or forgot those things you never used. Either way, those candidates are on a level playing field. Now send me a fresh candidate with just a few years in the field and I will pick the one with a degree if everything else is equal.

    And there is how people like the candidate in the story got their jobs. Its assumed that just because they were able to hold a job of one form or another for 15 years (and most likely 99% percent of the time they were doing something other than coding if they don't even know the basic syntax of the language) they can do whatever you give them. But there is the problem. Holding a job is not the same as being successful (as this site constantly demonstrates, with this story being a classic example). It is perfectly possible to hold a job and still be horrible at it. Especially when you consider the range of job responsibilities (everything from software testing to editing xml documents to tech support) that people tend to classify as "software engineering", you have no idea what type of experience they have.

    See a degree in computer science does not usually teach students much of the vocational skills the syntax of various languages (and if this guy got his degree 15 years ago, there is no way he studied Java at all back then), but it does teach them the theoretical underpinnings of CS. They may not be ready to write up a complete multi-tiered business application right after school (which isn't surprising; how many professions expect newly graduated students to be able to perform as well as experienced professionals?), but they are typically able to adapt and learn new technologies without simply copying code out of their "Programming Language X for Dummies" book.

    The guy in this story clearly couldn't do that. Thus I'm guessing he has little if any formal education, and instead just used his "experience" in some technical but non-programming job or while working for a closely related family member as his crutch to get him his job. He was able to BS his way through a few interviews by embellishing his past work experience got him a job he was in no way qualified for.

  • MCP (unregistered) in reply to Salami

    The real WTF is giving credit to these certification tests. Or believing Microsoft is the best reference ever, especially for Java.

    Code geniuses don't need a college degree or a lousy certification.

  • BFG (unregistered) in reply to vlad
    vlad:
    captcha opto:
    (man, it sure is fun when the <id_kfa> tag goes into the id_dqd database column and vice versa, but that's a whole other WTF)

    Well, there's your problem, you're using the <id_kfa> tag without the [id_spispopd] qualifier.

    Either way, you're doomed

  • (cs) in reply to nwbrown
    nwbrown:
    See a degree in computer science does not usually teach students much of the vocational skills the syntax of various languages (and if this guy got his degree 15 years ago, there is no way he studied Java at all back then), but it does teach them the theoretical underpinnings of CS.

    I think we agree on all but one point, and we might even agree there. I believe that, after 5-10 years (there is no magic number) you have the theory regardless of a degree. It does depend on who you worked under, the type of work you performed, etc. I do not believe that a degree is the only way to learn this.

  • (cs) in reply to KattMan
    KattMan:
    nwbrown:
    See a degree in computer science does not usually teach students much of the vocational skills the syntax of various languages (and if this guy got his degree 15 years ago, there is no way he studied Java at all back then), but it does teach them the theoretical underpinnings of CS.

    I think we agree on all but one point, and we might even agree there. I believe that, after 5-10 years (there is no magic number) you have the theory regardless of a degree. It does depend on who you worked under, the type of work you performed, etc. I do not believe that a degree is the only way to learn this.

    I think this particular story (along with many of the other stories that make it on this site) refutes that. Obviously experience can get you that theory, if it is the right experience and you make the effort (after all, that is how the theory was developed in the first place). But a lot of people pass off jobs that have nothing to do with programming as experience, and even those that do perform programming jobs often seem to be more concerned about getting the job done with as little effort as possible (meaning they are just copying from somewhere else half the time) than developing and understanding of what they are doing.

    So if you are basing your hiring decision solely on experience, how do you determine which candidates do have that understanding of CS fundamentals and theory and who just copied and pasted crap every chance they had? Asking the previous manager won't help as half the time the previous manager was ignorant of whether or not they were doing a good job (and they are not always available). The best way I see is to figure out what formal education the candidate has. I certainly wouldn't rule out hiring someone without that formal education, but I would certainly be much more careful.

  • (cs) in reply to nwbrown
    nwbrown:
    KattMan:
    nwbrown:
    See a degree in computer science does not usually teach students much of the vocational skills the syntax of various languages (and if this guy got his degree 15 years ago, there is no way he studied Java at all back then), but it does teach them the theoretical underpinnings of CS.

    I think we agree on all but one point, and we might even agree there. I believe that, after 5-10 years (there is no magic number) you have the theory regardless of a degree. It does depend on who you worked under, the type of work you performed, etc. I do not believe that a degree is the only way to learn this.

    I think this particular story (along with many of the other stories that make it on this site) refutes that. Obviously experience can get you that theory, if it is the right experience and you make the effort (after all, that is how the theory was developed in the first place). But a lot of people pass off jobs that have nothing to do with programming as experience, and even those that do perform programming jobs often seem to be more concerned about getting the job done with as little effort as possible (meaning they are just copying from somewhere else half the time) than developing and understanding of what they are doing.

    So if you are basing your hiring decision solely on experience, how do you determine which candidates do have that understanding of CS fundamentals and theory and who just copied and pasted crap every chance they had? Asking the previous manager won't help as half the time the previous manager was ignorant of whether or not they were doing a good job (and they are not always available). The best way I see is to figure out what formal education the candidate has. I certainly wouldn't rule out hiring someone without that formal education, but I would certainly be much more careful.

    Experience is the only factor you can use, along side that, test their skills on an actual problem during the interview. Let their experience talk about the things they have worked on, then let them demonstrate their practical application of that knowledge. Just because they have a degree from 10 years ago does not mean they retained any of that information. Many of these WTF's very well could have been created by people with a degree. We do not have the information on how many had one and how many did not. So no, this site does not attest to the fact that without a degree you do not have the fundamental theory. It only states that many in this field, while seemingly intelligent, make some of the stupidest mistakes.

    If you aren't as careful with someone because they have a degree, you are making a bad assumption. I say ignore the degree, give them a practical test and see how they stand up today.

  • (cs) in reply to nwbrown
    nwbrown:
    KattMan:
    nwbrown:
    See a degree in computer science does not usually teach students much of the vocational skills the syntax of various languages (and if this guy got his degree 15 years ago, there is no way he studied Java at all back then), but it does teach them the theoretical underpinnings of CS.

    I think we agree on all but one point, and we might even agree there. I believe that, after 5-10 years (there is no magic number) you have the theory regardless of a degree. It does depend on who you worked under, the type of work you performed, etc. I do not believe that a degree is the only way to learn this.

    I think this particular story (along with many of the other stories that make it on this site) refutes that.
    Of course it doesn't. It simply tells a story of one person who was unqualified for his job.
    nwbrown:
    Obviously experience can get you that theory, if it is the right experience and you make the effort (after all, that is how the theory was developed in the first place). But a lot of people pass off jobs that have nothing to do with programming as experience, and even those that do perform programming jobs often seem to be more concerned about getting the job done with as little effort as possible (meaning they are just copying from somewhere else half the time) than developing and understanding of what they are doing.
    Any developer worth his pay will copy from somewhere else whenever possible. Getting the job done is what he's paid to do, and if code is available that handles a task his application must perform, certainly he should copy that code and adapt it rather than rewriting it from scratch.
    nwbrown:
    So if you are basing your hiring decision solely on experience, how do you determine which candidates do have that understanding of CS fundamentals and theory and who just copied and pasted crap every chance they had? Asking the previous manager won't help as half the time the previous manager was ignorant of whether or not they were doing a good job (and they are not always available). The best way I see is to figure out what formal education the candidate has. I certainly wouldn't rule out hiring someone without that formal education, but I would certainly be much more careful.
    Haven't you ever thought of letting the applicant demonstrate his skills with a test? I have interviewed many people for IT positions, and I've seen highly skilled developers with no college training, applicants with masters degrees who couldn't write a simple SQL select query, and everything in between. Pretty much everyone can go to an interview and talk the talk. It's when you give them actual problems to solve that you separate the developers from the bullshitters.

  • (cs) in reply to nwbrown
    nwbrown:
    I certainly wouldn't rule out hiring someone without that formal education, but I would certainly be much more careful.

    One more statement about this specifically. This idea is what started this whole conversation. Why is it that people like the ones in the article get jobs? My answer, because they have a degree. If you are not as careful with these people you will get idiots like the ones in the story.

    Do not let someones piece of paper make you think you don't have to do your job. There is no telling if they are the ones that actually did the work. Yeah they could have crammed for that exam and passed and promptly forgot the material. This is why I say ignore the degree, test every candidate fully and pick the one that shows the best qualifications in a practical setting. If that one has a degree or not, who cares.

    For the hiring manager the degree only does one thing, plausible deniability when the candidate shows they lack the necessary skills. Hey, he had a degree he should have known this stuff! No, you should have tested his application of that knowledge.

  • J (unregistered)

    I'm on my second programming job and still have not had to write a line of code in an interview. Which is kinda crazy.

    I'm not sure why the companies don't have you write at least something. Even in pseudo code to show you at least grasp the concepts. Perhaps just having this guy write a for loop would have shown that he had no practical use.

    I'm not sure how answering:

    What is ajax? What is the advantage of using sprocs?

    shows your level of programming competency.

    Also, having a college degree doesn't mean you can't apply your knowledge to "the real world." The degree helps you start out, but that's why after a few years experience you don't highlight your degree anymore, you highlight the experience.

    then again, people who go on to receive Ph.D's in computer science, would probably have a hard time writing real world production apps because they don't teach you about source control, builds, etc... in college.

  • (cs) in reply to KattMan
    KattMan:
    Experience is the only factor you can use, along side that, test their skills on an actual problem during the interview. Let their experience talk about the things they have worked on, then let them demonstrate their practical application of that knowledge.

    Aside from the obvious hole in that looking just at experience cannot get you a newly graduated candidate (every good engineer has to come from somewhere)... As stated before, there is no way to gauge experience. You can ask him to describe his old projects, but that tells you nothing about how well he did while working for them. You might be able to ask the previous manager, but its hard to know if you are getting an informed and/or honest evaluation from them. And while having them demonstrate skills in the interview can be helpful, you are usually limited in how much you can test them on.

    KattMan:
    Just because they have a degree from 10 years ago does not mean they retained any of that information.
    I never said only base your decision on whether or not they have a degree. But a degree does tell you that at some point in this guy's life he (or she) took the time to learn those fundamentals that are necessary to doing a satisfactory job (as opposed to someone who graduated with a degree in French literature and then read a Learn Java in 24 hours book in order to get a job). You certainly still have to determine whether or not they still possess those skills, along with any other skills needed in this particular job. But if they never got that degree in the first place, you have to establish whether or not they ever got those skills in the first place.
    KattMan:
    Many of these WTF's very well could have been created by people with a degree. We do not have the information on how many had one and how many did not. So no, this site does not attest to the fact that without a degree you do not have the fundamental theory. It only states that many in this field, while seemingly intelligent, make some of the stupidest mistakes.
    Agreed. So why do you continue to insist that this guy must have been hired because of his degree, especially when the only information we are given highlights his great experience (which, in the eyes of most hiring managers, would mean they wouldn't care about his degree)?
    KattMan:
    Do not let someones piece of paper make you think you don't have to do your job. There is no telling if they are the ones that actually did the work. Yeah they could have crammed for that exam and passed and promptly forgot the material. This is why I say ignore the degree, test every candidate fully and pick the one that shows the best qualifications in a practical setting. If that one has a degree or not, who cares.
    Again, I am not arguing you should base your hiring decision just on whether or not he has a degree, or on any single factor. Ironically, that is what you are arguing ("Experience is the only factor you can use").
  • (cs) in reply to nwbrown
    nwbrown:
    Agreed. So why do you continue to insist that this guy must have been hired because of his degree, especially when the only information we are given highlights his great experience (which, in the eyes of most hiring managers, would mean they wouldn't care about his degree)?

    I don't insist. This just proves that text is a very challenging forum. My insistence is that many times the hiring company simply sees degree and makes an assumption. Without a degree they either don't want to talk to a candidate or test them more completely. This is a failure on their part. Test all candidates equally, degree or not. Far to many times I have seen people hired then fail and people claim "but he had a degree". So what, could he apply his knowledge? If he can, what does it matter if he has a degree. You can assume that someone with a degree will have more knowledge if you want, but I will ask you to prove it. After so many years in this field I think the separation between those with a degree and those without become non-existent.

    nwbrown:
    Again, I am not arguing you should base your hiring decision just on whether or not he has a degree, or on any single factor. Ironically, that is what you are arguing ("Experience is the only factor you can use").

    But experience is the only real thing you can use. Then test that experience with a practical exam. The degree does not come into play here. If you are looking for a junior, see if they have what it takes to fulfill that role. I will agree, in the case of a junior, those with degrees will most likely score higher on the practical test. Note I won't hire because they have a degree, I hire because they have shown what they know for their level of experience. If someone without a degree scores higher on a practical exam, they get the job.

  • (cs) in reply to KattMan
    nwbrown:
    Agreed. So why do you continue to insist that this guy must have been hired because of his degree, especially when the only information we are given highlights his great experience (which, in the eyes of most hiring managers, would mean they wouldn't care about his degree)?

    I think I still missed my point.

    I was answering this as a general answer to a general question. How do guys like this get jobs? The usual answer is because they have a degree. Hiring entities see that and think, oh he must know it because he has a degree. This is a common fallacy, The guy could be book smart. He could know all the terms, but have no idea how to apply any of the theory. This takes experience.

    So this was a general answer to a general question, not a specific answer to this specific case.

  • (cs) in reply to FredSaw
    FredSaw:
    Of course it doesn't. It simply tells a story of one person who was unqualified for his job.
    Actually, that is sufficient to refute his claim. One single counter example (and trust me, this is far from the only one) refutes a universal proposition. If you state "All birds can fly" and I show you a bird that cannot fly, your statement is false. And if you state "10 or more years of experience gives you the skills needed to be a good programmer" and I show you a guy with over 10 years of experience and yet still lacks many of those skills, your statement is also false.
    FredSaw:
    Any developer worth his pay will copy from somewhere else whenever possible. Getting the job done is what he's paid to do, and if code is available that handles a task his application must perform, certainly he should copy that code and adapt it rather than rewriting it from scratch.
    No, that is what crappy developers do. Good developers will first evaluate whether or not the existing code is sufficient for the job, and then only use it if it meets their requirements. They will not use something that only does something similar to what they need just to avoid having to write more code.
    FredSaw:
    Haven't you ever thought of letting the applicant demonstrate his skills with a test?
    As mentioned ad nauseum, tests are very limited in what they can demonstrate.
    FredSaw:
    I have interviewed many people for IT positions, and I've seen highly skilled developers with no college training, applicants with masters degrees who couldn't write a simple SQL select query, and everything in between.
    First, SQL is a specific technology. There are plenty of IT professionals out there who don't use SQL on a daily basis (or even at all, the last time I had to write an SQL query by hand was nearly 5 years ago, so I would suspect I may very well screw up your test), so testing them on that doesn't really give you a good measure of whether or not they are competent. It tests them on a particular skill which can be learned (or forgotten) pretty quickly. If what you really want is a competent engineer, you would test them on the things that cannot be learned as quickly (or at all).

    Second, your examples don't prove a thing because unlike the other guy, I was not making a universal proposition. I never said that all applicants with degrees are qualified, and I never claimed it should be the only thing you look at.

    Note that this whole logical reasoning thing is one of those skills that is difficult to learn quickly, so its one of those things that you should test for.

  • (cs) in reply to J
    J:
    Also, having a college degree doesn't mean you can't apply your knowledge to "the real world." The degree helps you start out, but that's why after a few years experience you don't highlight your degree anymore, you highlight the experience.
    I don't understand your point. Are you saying an experienced engineer is better prepared for real world projects than someone straight out of college? In that case, I'm changing your name in all following conversations from "J" to "Captain Obvious".

    Of course you are not going to be as ready for real world projects right out of college as you would if you had a few years of experience under your belt. What kind of retard would think otherwise? It really is ridiculous that people in this industry seem to think that college should prepare you for the real world. In virtually every other field recent graduates are almost always considered to be at a much lower level than their more senior counterparts. Look at in medicine, they spend twice the time in school as we typically do, and yet after graduating they still have to complete a residency before they can be even considered full out doctors.

    Captain Obvious:
    then again, people who go on to receive Ph.D's in computer science, would probably have a hard time writing real world production apps because they don't teach you about source control, builds, etc... in college.
    I don't know what university you went to, but most PhD programs do require candidates to write large scale projects, usually involving teams of developers. So they generally would be experienced in things like source control or builds.
  • (cs) in reply to nwbrown
    nwbrown:
    Look at in medicine, they spend twice the time in school as we typically do, and yet after graduating they still have to complete a residency before they can be even considered full out doctors.

    You know here may be one of our solutions. Set up apprenticeships or something like that. Software engineering is a trade, and most other trades use an apprentice program to get people in. People can enter this program with or without prior training (read degree) but those without will probably spend more time at this level.

    After that, certify them, once certified, they are all on the same level playing field.

    Addendum (2007-12-28 13:25): Actually if we do that, we become far to expensive and are more likely to be outsourced. This would be a no win situation. Remember companies are always looking for the bottom line and getting something 100% right for 150% of cost isn't worth it when you can get 80% right for 100% of the cost.

  • (cs) in reply to KattMan
    KattMan:
    But experience is the only real thing you can use. Then test that experience with a practical exam. The degree does not come into play here. If you are looking for a junior, see if they have what it takes to fulfill that role. I will agree, in the case of a junior, those with degrees will most likely score higher on the practical test. Note I won't hire because they have a degree, I hire because they have shown what they know for their level of experience. If someone without a degree scores higher on a practical exam, they get the job.
    Again, you are falsely assuming you can accurately determine their experience. You can't. Plain and simple. The candidate tells you he worked on a particular project using a particular technology. How do you know what kind of job they did? Was he able to use his skills to accomplish the job? Or did he just lean on his coworkers to get everything done? Yes, testing can help, but only to a limited degree. Its not going to give you a definitive answer either. In fact, I doubt there is any way to get a definitive answer as to how well the candidate will perform.

    Now as to what role education plays, no I would not rule out a candidate simply because they never got that degree, nor would I give the job to someone just because they had a degree. But I would spend more time verifying that the candidate without the degree picked up that information at some point, to make sure they did not simply skim through a "Teach Yourself..." book and think that taught them everything they need to know. Sure, you would want to test the candidate with the degree on that stuff as well, but you would want to be extra careful with the candidate without the degree to rule out that all too common scenario. We unfortunately work in a field in which it is too easy to pass of a superficial skill set as the real thing, as this site constantly shows.

    KattMan:
    I think I still missed my point.

    I was answering this as a general answer to a general question. How do guys like this get jobs? The usual answer is because they have a degree. Hiring entities see that and think, oh he must know it because he has a degree. This is a common fallacy, The guy could be book smart. He could know all the terms, but have no idea how to apply any of the theory. This takes experience.

    So this was a general answer to a general question, not a specific answer to this specific case.

    Yes, that is one particular mistake that is often made, but it really has nothing to do with this case. Again, it is for once made pretty clear that this isn't a case of someone being hired despite not having any experience just because of their education. We know here that he was considered an experienced candidate. So someone hired because of their education wouldn't be anything like this guy.

  • sas (unregistered) in reply to dtech
    dtech:
    The real WTF is this:
    he whizzed right through their technical interviews
    How could he pass all of the interviews while it's obvious he wouldn't even be able to write Hello World? How is that possible...
    I think he meant the candidate urinated all through the interview. Doesn't explain why they hired him, much.
  • sas (unregistered) in reply to Mr. Mom
    Mr. Mom:
    Why didn't you just tell the complainers that they should stop viewing the world through the lens of their genitalia...
    Man, now I want a genitalia lens.
  • (cs) in reply to nwbrown
    nwbrown:
    FredSaw:
    Of course it doesn't. It simply tells a story of one person who was unqualified for his job.
    Actually, that is sufficient to refute his claim. One single counter example (and trust me, this is far from the only one) refutes a universal proposition. If you state "All birds can fly" and I show you a bird that cannot fly, your statement is false. And if you state "10 or more years of experience gives you the skills needed to be a good programmer" and I show you a guy with over 10 years of experience and yet still lacks many of those skills, your statement is also false.
    Only, that is not what he said.
    nwbrown:
    FredSaw:
    Any developer worth his pay will copy from somewhere else whenever possible. Getting the job done is what he's paid to do, and if code is available that handles a task his application must perform, certainly he should copy that code and adapt it rather than rewriting it from scratch.
    No, that is what crappy developers do. Good developers will first evaluate whether or not the existing code is sufficient for the job, and then only use it if it meets their requirements. They will not use something that only does something similar to what they need just to avoid having to write more code.
    That's what I said: code that "handles a task his application must perform". Since it's so obvious, I didn't realize it would be necessary to explicitly state that the developer knows the code is useful to him because he evaluated it.
    nwbrown:
    FredSaw:
    Haven't you ever thought of letting the applicant demonstrate his skills with a test?
    As mentioned ad nauseum, tests are very limited in what they can demonstrate.
    LOL - so don't test, just count on the degree. Yeah, that makes sense.
    nwbrown:
    FredSaw:
    I have interviewed many people for IT positions, and I've seen highly skilled developers with no college training, applicants with masters degrees who couldn't write a simple SQL select query, and everything in between.
    First, SQL is a specific technology. There are plenty of IT professionals out there who don't use SQL on a daily basis (or even at all, the last time I had to write an SQL query by hand was nearly 5 years ago, so I would suspect I may very well screw up your test), so testing them on that doesn't really give you a good measure of whether or not they are competent. It tests them on a particular skill which can be learned (or forgotten) pretty quickly. If what you really want is a competent engineer, you would test them on the things that cannot be learned as quickly (or at all).
    If what I really want is someone who can write SQL, then the candidates will know that from the job description, and they'd darn well better expect to be tested on it.
    nwbrown:
    Second, your examples don't prove a thing because unlike the other guy, I was not making a universal proposition. I never said that all applicants with degrees are qualified, and I never claimed it should be the only thing you look at.
    What the other guy said was, "I believe that, after 5-10 years (there is no magic number) you have the theory regardless of a degree. It does depend on who you worked under, the type of work you performed, etc. I do not believe that a degree is the only way to learn this." How are you getting a "universal proposition" out of that?
    nwbrown:
    Note that this whole logical reasoning thing is one of those skills that is difficult to learn quickly...
    Yes, I see that.
  • Obi Wan (unregistered) in reply to djhayman
    djhayman:
    Ummm... There's the WTF. What SQL engine is this for?

    Try this:

    SELECT [Column1] FROM [table1] WHERE [Column2] = N'value';

    for MSSQL, or this:

    SELECT Column1 FROM table1 WHERE Column2 = 'value';

    for MySQL/others.

    You could be really lazy and not put [] or `` around your column names and table names, but where on earth would you use "=="?

    I can think of only one place: On your WinXP station, open a cmd prompt, and type: if /?

    Note how string comparisons are written. :)

  • (cs) in reply to FredSaw
    FredSaw:
    Only, that is not what he said.
    Yes it is. I believe that, after 5-10 years (there is no magic number) you have the theory regardless of a degree.
    FredSaw:
    That's what I said: code that "handles a task his application must perform". Since it's so obvious, I didn't realize it would be necessary to explicitly state that the developer knows the code is useful to him because he evaluated it.
    If you think it is obvious, you clearly don't what you are talking about. You said that good developers reuse other code whenever possible. That is clearly not the case. It is almost always possible to force some existing code to do your job, though not always wise.
    FredSaw:
    LOL - so don't test, just count on the degree. Yeah, that makes sense.
    Thats not at all what I said. Reading comprehension is another one of those skills that is hard to learn quickly. What I said is that testing is not some magic bullet that can be used on its own to weed out unqualified candidates. Not that it shouldn't be used at all. In fact if you were to improve those reading comprehension skills I am saying that a good hiring manager would consider many factors, including (among other things) their education, experience, and how well they answer your questions and your tests.
    FredSaw:
    If what I really want is someone who can write SQL, then the candidates will know that from the job description, and they'd darn well better expect to be tested on it.
    First, assuming you work on your reading comprehension skills, you should be able to pick that up from simply reading their resume. Second, learning SQL is not exactly rocket science. It is pretty easy to learn assuming you know the fundamentals of computer science, so if they don't know it before they start, it won't be difficult for them to pick up. So its not unusual for some to apply for a job knowing that they will have to supplement their skills for it. In fact, in my experience most hiring managers expect that their hire will need to learn a bit more. See my previous remark to "J"/"Captain Obvious".
    FredSaw:
    What the other guy said was, "I believe that, after 5-10 years (there is no magic number) you have the theory regardless of a degree. It does depend on who you worked under, the type of work you performed, etc. I do not believe that a degree is the only way to learn this." How are you getting a "universal proposition" out of that?
    From the sentence before the part you put in bold. Yes he left some uncertainty on the length of time, but if he wanted to state that this wasn't a universal statement he left out a qualifier such as "usually".
  • (cs) in reply to nwbrown
    nwbrown:
    First, assuming you work on your reading comprehension skills, blah blah blah.
    There's a delicious irony, which sadly will be lost on you, in you lecturing me on reading comprehension when you are incapable of understanding what KattMan says or I say. However, that lack coupled with your lack of awareness of it and your outsized ego has grown tedious. So, go on and imagine that you have said something logical here. I give; you win. [image]
  • (cs) in reply to FredSaw

    Could someone please pass the popcorn?

  • (cs) in reply to FredSaw
    FredSaw:
    There's a delicious irony, which sadly will be lost on you, in you lecturing me on reading comprehension when you are incapable of understanding what KattMan says or I say.
    If you are claiming you were misunderstood, then you need to add working on your writing skills to your list (wow, that thing is getting longer by the minute, I hope you have the time to complete it). I responded to exactly what you said; unfortunately I lack psychic powers to read your mind and find out what you wanted to say but were unable to write.

    And I believe KattMan and I have more or less come to common ground, so you seem to be the odd man out at the moment.

    BTW, nice comic, it does seem to capture your debating method very well.

  • (cs) in reply to nwbrown
    nwbrown:
    I responded to exactly what you said; unfortunately I lack psychic powers to read your mind and find out what you wanted to say but were unable to write.
    Yes, you have demonstrated beyond all doubt that you are painfully lacking when it comes to intuiting what was not said. I'm sure it's a difficult world you live in, in which everything must be explicitly stated before you become aware of it. No wonder you've become so offensively defensive.

    It's okay; you're among friends here. Go ahead and rant. It's okay. Rage against the dying of the light (or in your case, the absence of light).

  • (cs) in reply to nwbrown
    nwbrown:
    t-bone:
    It shows you haven't taken any... </snip>

    Sounds like a rough equivalent of the SATs to me. You certainly don't have to be at the top of your class in mathematics or vocabulary in order to get a good score, you just have to study the right stuff.

    Standardized testing can never accurately measure how much you know about any subject. But that doesn't mean they are useless. They are good for giving a ballpark measurement. The fact that you did well on the exam certainly doesn't mean you are an expert, but does indicate that you are not completely ignorant of the subject, like the guy in this story. If he didn't know what an abstract class was or what the correct syntax of the try catch block are, there is no way he could have passed the SCJP exam.

    And I believe the SCJD exam (a step up from the SCJP exam) requires more than simply filling out a multiple choice test, you do have to demonstrate the ability to develop an application.

    I'm happier with this than with the pointy-headed lager louts that infest this site, wailing that "a degree in Computer Science is worthless! You have to do it in Real Life!"

    On the other hand, do you trust a grade given by the sort of feeb who spends his life monitoring student sample applications in Java/C#/VB.Net/C++/drone drone drone ...?

    Nah. Let 'em get a degree. The rest is just wallpaper.

    (And in all honesty, an SAT is pretty much just up-market wallpaper to prove that you don't have to flip the burgers -- you're best qualified to count 'em in and count 'em out.)

  • mudkipz (unregistered) in reply to KattMan
    KattMan:
    nwbrown:
    See a degree in computer science does not usually teach students much of the vocational skills the syntax of various languages (and if this guy got his degree 15 years ago, there is no way he studied Java at all back then), but it does teach them the theoretical underpinnings of CS.

    I think we agree on all but one point, and we might even agree there. I believe that, after 5-10 years (there is no magic number) you have the theory regardless of a degree. It does depend on who you worked under, the type of work you performed, etc. I do not believe that a degree is the only way to learn this.

    I strongly disagree. Even 100 years of CRUD or GUI development won't give you the theoretical background needed to move on to more interesting fields, like computer vision or algorithmic data mining. This is especially true since these fields rely on techniques traditionally not strictly associated with computer science or software development, such as lattice theory and statistics in the case of algorithmic data mining.

    (Did you know? Your database engine computes the Dedekind-MacNeille completion of the lattice of sets defined implicitly by your tables on the fly?)

    You will, however, have hopefully collected thorough knowledge of best practices in your specialty. If you're satisfied with your specialty, that is obviously good enough, and if that's what you meant, I agree.

    On the other hand, I have a relatively short attention span. And I like hard problems.

  • (cs)
    KattMan:
    Easy... He's got a college degree. All theory and no practical knowledge. Easy to pass an interview, impossible to actually write something in the real world.

    <Adopts Lady Bracknell voice>Impossible?</Relinquishes Lady Bracknell voice>

    Look, (Katt)Man, I love you and all, but this is a bit of a stretch. Apart from anything else, I've got one, and believe me, it is not easy to pass an interview. Although that may have something to do with bodily odour. (I'm very attractive to civets.)

    FredSaw:
    I've used source control for most of my IT career. At my previous job (1996 - 2000), we used Visual SourceSafe with a database installed on a secondary drive on our individual workstations. Here, we use VSS with a dedicated server (and nightly backup) but have recently begun the switch to Team Foundation Server. During that time I've experienced hard drive failures three times. A backup is something you never need, until you need it. And then you're very glad you have it.
    Look, (Saw)Man, I hear where you're coming from. But wait a minute!

    Visual Source Safe? Team Foundation Server?

    Yer prayin' ter the Wrong Gods, mate. Let us know when you've discovered a proper source control system that actually works.

    On the whole, I'm with NWBrown here. Not that this will do him any favours at all.

    On the other hand, the lens/genitalia thing explains a lot to me. This is obviously why gorgeous women can see me coming...

  • Resa (unregistered) in reply to dtech
    dtech:
    The real WTF is this:
    he whizzed right through their technical interviews
    How could he pass all of the interviews while it's obvious he wouldn't even be able to write Hello World? How is that possible...

    I've worked with people like this. They are really good at memorizing stuff.

    This is why you should always have programmers write a little program for you to demonstrate their skills.

    Knowing the names of all of the design patterns doesn't mean that you know how to apply them.

  • Kuba (unregistered) in reply to J
    J:
    I'm on my second programming job and still have not had to write a line of code in an interview. Which is kinda crazy.

    I've interviewed my share of applicant's who wouldn't know how to sort an array of integers. Only recently I've had a guy who wrote it down in pseudocode-basic in something like 45 seconds. Everyone else before him was struggling to some extent, and some people would use various excuses. Heck, supposedly "accomplished" posters on this very forum would argue with me that asking to show the skills you're expected to use in an interview setting is too much to ask.

    I agree: sorry for you, moron, but if you can't sort a fixed-size array of integers, in the language/platform of your choosing, being free to ask any question (short of doing the job for you), there's no room for you in a programmer position, clear and simple.

    J:
    I'm not sure why the companies don't have you write at least something. Even in pseudo code to show you at least grasp the concepts. Perhaps just having this guy write a for loop would have shown that he had no practical use.

    Duh, as they say. That some people would argue otherwise is beyond comprehension.

    J:
    Also, having a college degree doesn't mean you can't apply your knowledge to "the real world." The degree helps you start out, but that's why after a few years experience you don't highlight your degree anymore, you highlight the experience.

    then again, people who go on to receive Ph.D's in computer science, would probably have a hard time writing real world production apps because they don't teach you about source control, builds, etc... in college.

    And they pretty damn well should. I would have buried myself multiple times over if I hadn't had all of my homework-related code under source control. When you try to finish something due at 8AM and it's 4AM and things go downhill, it's reassuring that your editor's Undo buffer isn't the only thing shielding you from a disaster.

    In my case it was a mix of Maxima, Octave, Lisp and C++ code, with some gnuplot sprinkled in - everything would run from a makefile and generate typeset-ready LaTeX tables or EPS plots (or graphs, as in graph theory) that were included in the LyX document. I type my homework, which has also saved untold hours, especially if you realize that the last page or two you wrote is complete BS and you have to redo the problem. Usually there are salvageable pieces, and I'm not that much into paper copy-n'-pasting at 4AM :)

    Not to mention that the profs usually appreciate something that can be graded without having to second-guess the text.

    It's unfortunate that "generic" curriculum, at least in the grad school, doesn't include mandatory training in at least the basic open-source toolset (say Ocaml and C++, Maxima, Octave, LyX, make, svn). This stuff is useful in almost every science out there, and comes all ready to use on any decent Linux distro.

    Cheers!

  • (cs) in reply to real_aardvark
    real_aardvark:
    Look, (Saw)Man, I hear where you're coming from. But wait a minute!

    Visual Source Safe? Team Foundation Server?

    Yer prayin' ter the Wrong Gods, mate. Let us know when you've discovered a proper source control system that actually works.

    I've experienced a bit of grief from VSS. Haven't been working with TFS long enough to have any go wrong (yet... we'll see). But it's a Microsoft shop, and Microsoft is what we have, OS and tools.

    So what are you using?

  • lrucker (unregistered)
    How could he pass all of the interviews while it's obvious he wouldn't even be able to write Hello World? How is that possible...

    The person who got the other Mac Java job in 1996 did so because of all the people interviewing him, all but one of them were long-time Sun programmers whose idea of a GUI was "thing that lets you have multiple terminals open" - and the remaining person's Mac experience consisted of being my office mate for 4 years. While that wasn't enough for him to tell an average Mac programmer from an expert, that was definitely enough for him to spot a fake. Unfortunately for me (the real Mac programmer, hired a week after this idiot), nobody listened to him.

    Six months later, when he finally left, nobody could find any code he'd written.

  • SB (unregistered) in reply to nwbrown
    nwbrown:
    I don't know what university you went to, but most PhD programs do require candidates to write large scale projects, usually involving teams of developers. So they generally would be experienced in things like source control or builds.

    PhD Cambridge, and never used source control (I have since then).

    I would go so far as to say generally no source control or large teams are involved.

    However that is a UK perspective where PhD's are soley research. The point being a PhD furthers scientific theory and not worry about engineering/implentation.

    Which is, I think, different to the US of A.

Leave a comment on “Classic WTF: The Abstract Candidate”

Log In or post as a guest

Replying to comment #:

« Return to Article