I haven't written a single word this year. It's a busy one for me
building, scaling and supporting
more
big sites. Interesting problems were solved, bugs were
found... but still, I didn't feel like I stumbled onto anything worthy
of publishing that hasn't been rehashed a 1000 times already through
blogs and eventually change-logs. But thinking about my lack of
material, while catching up on my podcast backlog gave me an idea to
write something about the sysadmin role in all this.
Many times in the last year I returned to two books as best practices
guides for building and scaling web-apps. Those
are Scalability
Rules
and Web
Operations. I recommend these books to any sysadmin interested in
web operations, as they share experiences from engineers working on
the top sites and there's just no other way to gain these insights
unless you join them.
That brings me back to my podcast backlog. Episode
38 of the DevOps Cafe had a very interesting guest
(Dave Zwieback) that talked a lot about hiring sysadmins, and
generalist vs. specialist roles in systems
administration today. I am a generalist which in it self is fine, but
there's a big difference between "jack of all trades, master of
some", and being a "master of none". I've been thinking
about it since the podcast, as I wasn't thrilled with what I was doing
lately, that is jumping through a lot of new technologies to
facilitate all kinds of new frameworks web developers use. Often times
that means skipping some kind of "logical" learning course of R&D,
instead you learn enough to deploy and manage it, while the real
knowledge comes within a certain period of time spent debugging
problems when it breaks apart in production.
Now to tie both parts of the text together. If you want to join site
reliability engineers at one of the top sites how do you justify
drawing a blank when asked to explain
how Varnish malloc
storage works internally, if claiming you built huge caches with it?
The Jack issue is amplified if you consider there is now a first, or
even a second, generation of sysadmins who have never stepped into a
data-center and are missing out on hardware and networking
experience. Appropriate name that comes to mind is "the cloud
generation", and I'm a part of it.