Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Shortage ? Or Efficient Markets ?

by renodino (Curate)
on Jun 26, 2006 at 00:25 UTC ( #557496=perlmeditation: print w/replies, xml ) Need Help??

A recent journal entry at has piqued my curiousity. The author claims, apparently as a result of conversations with some LA perlmongers, that there's a "drought of decent Perl programmers" and that "wages are sky high".

So I checked some job boards. There are certainly lots of postings requesting Perl skills...but those that list any compensation numbers tend to be pretty low, esp. for

  • the metro areas where they're located
  • the other skill requirements for the job
  • when compared to Java/C#/C++/etc.

The author's comment also seems contrary to my own experience. I've posted several modules on CPAN, some written up in books, some directly related to specific companies' products/services. I've been active in a few maillists. Yet, in some 6-7 years of Perl involvement, I've never only once (just remembered one) received an unsolicited inquiry for a position related to Perl. While that may reflect on the quality of my CPAN offerings1, that lack of contact seems inconsistent with the author's conjecture, esp. given that I frequently receive "cold calls" related to my other areas of expertise. While I'm not endorsing the notion of headhunters spamming the Perl community, that profession isn't exactly known for respecting such common courtesies.

So I'm curious about other monks' experiences in that regard. Do you get a lot of cold calls for Perl positions ? Has compensation really risen that much ? Or, as I believe, and job boards seem to indicate, is Perl still treated as a "menial" skill requiring only minimal compensation ? Might there be a "reality gap" between those bemoaning a perceived decline of Perl (despite the job posting numbers) and those unable to find "decent" Perl developers (but offering relatively low compensation as evidenced in those job postings) ?

My hunch is that accidental efficient markets are at work.

Most organizations hire HR consultants to find talent. Many such consultants are woefully ignorant of the skills they're tasked to acquire. So compensation recommendations are set by calling a few buddies, trolling about the 'net for similar positions, and the infamous "salary surveys". Hiring managers are then told that Perl skills are cheap, and positions get posted with minimal (sometimes subsistence) compensation limits. Even if the hiring manager knows that the recommended compensation is unrealistic, there is likely little they can do about it, since their management will place more faith in the HR consultant's fabricated numbers than the hiring manager's real-world knowledge.

In contrast, most "decent" Perl developers are probably also "decent" Java/C++/C#/etc. developers... and the going rates for those skillsets are considerably higher than Perl (despite the productivity gap). So, given a choice between a Perl job, and a Java job paying 30-50% more, the candidate will usually take the Java job. Eventually, they don't even bother looking for Perl jobs...

A little advice to any hiring managers listening in: next time you're looking to hire good Perl talent, tell HR you want a "Perl-enabled Java developer". Hopefully, you'll get a compensation number that will attract the candidates that are claimed to be in such short supply.

1. There are certainly some I'd like to clean up if I had time!


It appears my tone may have been perceived as a rant rather than a research question. My intent has more to do with trying understand an apparent market anomoly:

  • high demand - as evidenced by job postings, plus the anecdotal claims of the subject journal, and occassional postings here
  • continuing low compensation - as evidenced in those same job postings
  • claims of "sky high" compensation (but wo/ giving specific numbers)
  • claims of Perl's decline (mostly anecdotal, but persistent)
  • apparent lack of aggresive recruiting
Those facts seem incongruous in a supply/demand market.

FWIW: I usually scan the job boards every 2-3 months, just to keep abreast of the state of the market. Over the past 2-3 years, I've seen a steady increase in Perl search "hits"2, but the posted compensation rates seem stagnant. All of which is very confusing; I don't know whether to be overjoyed that Perl is in such high demand, or depressed that compensation seems stuck at "dot bomb" levels. Why aren't there more Perl postings with the "sky high" wages claimed by the journal author ? Since recruiter's pay is often tied to a candidate's starting compensation, shouldn't there be more aggressive recruitment for those high paying jobs ?

2. Another curious phenomenon is an apparent plateauing of Python/Ruby/PHP numbers in the past several months

Replies are listed 'Best First'.
Re: Shortage ? Or Efficient Markets ?
by liverpole (Monsignor) on Jun 26, 2006 at 01:58 UTC
    You ask some good questions.

    I think one of the biggest problems with getting good Perl programmers certainly has to be the perception of Perl in the marketplace, as has been mentioned before.  I also tend to find that a lot of recruiters are uninformed (at least the ones that contact me!).  For example, I got this description from a recruiter who called me "out of the blue" on Friday (and unaware that I had been happily working at a job for the past year where I can use Perl for almost everything I do):

    MINIMUM EXPERIENCE: 5+ years software development experience with PERL Scripting, Java development and SQL Databases (ideally Oracle). J2EE +a strong plus. EDUCATION: BS / MS degree in Computer Science.

    (It then goes on to give the usual buzzwords about creative thinker, fully understanding the clients' business objectives, applying appropriate solutions, problem solver with high attention to detail, ability to work collaboratively with all members of the organization, etc., etc.  Just once I want to see a requirement for a problem solver with a medium attention to detail, or someone who can understand a high percentage of the clients' business objectives!)

    Now, this is a recruiter who knows full well that I'm not a Java programmer.  Yet, not only is Java the second requirement, but the first is PERL, and what's worse, it's PERL scripting, which sounds about as far away from programming as you can get.  (One manager I had actually referred to Perl as "CGI", but then he was the one who suggested that the web-based bug-tracking system that I wrote in Perl would have been easier to do with "sed".)  I think it's also very telling that they want someone who's got an MS in computer science, but 5+ years is plenty of experience.  Who really has much experience after 5 years?

    And then, when I thought there wasn't any good company that respected good Perl programmers, I discovered the job I have now, and found it a "breath of fresh air".  It may have to do partly with the fact that our product is based on open source technology.  Or perhaps it's because fine Perl programmers are highly valued.  But whatever the reasons, there are clearly places where good programmers are respected, even if they don't program in Java, C#, and so forth.

Re: Shortage ? Or Efficient Markets ?
by TedPride (Priest) on Jun 26, 2006 at 04:31 UTC
    I think it's largely the fault of Perl itself. If programmer team A takes six months to write something in C/C++, and programmer team B takes a week to write the same something in Perl, which team is employed for six months? Which team puts out more lines of code? I said it before and was scoffed at, but there just aren't good jobs available for programmers who only know Perl. You always have to know at least one other programming language, usually two or three, and have a degree and 3+ years of programming experience.

    Bottom line though, supply and demand determine salary. If salaries are too low, then the number of applicants will drop below the number of jobs, and salaries will have to rise in order to fill job slots. Low salaries for Perl programmers can't all be blamed on faulty perceptions - you have to take into account the people accepting jobs at those prices.

Re: Shortage ? Or Efficient Markets ?
by Herkum (Parson) on Jun 26, 2006 at 13:16 UTC

    Let me address the cold call issue first. I did find my current position via cold call, but the only reason I have it is because I actually know perl and was located physically closer than any other candidate as well. That being said that this was the exception rather than the rule.

    I am going to disagree with you that this is efficient markets at work, as to why Perl is not widely used. A major problem that Perl has (not as a language) is that it is not marketed very well. Let me describe what is happening with my current position.

    They are replacing me and the other Perl programmer that is working here with a Java development structure. The person in charge knew nothing of Perl, just knew that Java is a fairly well known language and that you could always find a programmer if you needed one. They did not look around and evaluate what was current in the organization or how well their current projects performed they just picked Java.

    Step One: Write one-off projects in Java

    When they needed a new application written, they hired a Java programmer to complete the project. they did not have a development process, so each project that was developed in Java was written in different styles, with different tools and when the programmer left, had noone to fix or update it.

    Step Two: Commit to a development process

    They hire a contractor (a very good knowledgable person I have worked with before) to develop the process for developing Java applications using project management tools, a repository, development streams, etc... (and a whole bunch of other stuff that I don't know about). As a high-end contractor he is being paid a kings ransom, and they are paying another king's ransom for all the tools that he is recommending.

    Step Three: Need to increase pay to compete in the market

    It has come about that they don't offer a competitive pay scale to attract experienced or good programmers. However their new pay scale still is not high enough to competitive.

    Step Four: Convert everything and everyone to Java (where we are now).

    They are in the process of preparing to hire or retrain about 50~ programmers to work with Java. I don't know what is going to happen, and I will be let go before I find out. I would suprised if it went well. I predict they will end up with programmers that don't have the skills or lack motivation to compete for better paying jobs. They will rewrite all their current stuff that was working in Perl to Java and that could take years.

    They will end up spending probably, several million dollars to tear up their current infrastructure so that in a few years they will be back to where they are now. This is all about marketing, not economics or efficiency.

    Update: Compensation

    When it comes to pay for perl programmers, I think that the mark is generally lower because the market is smaller and therefore less known as to what fair rate. If you tie this in with how regional some positions can be, the rates can be in a wide range (but ultimately lower pay range than other languages like Java or c# or .NET.

    To give an example, If you are Damian Conway, you have a history of computer skills and someone hiring says "we need the best of the best, no matter the cost", it would be easy for Damian to demand a high salary (I could picture in this type of situation $250,000+).

    Most of us don't even come close to those skills or potential job situations (just ask Damian how many 250,000 job offers he has had). A more typical situation would be a Snr, Exp or Jr programmer. Here, a Perl programmer can be compared with, lets say a Java Programmer in the same tiers. However, when there is a move in the market for Java programmers that does not necessarially spill over to a Perl programmer.

    Take a look at this sample table, ( just made this up )

    Java Snr Programmer$ 75,000$ 100,000
    Java Exp Programmer$ 55,000$ 65,000
    Java Jr Programmer$ 35,000$ 45,000
    Perl Snr Programmer$ 75,000$ 80,000 ?
    Perl Exp Programmer$ 55,000$ 60,000 ?
    Perl Jr Programmer$ 35,000$ 40,000 ?

    If a recruiter looks at something like this, they can see on the open market what the rate for a Java programmer was before and what it is currently so they have a good idea what to offer.

    A Perl programmer is not such a well known quantity; you started offering the same pay as a Java programmer( in 2000 ), but it is harder for a company to match pay increases between Perl and Java because the positions are not common and are harder to evaluate ( this has nothing to do with productivity ). This is why pay goes up at a slower rate for Perl ( which is why you probably see low-ball rates for some of these positions ).

Re: Shortage ? Or Efficient Markets ?
by ptum (Priest) on Jun 26, 2006 at 14:14 UTC

    While I agree that someone who only has Perl experience is unlikely to get a lot of headhunter calls, there are plenty of jobs out there which feature Perl in the top three skill requirements. As a 'primarily Perl' developer with a posted resume on several job sites, I receive contacts from recruiters at least once a month for jobs (admittedly, most of them are contract positions) on the West Coast of the US. They do come in fits and starts ... I'll go a while without any contact and then suddenly three recruiters will call me within an hour of each other, often for the same job requisition.

    Some recruiters are woefully inept at researching the meaning of the skill sets to which they recruit. Just last week I received an e-mail for a position which had less than a 5% correspondence to my posted resume ... it was pretty pathetic. Many recruiters use poorly developed spam tools ... now there's a job for a good Perl developer -- developing some decent resume- and requisition-scanning tools. :)

    As an aside, one of the good deeds I try to do as often as I can is to educate recruiters. Whenever I get a cold-call or an e-mail contact, I am always careful to answer in a polite and cheerful manner. If I am not qualified for the job, I try to communicate that without being too patronizing, and I will often explain to the recruiter what I think they should be looking for. If I am qualified for the position, but am happy where I am (as I am now), I candidly identify the compensation that would be necessary to lure me away (usually well outside their expectation). I hope that this has the happy result of causing them to make a better offer to the person who ends up taking the job.

    There are really not very many Perl developers out there in the world. Yeah, there are a good number of script-kiddies and quite a few folks who could, at a pinch, slap together a Perl script to sort through a data file, but from what I can see, there are only perhaps three or four thousand top-quality and experienced Perl programmers in the marketplace -- the kind you would want working with you. It seems to me that there is a window of opportunity right now as companies seem to be hiring Perl developers and market forces seem to be driving up wages, at least in my neck of the woods. This would be a good time to have your resume updated. :)

    Update: With respect to compensation numbers, maybe I'm hitting the wrong job boards, but I rarely see a job posting with any kind of specific salary or hourly rate. In my experience (especially with contract gigs) compensation is largely dependent on: (a) how desperate the headhunter is to make a placement, and (b) how strong of a good impression you made during the interview process. If the recruiter is eager to get a foot in the door, you may be able to grab the lion's share of the rate. In a recent six-month (correction:) W-2 1099 contract, I was able to garner almost 94% of the billing rate (although I'm told this is somewhat unusual). If there is no one else who comes close to you in the interview process, then you can generally hold out for a generous salary, whether contract or permanent. When I'm initially communicating with a recruiter, I usually ask them verbally what ballpark compensation they are offering, and then I respond in writing with the minimum rate I require. Sometimes this strategy helps to minimize the waste of your time, by weeding out the lowball artists.

    But recruiting Perl developers is hard. Sure, you can weed out the obvious liars and resume-spammers, but how do you identify someone who can be really productive in Perl, or distinguish them from someone who spends all their time writing obfuscations? You can have all the Perl expertise in the world, but unless you also have a strong practical 'just get it done' streak, you can be worse than useless to an employer.

    Some developers, even those who are quite intelligent and reasonably proficient in Perl, seek to solve problems in the most elegant and (to me, anyway) counter-intuitive ways. When I have had to clean up after such folks, I have often struggled to make sense of their code. If I was a recruiter for a Perl job, I think I would tend to rely on word of mouth more than anything else ... hence, perhaps, the inefficiency of the market.

    No good deed goes unpunished. -- (attributed to) Oscar Wilde
Re: Shortage ? Or Efficient Markets ?
by iguanodon (Priest) on Jun 26, 2006 at 12:17 UTC
    Do you get a lot of cold calls for Perl positions ?
    I've never gotten a cold call for a Perl position, but I've gotten cold calls from headhunters looking for skills that I have no clue about. IME they don't put much effort into matching candidates with the skills required for a position. I'm sure some are better than others but I think many are just phfishing, hoping to hook a body they can use to fill a position.
    So, given a choice between a Perl job, and a Java job paying 30-50% more, the candidate will usually take the Java job.
    Yeah, I fall into that category, I sold out :). But I'm careful to not take a job working for someone who is anti-Perl. Where I work now, the corporate standard is the typical Java/J2EE but whenever I need to do something that doesn't need to run in that environment I still reach for Perl.

    I'd prefer that the balance were different but I think there is more to consider than just the primary language. A good boss, good coworkers, good commute, etc. can make the Java pill easier to swallow.

Re: Shortage ? Or Efficient Markets ?
by tilly (Archbishop) on Jun 28, 2006 at 01:15 UTC
    These things vary by market.

    I'm a Perl programmer, in Los Angeles, at a company that is known to use Perl. I get a cold call every couple of weeks or so from a recruiter who wants to offer me a Perl job. Since I'm uninterested, I've never found out what rates they would try to get me, but I've seen ads go by on the list for salaries up to $90K. Which I assume would be somewhat negotiable for the right candidate since I know salaries actually go somewhat higher than that.

    I know that when we looked for experienced programmers, it wasn't particularly easy to find them. Part of that is that we're picky, you aren't going to bluff your way through our interview process. But part of that is that there is a limited supply of good people around, and most of them already have jobs that they like.

    But that's Los Angeles. I'm also on the mailing list, and my very strong impression is that the Perl job market there is not in nearly as good a condition.

Re: Shortage ? Or Efficient Markets ?
by trialmonkey (Hermit) on Jun 27, 2006 at 17:59 UTC
    FWIW, I have found that it's not difficult to find good, experienced Perl developers, but it's quite difficult finding junior Perl developers that come with the lower rate. I believe many younger developers have focused on learning and gaining experience in languages they feel will be more marketable. Headhunters I know claim that Perl is a niche market relative to Java and the .Net languages.

      I don't think that it is a problem is Jr Perl developers. It is that they don't want to pay much for a programmer. If there is not a problem finding good, experienced Perl developers then it is a question of money. They just don't to pay $30-50/hour for an experienced programmer, they want to pay $15-20/hour.

      Also, there are just marketing cycles where companies will pay absurd amounts of money for a programmer for the latest technology. For example, this fall, recruiters were desperately looking for .NET programmers for $40/hour of 2 or 3 years experience. Java programmers, they did not even call them back regardless of experience becuase they were viewed as a dime a dozen...

      The fact of the matter is, companies, especially large companies are just crazy, sometimes they will overpay for a technical skill and other times will pinch pennies for another.

      The reason for this is that companies, especially large ones, just don't know how to measure productivity. So they go with the only concrete thing they can grasp, experience with a particular technology and hope that the next technological product they are investing in will increase productivity.

Re: Shortage ? Or Efficient Markets ?
by Anonymous Monk on Jul 03, 2006 at 01:03 UTC

    I find this question interesting, as I have recently been on both sides of this equation. When seeking a job as a Perl programmer, I find that the vast majority of "Perl" jobs are *not* Perl jobs at all. Almost always, Perl is listed as a requirement, but the main development is being done in some other language. There just don't seem to be that many companies out there building systems out of Perl.

    On the flip side, as a lead developer trying to build a team of solid software engineers who specialize in Perl, I find the task very difficult. Most of the folks we interview claim to "know Perl", but when tested we find that they have read the CGI Scripting book and that's about it. Some of them don't even know who Larry Wall is.

    For my own part, I am a Perl software engineer and consider myself well compensated. I would not presume to speak for anyone else, but I certainly wish you all luck, whether you are seeking employment or employees.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://557496]
Approved by GrandFather
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (4)
As of 2018-04-22 18:41 GMT
Find Nodes?
    Voting Booth?