Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Dispelling the Myth in The Outside World

by dsb (Chaplain)
on Apr 26, 2002 at 21:01 UTC ( #162398=perlmeditation: print w/ replies, xml ) Need Help??

Last week, trs80 posted a very thought provoking node called Autodidact. In it, many monks of high reputation(and even some of not so high reputation ;0) presented opinions that did one of two things:
  1. Try to dispell the negative image of self-taught programmers.
  2. Try to promote certain advantages of the "autodidact"(self-taught person) over those with a formal eduction.
Being one of those coders that did not come from the rank and file of Academia, I was very encouraged seeing this sort of opinion coming from a community I hold in as high esteem as I hold PerlMonks.

Right now though, I am looking for work. Thankfully I'm not out of work, but I do feel trapped in my current job, and would love an opportunity to be able to grow as a programmer, and Perl developer. Unfortunately, the attitude towards autodicacts which pervades this community, does not seem to hold true in the "real world". I would have to say that about "80%" of the job descriptions I see, require a B.S. degree in Computer Science. The other 20% want someone with 7-10 years of industry experience.

I understand that this could have a lot to do with the job market being as tight as it currently is. I understand that now it is the companies that can afford to be picky with the talent they hire. BUT, I don't understand why these companies would want to completely disconnect from the pretty large number of programmers who have gotten where they are through motivation and hard work(read: this is not to say compsci grads did not work hard).

I can only guess that the most of the people creating jobs, or doing the hiring are out of touch with the fact that there are many competent, even highly talented, and DEFINITELY intelligent programmers out there who are just as capable as Joe College.

This is an extremely frustrating situation to me. I am always reading, learning, practicing, taking on projects just to get better. I love to learn, I welcome a challenge, and I am almost always successful in my efforts to complete a task. And yet, I feel like I'm on a pay-no-mind list because the letters "B.S." don't follow my name.

Please understand, this is not meant to be a jab at college graduates. I humbly apologize if it is coming across that way. I would take the word of most people on this site over my own any day with regards to programming. My issue is this:
I know self-taught programmers can be capable. Perlmonks seems to know that self-taught programmers can be capable. What can I do to help make that clear to those in the industry that don't feel the same way?

Maybe its me. Maybe I'm crazy. Maybe I give myself too much credit. I dont' know. If I'm whining tell me to shut up. And don't be nice about it.

Sorry to rant.




Amel

Comment on Dispelling the Myth in The Outside World
Re: Dispelling the Myth in The Outside World
by Rex(Wrecks) (Curate) on Apr 26, 2002 at 23:04 UTC
    First: APPLY ANYWAY!!

    I am on my third position that "required" a BS, and I don't have one, and I don't have the experience required for "equivalency". There is no real secret to doing this, but there are a couple pointers:

  • Networking: (not in the computer sense) Who you know is often a wonderful way for Autodidacts to find good jobs that will let them grow. People who know you, or know of you, will often know that you are as good/better that another applicant that has a BS.
  • Resume: Beef up your resume with actual examples of what you can do. URL's if CGI is your forte, listing technologies with examples of how, and what you have done with them is a great strategy for resume building.
  • Links to existing code that you think is your better work, I have interviewed and hired/rejected over 150 people so far, and many of the first (pre-interview) conceptions are based on: - do the URL's he/she listed work?, if so is the content worth my time as an interviewer, do the skills on the resume fit what I need in a employee in that position? Much of this is the same if the intervewer has a BS or not, as many of my fellow iterviewers have BS and they look for the same thing.
  • The key thing to do is use both networking and the resume to try to bypass the HR layer, the HR layer is a nightmare as they filter anyone who does not match the requirements. This can be hard to do, but use friends and contacts to get e-mail addresses of hiring managers or even get friends, or friends of friends to recomend you. (this should not be hard as many firms offer bonuses for successful recruitment)

    It can be tough, but keep trying and keep your chin up, your ship will sail!

    "Nothing is sure but death and taxes" I say combine the two and its death to all taxes!
Re: Dispelling the Myth in The Outside World
by perrin (Chancellor) on Apr 27, 2002 at 01:51 UTC
    My degree is in theater and writing. It says so right on my resume, but no employer has ever even mentioned this fact in an interview, except to say "cool!" If you have a good resume, can show examples of your work, and demonstrate understanding of the relevant programming concepts, no one will care about what you did in college. I've found that publishing articles and speaking at conferences also lends a lot of credibility to my resume, and those are both pretty easy to do in the Perl community.
      Wow, you too! I have a degree in Theater as well. I never got a degree in Comp Sci and it has never hurt me in the least. I just didn't want all the math. I would have had to take: Calc I, II, III, and IV, Numerical Analysis, Discreet Structures, Differential Equations, Probability and Statistics and one or two more. The comp sci curriculum was 50% math courses. In 14 years of professional coding I have never needed any math other than Algebra and a little Geometry.
      The danger of the self-taught coder is a lack of the foundations. This I find to be particularly true with the programmers who back-doored into coding through web work.
      Not knowing the fundamentals (data structures, algorithms, logic, compiler theory) eliminates a lot of tools from your toolbox. I went through the trials of C and Assembler and parsers and lexers and such. I know the costs and performance tradeoffs of lists vs hashes vs trees.
      I recently taught perl to a bunch of programmers, most of whom had either java or asp/jsp web backgrounds. None of them even knew what a linked-list was. Or a regular expression.
      If there is a point to my babbling, it's this. There are both advantages and disadvantages to the self-taught programmer. Remove the disadvantages. Learn 13 or 14 different languages (i'd recommend postscript, lisp, icon, prolog and c to be exposed to a lot of different types of languages). Learn how a compiler works. Learn lex for lexical analysis. Learn yacc for parsing. Learn how a shell works under the hood (that will teach you a lot). Learn the four types of programming. (See Why I like functional programming for more details). Learn graphical toolkits and databases and cgi and networking and anything else you can.
      Give yourself a huge toolbox. Make yourself marketable. Make the answer too every question, "I can do that."


      -pete
      "Pain heals. Chicks dig scars. Glory lasts forever."
        I never got a degree in Comp Sci and it has never hurt me in the least. I just didn't want all the math. I would have had to take: Calc I, II, III, and IV, Numerical Analysis, Discreet Structures, Differential Equations, Probability and Statistics and one or two more.

        Perhaps, to an employer attempting to weed their way through several hundred resumes see the fact that an individual did put forth the effort to work through these classes as a plus?

        I have worked with many self-taught programmers, and many of them have been good; But there are also too many who are just that, "programmers". They can sling a bit of code to solve a problem -- the one problem they are looking at. Often, due to lack of formal background in algorithm analysis and software development technique, they end up being just "code monkeys" and you can not rely on them to help you create a system which requires an understanding of "Software Engineering" and "Coding in the Large".

        Of course there are also B.S. C.S. individuals who managed to get through school and are worthless as well -- but the presence of the little piece of paper can be a filter if there are just too many resumes.

Re: Dispelling the Myth in The Outside World
by seattlejohn (Deacon) on Apr 27, 2002 at 07:02 UTC
    I don't understand why these companies would want to completely disconnect from the pretty large number of programmers who have gotten where they are through motivation and hard work

    One reason is what you might call signal-to-noise ratio. Sure, there are talented techies out there who don't have degrees. But put yourself in the shoes of a hiring manager for a minute. You post a job that says "BSCS required" and get, say, 250 resumes. Maybe 25 of those people will actually have the combination of skills, experience, intelligence, motiviation, teamwork, and so on that would make them a successful hire onto your project. (Obviously I'm just making up these numbers for the sake of illustration, but bear with me.) Your job is to figure out which person or people should get offers.

    Now you post a job opening that says "no experience or degree required". You get 5,000 resumes. Undoubtedly some of those folks that don't have the degree or the experience would make great additions to your team. But it's going to take a lot more work to find them.

    Also remember that many companies use HR departments to do initial screening. There are HR people who have enough technical knowledge to understand specific technical requirements you might have for your hires, but that probably isn't the norm in most environments.

    So the degree requirement basically sets a filter that presumably improves the proportion of applicants that are potential hires. It doesn't mean that any particular individual with a degree is a better candidate than any particular individual without one, but it probably means the overall quality of the applicant pool will be higher and you'll spend less time and money on your search.

    Another thing that requiring a degree -- any degree, CS or otherwise, from a reputable institution -- does is to ensure that applicants have a certain baseline skill set. That includes things like reasonable writing and communication skills, which can be nearly as important in some environments as actual technology acumen. The degree presumably also indicates an applicant possesses a certain amount of motivation and endurance. Again, that's not to say any of these qualities are absent in someone who doesn't have a degree.

    Anyway, this isn't meant to be discouraging -- as other posters have pointed out, the absence of those two letters on your resume needn't be a career death sentence. I just wanted to see if I could provide some perspective into what probably seems like an arbitrary and frustrating hiring criterion.

    By the way, if you do good work then I'd suggest using networking (i.e., personal contacts) as much as possible to get in touch with people who might be hiring. As a hiring manager, a recommendation by someone you know and trust who can vouch for the quality of a candidate's work will be worth a lot more than almost anything that could appear on a resume.

      Along these same lines, the real issue for many hiring managers is plausible defensibility should something go wrong. Let's say you turn out to the be that employee who leaves the company on bad terms 6 months from now and sabotages something on your way out; even "just not working out" is bad enough. There are large costs associated with hiring and firing someone, so if a person doesn't "work out" the manager who hired them has to have some ability to defend themself against the natural questions that come up if you don't "even" have a degree. You may have the skills needed for the job, and may perform brilliantly in your element, but if your manager gets grilled for hiring you for some reason, s/he doesn't want the additional question of "Why did you hire someone for this position who didn't *even* have a degree!" (Not that it's a valid, even-handed criticism, but then neither are many managers who do the grilling..) Nate

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://162398]
Approved by rob_au
Front-paged by abstracts
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (4)
As of 2014-09-21 15:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (172 votes), past polls