In general, a well-considered piece, though we part
company in several places.
The middle path lies somewhere between this tract and
the BOFH. You were hired to do a task, but the
responsible admin takes pride and ownership of the
computing environment. The users want a
computing environment that is stable over time, and for
this reason, it is, a little bit, about the admin. If the
admin gets bored or frustrated, then the admin will
seek other opportunities, and the next admins will
shake everything up trying to make things look just like
the peculiar environment in which they learned their
Listen, but don't shut up. How many times has
someone, usually a Power Luser (someone who knows
just enough about adminning to be dangerous), asked
you to perform a very specific task (add this entry to
the hosts table on all the systems, even though we use
DNS, as an example)? Listen, then restate the problem
in the apropriate context, and work with the user
towards a more general, appropriate solution.
Don't shut up. Always communicate the following things
with your user base: What the known problems and
outstanding tasks are, what you think your priorities
are, what you're working on, what you're planning
(outages, upgrades, changes), what your
vision for the system is. This last bit is
important. Have abstract goals, as well as concrete
goals, and make them known.
These communications should be frequent enough to
make it annoying to get them by email. Start a weblog,
maintain history, mention it every time someone seems
surprized by something you say or do.
Addendum to focus on tasks: Identify all the
stakeholders, and notify them when the task is
complete, ask them to make sure everything is in order.
Always give them something to do. Yes! I got so sick of
building emacs every week, that the squeaky wheel got
the task. I turned it over to one of the users in a
controlled manner, they made sure all the assorted
random garbage was built in, and I released it into
production in a controlled way. If it broke, the users
bothered that person.
Because there are many users with diverse agendas
using your system, much of the task of systems
administration is consensus-building. Be involved in the
decision-making process, but make it known that the
final decision belongs to the users, but you will inform
their decisions with the technical and fiscal realities.