
The Linux Talent Draft is On - Tsiolkovsky
https://www.linux.com/news/featured-blogs/185-jennifer-cloer/609615-the-linux-talent-draft-is-on
======
dkhenry
Furthermore, As someone who has been hiring every skilled developer I can come
across for three years, I have found that good linux skills are one of the
best markers of good development skills. There is something about people who
aren't afraid to , and even enjoy , using linux that corresponds with an
aptitude with programming, this is especially true of back end developers.

~~~
dsirijus
Also, though I have no sources on this other than personal experience, linux
skills are frequently indicator of heavy prorastinator.

~~~
davidmr
That's a curious association I've never made. Can you say a bit more about
that?

~~~
praptak
What draws people to Linux is the possibility of tinkering. It's not like
tinkerers are always procrastinators but they prefer tasks that engage their
"tinkerer sense": trying out a new API or maybe doing something unusual with
an old one.

Doing something mundane with a known API is something they will avoid. Such
tasks are probably in the majority of those found even in the most exciting
jobs. This is what I believe to be the cause of the association.

Source: generalizing my own experience to the whole population of Earth. Btw,
I gotta get back to work too.

------
davidmr
> But 85 percent said finding Linux talent is difficult.

I couldn't agree more with this statement. I work in Chicago--which you think
would have a rather large pool of Linux talent--but it's incredibly hard to
find really top-notch Linux people at any price.

Like any technical job, there's no shortage of candidates that have "Linux
System Administrator" on their CVs, but five minutes into a phone screen you
can tell that nearly all of them are what I like to call "application
drivers". They've been paid well to sit in front of an application GUI
(vmware, backups, storage, etc.) for 10 years and push buttons. It's
astounding to me that it's so hard to find people who can do the most basic
things: build packages in the OS native format from source; write complicated
shell scripts; write complicated applications in (python|perl|ruby); debug and
port C/C++ programs; etc.

In my last job (Dept. of Energy lab), I used to think it was hard to find
people because the pay wasn't good enough, but in my current gig in the
financial industry, we're willing to pay basically whatever it takes to get
the best talent, but the pool of great candidates is very, very small.

I think part of it is that in a shaky economy, the best people don't get laid
off and they're hunkering down, unwilling to risk taking a new job, but I
don't really know.

~~~
waynemr
If they have all of that money for hiring qualified Linux talent, but they are
unable to find it readily... why don't they start an apprenticeship style
program? I know in the highly regulated nuclear operator field, companies
setup schools, where students are paid to attend classes and if they can get
their license, they have a paid position waiting. Why not something similar
for Linux professionals?

I have been in IT for nearly 20 years and it is downright shameful how
companies these days are willing to claim they will pay whatever it takes to
get IT talent that doesn't actually exist, but would rather shoot themselves
in the face before investing in training.

~~~
davidmr
That's very true. We do actually do that with our production team. It's split
into "ops", which is the day-to-day work and "engineering", which is the more
complicated, more interesting work.

We hire junior people we think are smart into the ops roles and train them to
eventually shift over into engineering. Some people can do it in a year or
less, some a lot longer, and some just don't work out at all (or actually like
doing the more routine work). Those people are definitely easier to find. We
just talk to a lot of people and pick the ones we think are the smartest and
will mesh the best and train them up on the rest.

In some cases, though, you just really need to get experienced people and
can't wait the amount of time it would take to train.

~~~
vonmoltke
What kind of experience are you looking for? Is it possible you are being too
selective or misjudging the ability of experienced applicants?

~~~
davidmr
That was definitely part of it, but we've changed our strategy a bit in an
attempt to compensate. At first we were looking for people who had a lot of
HPC-specific Linux experience. This, however, is a relatively small field
because the cost-to-entry barriers are enormous if you're looking to do it at
any great scale. That definitely restricts the set of potential candidates to
a small subset of the set of "Linux people" (people from gov't labs, research
universities, very large corporations, etc.)

Since we're willing to pay relocation expenses and buy people out of non-
competes, we were doing a nation-wide search, but as a generalization,
university and gov't employees are usually there because they like the relaxed
environment and are willing to sacrifice some pay for it. (I have worked at
both, so that generalization is drawn from only my experiences and those of my
friends.)

So after getting few bites there, we rewrote the job description to just be
very good with Linux in general, hoping to get a really smart person with
skills that complement ours and then being able to train them in the HPC-
specific stuff. That increased the number of applicants, but also dramatically
decreased the quality-applicant to applicant ratio.

You're definitely right that I could be misjudging the ability of some of the
applicants, but a great majority can't pass the Linux equivalent of FizzBuzz,
even though they list 10+ years of experience.

~~~
ciupicri
What would be the Linux equivalent of FizzBuzz?

~~~
davidmr
I'm thinking of it as a test for the simplest possible thing I can ask someone
that will tell me immediately if they're worth talking to or not. I mentioned
this in another post, the one I use that people bomb most often is: "I want to
run this command on 100 files. Write me a for-loop in the shell of your choice
to do it."

~~~
yourapostasy
That's kind of terrifying that someone can't do that can say they are an SA.
Did anyone you interviewed mention xargs as a BTW solution after presenting
the for-do loop? I'm currently trying to figure out if one of the SA's at a
current client actually does not know how to use tar, gzip, and scp, so I know
where you are coming from, but still.

When you previously said "complicated applications in (python|perl|ruby)", did
you mean someone who knew both front- and back-end? That implies someone who
also knows Javascript, CSS, HTML, and a few databases, not to speak of one or
more web frameworks, proxies, load balancers, _etc._

When you say "debug and port C/C++ programs", did you mean someone who knows
enough about Windows to port a program written there to run on Linux? Or
someone who knows enough about BSD to port to Linux? Or someone who knows
enough about [AIX|HP-UX|Solaris] to port to Linux? Port what, pure userland
programs or stuff that messes around with ioctl calls? Debug from a hand-built
in-memory circular log, core with no symbol table, using Dtrace, or just some
judicious printfs or logging?

Depending upon how you specify what you want, you don't have to go far these
days to stray a long distance from a "Linux SA" role, where even a "Senior
Linux SA" job title won't cut it; you are moving closer to a Free Electron,
and those people don't come cheap.

------
dmm
> Eighty-one percent of the hiring managers surveyed for the report said that
> hiring Linux talent this year is a priority.

What is "Linux" in this context? Are they talking about doing actual kernel
development or clicking around Gnome and using the GCC stack?

~~~
TazeTSchnitzel
I assume they mean the typical Linux userland stack.

------
zheng
This article is very ambiguous on what kind of linux talent they see as being
needed. Are they looking for sysadmins or developers? By linux do they mean
using tools like gcc, make, etc? Or do they mean writing tools against a POSIX
interface? Also, considering that basically every college uses a linux
environment, I find it odd that they can't find devs who can work in linux.

~~~
anon987
I believe it's both.

Linux continues to grow so organizations need more admins to support more
servers as well as more developers to write applications, scripts, and
programs that run on those servers.

I don't see a glut of talent in either case.

------
jamesmcn
This seems like a consequence of the rise of cloud computing.

My experience is probably biased by the fact that I've been working in the
Seattle area for most of the last decade. I've worked with and hired excellent
engineers with Linux backgrounds and also Windows backgrounds. Elsewhere it
may be harder to find top Windows devs.

In the '90s, developers built their own Linux desktops and servers because
there wasn't any IT infrastructure capable of supporting us. After the dot com
crash and the nearly simultaneous death of big-iron Unix, Linux IT support
started to become a thing. Medium and large companies staffed up on Linux
sysadmins and support staff, so it was possible for devs to just code and
remain fairly ignorant of the underlying OS - or at least confine their
knowledge to the theoretical domain.

Now that you can just spin up server resources in the cloud, I can see devs
with Linux experience having an edge over those without.

~~~
stock_toaster
> This seems like a consequence of the rise of cloud computing

Could also be due to the rise of 'devops'. I see a fair number of places
simply choosing to not hire (some I imagine may be having trouble hiring too)
enough sysadmin staff, and instead just having developers do double duty and
calling it 'devops'.

------
daniel_solano
I wonder if it would make sense for companies looking for Linux talent to
somehow target users of less 'user-friendly' distributions such as Gentoo or
Arch. I don't know how well it would work, but I imagine that advertising on a
project web page or, if allowed, making an announcement to a user's mailing
list could be a way to find developers.

