What Your Server OS Says About You?
===================================
:author:  Aaron Ball
:email:   nullspoon@oper.io



I've been interviewing a lot of people recently for a position on our team. One
of the questions we typically ask is...

  What operating system(s) does your server at home run?

HINT: For a systems engineer position, we're hoping you'll say something about
      a server you have at home (duh).

The point of this question is simple. A good engineer is more than learned
technical skills. The best engineers have the mindset to constantly learn more;
to venture outside their known world. They're curious, driven, and know they
don't hold the keys to the universe. They want to explore other ways to do
things. This teaches them the "how", the "why", and the "why not".

I don't want to undersell schooling, but some of the brightest Linux engineers
I've worked with were self-taught (one had a degree in jewelry, believe it or
not). Schooling has immense value in condensing *best practice* into a
single-path program. It just doesn't usually teach all the alternatives and why
we do or do not use them. Experimentation teaches this, which is probably why
graduate-level programs require a thesis project.

All that said, I've heard a lot of answers to this question, each of which
tells me something about the person.

NOTE: Please keep in mind, this is written from my opinion. Don't get hurt if
      you don't agree. You are entitled to your opinion as much as I am mine.


Answers
-------

I don't have a server at home
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
We'll start off with just about the worst answer, though not necessarily bad.

This is a red flag to me. I do understand that most people have lives (which
often includes family, children, and non-technical hobbies). However, the
really good engineers typically experiment as a hobby because it is fun. These
are the folks who have "link:https://www.youtube.com/watch?v=g8vHhgh6oM0[the
knack]". While no server at home isn't an immediate writeoff, it makes me a bit
skeptical. Usually, I'll ask about your hobbies if you give me this answer
(some folks prefer to learn about cars, woodworking, gardening, cooking, etc in
their spare time).


Windows
~~~~~~~
You don't experiment much (at least not where we are interested), or you are
more of a Microsoft person (which is fine, we're just looking for Unix/Linux
folks).


Red Hat
~~~~~~~
You probably use this at home because it is what most companies use. Not very
curious, but driven to be better. I find these folks either currently work for
RedHat, did work for RedHat, or are very book-oriented; typically more
interested in a defined path than forging their own. There are of course
exceptions, this has just been my experience so far.


Suse/OpenSuse
~~~~~~~~~~~~~~
Perhaps a little more adventurous than the run-of-the-mill RedHat person.
Still, not super curious, but still driven to be better at what they do. Again,
there are of course exceptions (one of the best people I've worked with used
almost nothing but OpenSuse).


FreeBSD
~~~~~~~
While this isn't running the Linux kernel, it still uses mostly the GNU tools,
with some differences. Anyone who knows why they like FreeBSD is okay in my
book, even if we might not completely be on the same page.


Arch
~~~~
Good answer. This used to be a really amazing answer before Arch made it to the
top 10 of DistroWatch. Nowadays a casual Arch user might just be looking for a
popular but technical distro; or they're really amazing at Linux.  It used to
say "bleeding edge, fearless, plenty of spare time, cat person".  Regardless,
still a good answer. Arch is just different enough that this answer shows
creativity, curiosity, drive, persistence, and aptitude.


Arch + Custom Kernel
~~~~~~~~~~~~~~~~~~~~
Getting warmer (same as "Arch", but +10 points for being extra nerdy)


Source-based Distro (Slackware, Gentoo, Crux, etc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Better answer. This is a particularly great answer because it tells me you
don't scare easily [from technical challenges at least]. It also tells me that
you don't mind forging your own path to learn or have a better system. I find
these people to be the most learning-oriented of these groups. When asked how
to learn how a command works, they typically answer "man" before "Google".

On a more practical note, this answer also tells me that you've been deep
enough in the bowels of Linux that you could likely learn any distro we have at
our company (which is two, but still...). If you have this and minimal to no
RedHat/CentOS/Suse/Debian, I won't mind. It also says that you know most of the
tools to troubleshoot just about everything, from runtime issues in binaries,
to kernel parameter tweaking.

NOTE: I'm a bit biased on this one as I run a source-based distro. Pretty much
      anyone I've interviewed with this though (I've only interviewed 4 or so I
      think) lives up to the description I just gave.


Obscure-Distro-We've-Barely-Heard-of
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
While a good answer, it does throw up a little yellow flag for me. Some people
are distro-junkies (this used to be me) and like to jump around because it's
fun and/or they have commitment issues. While this is a good trait (jumping
around, not commitment issues) in many cases, it hints to me you might make
tech decisions because they are cool, new, or just different - hence the yellow
flag. Making long-term decisions because something is shinier than the other
thing is often a foolish mistake.


LFS
~~~
You're hired


Depends on what day you ask me
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Also a great answer, but with the caveat of the obscure distro. I don't want
finicky people making long-term decisions for the team (does anyone here have
that guy at work that pushes for Oracle databases inside of Docker
containers because "Docker"?).



Summary
-------

All of what I just wrote should be taken with a grain of salt. Every single one
of those answers would not make me write a person off, but the right answer
might give them extra points.

All that said, if I ever interview you and you give me a "good answer" from
this blog post, keep in mind that my followup question is "so what do you do
with that server at home?". I won't write a blog post that gives away the right
answers to that one.   :)


[role="datelastedit"]
Last edited: {docdate} {doctime}

