I never realized until recently how hard something like this is. People do not want to move. People that hear about your job post usually have some reason to have heard about your job post, like they can't program at all and their last employer finally figured it out. Unfortunately, you can't know this until they show up and you ask them a few questions about Perl. (I love how one candidate tried to BS me on a basic Perl question. "Do you know OO Perl?" "Yes." "What's the first argument to a Perl method?" "$_". "Don't you mean $_?" "They're the same thing." Congratulations, you have clearly never written any Perl.)
I work at a bank, and we need Perl programmers too. We can afford to pay a lot better than booking.com, but we can't find anyone, either. It's very odd. (And it's not just Perl, we had the same problem with Java and C#, and are having the same problem with C++. Might as well rewrite our app in Haskell... at least those languages have a community.)
The other thing that I see as being difficult for booking.com is that people don't want to work with 40+ other people. Between learning "the rules" from the people already there and teaching the new folks how to program, there is never any time to get anything done. (My second "real job" was like this; I was not even a "team lead" and yet all I did was teach other people basic Perl + Database stuff. We got exactly no work done. At least if I was by myself I would have been able to do one person's work.)
In fact, I find the other Perl team in my office to be too big -- and they only have 4 people!
Why is Perl knowledge a requirement? I've been writing Perl in my new job since June and almost the entire team of 10 (myself included) knew no Perl before joining.
Check that your candidates know how to develop software, make sure they are comfortable with functional programming so they don't break anything, and give them a couple books (programming perl & higher order perl) to read for a week after joining.
Same here. At my current job I knew exactly 0 perl to start with. I haven't learned all the object oriented stuff yet, but I'm cruising (and have been for at least the past three months or more) at 4 mo. in, and I was capable of writing some of the simple stuff after a week or two.
I stay away from applying for a lot of Perl jobs because my skillsets don't seem to match what's used in production environments often, though I've been doing it for >5 years.
For instance, my webby experience with Perl is CGI::Fast, POE::Componenet::FastGI, Plack::Request with my own dispatcher, DBI itself. Where often the places are looking for Catylist or mod_perl with DBIx::Class / ORM, and I feel uncomfortable applying for a positon where my current skill set doesn't meet the technologies they use even if I could pick up either quickly.
In general my non-webby Perl experience is sufficient.
Does anyone else run into this, and if so how do you handle it?
I like it if candidates know about testing and OO. If they don't know Moose yet, that's fine. Catalyst and DBIx::Class are not something I would expect. Not everyone does web/database stuff. I don't, and I wrote a freakin' book about it!
It's a little odd if you know OO Perl but don't use Moose, but not a deal-killer. Honestly, I've found that there is a large faction of Perl programmers that refuse to leave the 1990s behind, and those are the people I don't want to hire. If you just don't know something but are willing to learn, then that's perfect. It's the "I will absolutely not use Moose" that == unemployment :)
I know OO and testing (at least Test::More and general test writing), though I haven't played with Moose more for a lack of time than an aversion to it.
Half the jobs I've taken give deadlines for projects that make it impossible for me to learn more than I know to complete them and the list of things I have to learn in my time (that also competes with lists of projects, blog articles and other things) is growing constantly. I miss having free time.
I have an almost diametrically opposed experience. I have good Perl skills, and 8+ years experience, and can't get Perl work in Sydney Australia, primarily due to the fact that recruiters looking for Perl devs here don't know anything about Perl tech.
The few Perl dev jobs I've interviewed for and taken have relied on unbelievably basic programming tests.
Yes, recruiting basically sucks for Perl, and probably programming in general. The only way I have ever successfully found people to work with is through pre-existing relationships. (In the case of my current job, Perl Mongers; in the case of past jobs, people I know on irc.)
You also mention location specificity -- this hurts employees and employers. Employees don't want to relocate, and employers don't want the communication barrier that telecommuting raises. (And FWIW, having telecommuted at an all-telecommute company... it kind of sucks on both ends.)
Agreed. At one of my previous (financial sector) employers we had a crack perl team (the team had a number of well known members of the Perl community) and we still struggled to find decent Perl developers despite offering a decent pay package and a strong team.