Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: "Tired of FUD" Followup: Where the Jobs Are

by sundialsvc4 (Abbot)
on Feb 11, 2008 at 22:36 UTC ( [id://667467]=note: print w/replies, xml ) Need Help??


in reply to "Tired of FUD" Followup: Where the Jobs Are

Only in the computer-programming industry would you find job listings that emphasize tools rather than skills... including “soft skills.”

You don't see listings for:   “experienced mechanic wanted ... must have 3 years' recent experience with wrenches.”

To a programmer, a language is a tool about as basic and generally-uninteresting (in and of itself) as a wrench. New tools come on the scene, go in-vogue and then out again, all the time. (I don't know what language will be invented later this year, that will be the “you gotta have this or you are 0xDEAD.0xBEEF” trend-setter of the year following, but I assure you that there will be one.) The reality is that you are always going to find yourself adapting to “a new tool,” just as you at one time or another “adapted to” Perl.

Today, there are literally billions of lines of COBOL out there doing heavy-lifting in all kinds of industries. Twenty years hence, there might be a commensurate number of lines of Perl out there, along with COBOL, similarly doing the heavy-lifting. What kind of languages and methods we'll be using at that time (hah! to pay for my retirement! code harder, yew dawgs!) is anybody's guess.

Programming-language names are actually a lousy keyword to use in an online job-search, for just that reason. Skip the headhunters ... whom you know will be filtering keywords without having any idea what those keywords mean ... go straight to the hiring principals and sell your ability to solve problems. If someone who actually has the authority to hire you asks, “do you have X-years experience in blah?” look him or her straight in the eye and say, “no, but if you hire me, I'll be an expert by my first day on the job.” (And if you're good, it won't be a lie:   you will be.)

Replies are listed 'Best First'.
Re^2: "Tired of FUD" Followup: Where the Jobs Are
by aufflick (Deacon) on Feb 12, 2008 at 04:10 UTC
    Ah, but mechanic ads do come in a number of flavours, not dissimilar to programming:

    Mechanic adProgramming ad
    must have certificate and 3 years experience repairing motorsmust have programming qualification and 3 years practical programming experience
    must have 5 years experience repairing Mercedes and/or BMW motors must have 5 years experience with Perl and/or Python
    must be licensed to repair jet aircraft engines and have 10 years experience with top-tier airlinemust have 10 years experience parallel programming cray supercomputers in Fortran

    Sometimes you want someone with good general skills, sometimes you want specific skills. Anyone remember when seceratary jobs used to specify "WordPerfect skills" or "Microsoft Word skills" - doesn't get much more specific than that!

    Note that I'm not saying this is or isn't the right way to recruit, just that it's not unique to our industry.

      Four word job req quoted to me by a recruiter in 1991: "rocket nozzle ceramics engineer."

        I once typeset the résumé of a man who was the co-inventor of the supersonic slit nozzle. 4 pages of 7 point physics and engineering footnotes/citations later full of words and names in no dictionary or spellchecker I knew it was a job I would never forget.

Re^2: "Tired of FUD" Followup: Where the Jobs Are
by chromatic (Archbishop) on Feb 12, 2008 at 01:06 UTC
    If someone who actually has the authority to hire you asks, “do you have X-years experience in blah?” look him or her straight in the eye and say, “no, but if you hire me, I'll be an expert by my first day on the job.” (And if you're good, it won't be a lie: you will be.)

    "Blah" in this context must be a member of the set of programming languages that doesn't include Haskell, OCaml, Erlang, Prolog, Forth, or Self -- languages that are very different from Java or C++. Fortunately, most programming jobs use languages that resemble Java with the serial numbers filed off.

    Update: Rephrased.

      I'm not quite following that - are you saying Haskell, OCaml are "Java with the serial numbers filed off?" Or that the ability to be an expert by the time you start applies only to the Java-esque languages but not to the languages you named?

        The latter. If I were hiring for a Haskell position, I wouldn't hire anyone who didn't know Haskell but claimed that he or she would be an expert by the start date -- unless the start date were a year in the future.

Re^2: "Tired of FUD" Followup: Where the Jobs Are
by hardburn (Abbot) on Feb 12, 2008 at 07:10 UTC

    Languages worth learning are the ones that aren't "just another tool". They challenge you to think in completely different ways.

    A beginning programmer sees every language as different. An intermediate programmer sees that every language does basically the same thing, and can pick up a new language in a day or so. An advanced programmer comes right back around; they see that languages can be so fundamentally different that you can't really learn them in a day.

    Personally, I don't touch flavor-of-the-month technologies. I keep my eye on them, wait a few years, then see what good ideas ended up coming out. I'd probably get paid more if I chased trends, but I also don't have to work with people who chase trends.


    "There is no shame in being self-taught, only in not trying to learn in the first place." -- Atrus, Myst: The Book of D'ni.

      In all of my experience, which is a long time indeed, this rule remains unchanged. Your mileage may vary. (Put me into whatever category you please. I don't mind...)

      Some languages are fundamentally different in their approach; Prolog is an obvious example. But the vast majority of languages in common use today do implement exactly the same solution to a problem and exactly the same methodology for solving it ... with only superficial variations. Obviously this statement is intended to use a h-u-g-e broad brush, because those “superficial variations” are quite numerous. Taking a garden-variety Perl program and implementing the same algorithm in PHP or Ruby would not be extraordinarily difficult. (Not pleasant, I grant you, but not difficult.) It's going to turn out to be a comparable, procedural, program. Likewise, “implementing a substantial project,” say an ordinary web-site, is once again going to be a comparable task... after the usual learning-curve nonsense is over-and-out.

      Lurking beneath all of these languages, and the brief challenge of becoming sufficiently-conversant in any or all of them, is ... the experience of knowing what to do with them and how.

      You can spend years “working,” and never find that you are “working well.” You can find that you are not really growing. You can spend years in a company where no one around you really knows how to manage a project, so you might come away thinking that 60 or 70 hour weeks are quite-the-norm. You can do this, getting paid but getting nowhere, and throughout all this (and perhaps in spite of it) you are easily able to “ace a technical interview!”

      When I'm interviewing, I want to hear you talk. Not about this-or-that language... I want to hear you think.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://667467]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (6)
As of 2024-03-28 12:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found