I find myself excited.
This week I was told that the contract that I'm working for is not going to be able to extend me. In fact, they already had extended me, but somehow that had been lost in translation. This is not why I'm excited.
That afternoon I made a comment, and that networking / knowing people thing kicked in. I'm persuing a job that I normally wouldn't, as a Linux SysAd. I love Linux, and am comfortable living in there. (I still prefer the Mac most of the time, but I can get along fine in Linux...) But I've never Administered it. I've built, administered and maintained ESX clusters, but even with that I know that my *nix experience is not equal to my Windows Engineering experience.
Now, I've mixed feelings about my mixed feelings.
First, a friend recommended me for this position. When we worked together, he was a Linux Admin (though very strong in the Dark Side, er..., Windows), and I was the Windows Engineer (aka Tier 3, aka Server Team). This position hasn't been posted, and when he saw my message started talking to me and his company. He's spoken on my behalf to the Powers-That-Be, and they are listening. For that, Jeff gets some free drinks, regardless of how this turns out.
After my experience with my first civilian job, I swore off working for software companies (Jonathan is exempt, and he knows why), but again, the things that Jeff has been saying about this place really defused that concern.
Second, when asked "how strong are my Linux skills", I don't know how to answer. I know what to say when asked about what I know about Windows. I know where I stack up in the different areas of the Redmond-based world. (Every so often I run into a problem or series of unfortunate events that make me second-guess my ability; I start thinking that I'm a fraud and should take up woodworking full time. And then somebody asks what I consider to be a trivially easy question or does something dumb... "You don't know that?!" Thank you; career crisis averted!) My problem is that in the past three years, I've started thinking in more holistic and enterprise-wide terms. Bring a problem to my attention, and I'll put together a "solution stack". (Good odds that I'll mention the word "script" or "code".) (Want to start a 'Waldo at Work Drinking Game'? Ask me for a solution to a problem. Every time I mention something that involves a text editor everybody takes a drink.) I've become familiar with a wide range of platforms and technologies over the last several years, so depending on what you ask for, and what you're have available in your environment is going to greatly influence the 'tech recipe' (or recipes) that I am going to answer with. With this broad range of familiarity, I no longer can compartmentalize between 'this is Windows' and 'this is Linux'. Besides, since I've been tinkering with Linux and the Mac, I've been learning most new things in parallel.
Third, I'm just learning MySQL. I brought up an opportunity to fix a painful process that my current company uses which would leverage a database backend, a web frontend (php, most likely), and building in spreadsheet output on each data refresh for those who can't live without Excel. So I don't know it know it. They ask "how much MySQL do I know", and all I can say is that "I am learning it because I came up with a project, but I'm still in the early stages of teaching myself."
Fourth, The Phone Interview. The CEO said when scheduling that "it would only take 15-20 minutes" but had already expressed concern that my resume is Windows-Heavy and Linux-Light. What he said sounded a touch ominous to me, but I tend to hear doom. Ten minutes after the half-hour phone call with the CEO and CTO (I could have gone on for awhile; lots of questions...) I had an email asking for a real interview. Hooray! But I'm expecting a beatdown. They're also concerned about meshing with the group personality, but I'm not worried about that nearly as much as I am about their perception of my technical worthiness.
Fifth, my ability to research and lack of fear of the command-line. And my networks. I know how to use man pages, and Google. ServerFault, THUG (The Hudson Mac Users Group), and CD-LUG (Capital District Linux Users Group) are my best networks right now, and at the moment the LUG is kicking ass. Fortunately there is a LUG meeting tomorrow, so I put out a message to the group mentioning my situation and asking if anyone is willing to put on any classes/discussion of Linux SysAd'ding or MySQL. And the LUG responded. Tomorrow I'll be hooking my mind up to the firehose and supplementing all of the reading I've been doing. (I've been wearing O'Reilly out...) (Ian has earned drinks, too.)
I've been trying to come up with ways to pitch myself during the interview. The first one is the blank slate, or to use the maid/housekeeper analogy: sure, you could hire a housekeeper with experience, but do you really want somebody else's maid with their habits?! The second is to say that "I'm smart, I solve problems, and I get things done." (I'd had a third, but I lost it.)
Perhaps it's largely a matter of labels and experience. No, I haven't managed Linux in an enterprise environment. But I solve problems.
As a side note, they use Macs if you want one. That makes me happy. I've been happy with HP Servers. Their laptops (and Dell's) make me sad. Seriously, they depress me. Every time I touch one, they remind me of an overgrown netbook with their cheap, flimsy feel. As I was putting my son to bed tonight, I reflected on what a smart move that is. Apple IS the hardware AND the software. When an update comes, you know it'll be compatible with every piece of hardware that can run it. (Occasionally a new hardware model will have problems at launch, but this is reasonably rare.) Every time you're patching a Windows box, and even on Linux, you find yourself holding your breath because something may break your system. The fact that they don't break things more often speaks to the quality that the dev and testing teams have done. (Yes, I am praising Microsoft for good code.) Not to mention when you get a new order of computers in and find out that the hardware has had a minor revision. In Windows-land, you can plan on your Image breaking; in Linux-land, it depends greatly on your image process and the hardware involved... But with Apple being the ecosystem it just isn't a problem. (For the 0.1% of the time, this is why you test on one machine first, then do the rest... Always Test. Always.) Yes, you can find cheaper computers, but with few exceptions they won't be better. So, let's be obnoxious and say that [this] Mac is $1000 more than an exactly-comparably-specced non-Mac. Let's say that I make $25/hour (not my pay rate - make of that what you will; it's just easy to work with). If I buy the non-Mac, but spend more than 40 hours over the life of the computer fixing or waiting on it - basically anything but work - I've wasted money. This is also assuming that the build-quality of the non-Mac equals the Mac. (I bought my MBP almost four years ago and you wouldn't know it. I was shocked when I realized that it had been that long ago!) Yes, Apple puts out updates, and the Mac should be patched. The point is that time not working because of the computer is cost added to the computer's price.
I really want this job. I haven't been this excited about a position in a while. The culture I'm told is "a breath of fresh air", and they seem to both respect home life and have fun. It sounds like the atmosphere of the development shops that I respect and envy. I've been doing typical Enterprise for awhile, and I'm a little tired of that. One of the questions that I have lined up is "when companies mention that they're 'fun places to work', that's often code for '...because you'll be spending a lot of time here. Bring pictures of your family because you'll forget what they look like.'" They also mention that they "have more bathrooms than doors." I wonder if that means that there's an awkward shower-curtain somewhere...
Besides everything else, I've wanted to do more *nix and more coding. Yes, I'm excited.