What I Want: To Help People

A few years ago, I read in Zen and the Art of Making a Living something that I had missed, and which moved me greatly.  It was something that I knew on some level, but had never thought about, and which no one had ever told me. I’d been told about doing work you were good at, work that paid well, work that you liked.  People had talked about that job that actually makes you happy — usually in wistful, mystical tones.

But Zen and the Art of Making a Living mentioned something that was completely different. The suggestion there was not for a job that sounds fun (with the thought that it would make you happy) but rather for meaningful work.  Because it would make you content, and fulfilled, and through that to happiness.

For me, that’s always been about making a difference in people’s lives.  In some jobs that was harder to connect with in others.  In my current position, I consider part of my job to put the public’s money to the best use, using technology.  That matters to me, and fits within what I can affect.   That’s nice to think about, but what has really come to affect me is the ways in which technology can affect the quality of someone’s workday.

Good technology makes people’s lives easier.  There’s been research recently that all the little annoyances that we deal with every day actually affect us more profoundly than some large problems.  The main reason for this is that we dismiss them, or prioritize them lowly, but they still aggravate us.  We don’t steel ourselves against them like we would a larger, so they get in and they bother us.

The systems I maintain here are old, and often designed poorly.  They are often frustrating to deal with and in many ways incomprehensible.  Not just to some of our users who have little to no technical education, but to someone like me who has a good grasp on how technology interacts.  I can help people in two ways : training and aiding them — and validating them as people who have to deal with difficult software, not people who are “stupid” or “just don’t get tech.” In today’s ubiquitous computing, tech  needs to adapt to the needs of people, not the other way around.

And that’s the second way I can help.  I’ve worked hard to educate myself on better techniques and methods to make it easier and clearer to people how to use technology.  I cut out data entry as much as possible using good defaults.  I find ways to make the software understand what someone means, as opposed to punishing them for “doing it wrong.”  I’m still working on this — and it will probably never be truly done.  What good software is changes year to year, and it’s something to constantly learn and understand.

But when I can make someone’s job easier — which is good for them, it makes me feel good.  It has the added benefit of allowing the place I work to be more productive as that person can work on other tasks that are more central to their job function.  But what’s most important to me are those days when I’ve given someone tools to let them control their job more easily, to do their work less painfully and to feel good about themselves when I do it.

And that’s pretty awesome.

What I Want : Responsibility with Trust

I’d made the transition to consultant fairly early in my career.  I worked for a company while I was in college, and then when I left, I worked as a consultant for them for a brief period, and started getting contracts on my own at the same time.  I’m not very good at the marketing thing, so after a few months of that, I found a consulting firm in Charlotte, where I wanted to move, and started doing that sort of work.

Consultancy is interesting on some level, you have a specific thing you are working on, and it’s your job to put your skills and knowledge to use to help the client make good decisions, and then implement the decisions of your client.   Consultants lack the context and investment needed to make business decisions, so one of the skills is to understand when such decisions aren’t technical ones, but business ones, and to take them to the client, discuss the benefits and risks of both sides, and let them decide.  This isn’t a bad skill to have, since often you want these things separated in your code: functional technical code on one side, business rules (which always change) on the other.  Encapsulate it well, and the business side is more flexible because IT can support them more rapidly.

Eventually I started to settle down and was looking for something more permanent.  At the advice of one of my bosses, I took a job at Bank of America. It was through a consultant firm, but was a contract to hire position, something I’d not done before, but I was getting tired of the vagaries of consulting and consulting firms, and was getting to a point where I wanted to have a longer term commitment.  I had the option to stay with the consultant firm, of course; and Bank of America had the option to not hire me.  I’ve come to like this sort of hiring, both as the potential hiree, and as someone on the inside, evaluating the fit of a fellow employee.

At any rate, I got to a point were I hit one of those “business rule” things.  It was fairly clear to me what the decision should be, but my consultancy days had taught me that I needed to be sure, so I took it to my boss.  He looked at me, “What do you think is the right thing to do?” he asked.  I told him what I thought.  “Well just to that, then,” he said.  “And don’t bring little stuff like this to me anymore, if you know what is right, just do it.”

I’m sure he didn’t want to be peppered with a million little questions, and I know now that this was what my life would be like when I was hired (as I was six months later), but it was like a revelation to me.  I had the responsibility for the code — I’d had that as a consultant all along.  Certainly the direct client had ultimate responsibility to their superiors, and I was just a contractor, but it was my reputation and responsibility that was on the line.  But I’d been handed something much more important to me: trust to do it right.

I’d moved from something where I was working on a fairly narrow charter, to something where I was given broad responsibility, and trust to get it done.  This was part of the BoA culture at the time, where employees were encouraged to notice and fix problems, even if they were normally considered outside the scope of their duties.  I wound up staying there until we moved to Columbus.

There’s something good about being trusted, and earning that trust through good work.  It’s empowering and makes me wake up in the morning ready to go to work and do great things, knowing they will be allowed and have the ability to do them both with my technical skills, and in the culture of my work.  With new management where I am now, or with a new job I may find, I’ll have to enter a phase where I earn that trust again — I know that — but any place I’m happy to work will allow me to do that, and the space to do good work for them, and for me.

As I’ve thought about this now, I realize this is how I manage my assistant now.  I’ve tried to instill him (or develop with him) goals for what we need done, and set priorities.  He seems to thrive under this as well, although I suspect I’m still learning about managing people.


I’ve been putting together a portfolio, which I understand I should have been doing all along.  There’s a link to it at the top of the site, and I’ll be updating it with projects I’ve enjoyed working on or have done something cool with.  But, kind of like an Artist’s portfolio, it’s work I’ve done that is a thing I can show you.  A lot of the work I’ve done at my current job, for instance, isn’t something tangible as what I have there.

Part of why I’m looking for work is that things here aren’t changing in the ways I need.   The other is that I’m starting to finish many of the things I started.  It feels like there’s more behind me than there is in front of me.  Maybe I’m wrong (and maybe that’s one way having a new boss will help things) but I do want to look at what I’ve accomplished here.

Some of the agencies here get all their tech support directly from the central Data Center — they are small, have very well defined needs, and don’t have the staff and size to support an IT position.  The one I work at is the second largest agency, and we have 250 or so people, all of whom need to interact with IT somehow every day that they work.  A vast majority of them don’t have their own computer, or use one for more than 15-30 minutes a day, but they all do at some point.

This mix of things means that with support from the Data Center for things like networking, email and some server support, a small IT department of 2 or 3 people (it’s 2, but we could use another in my not so humble opinion) can manage our IT needs.

I worked in my assistant’s position for a couple of months before turning down my current position due to it being a bad fit at the time.   A year later, they’d been without IT for a while, and had hired someone who was a good fit for the assistant.  That and the office environment had changed and I was willing to come in here.  The pay was still not good, so I’ve worked as a contractor/temp while that is being resolved.  {It’s lack of resolution is one of the issues here.}

So, when I got here in my current incarnation, I had some knowledge of what was going on, but they’d been without any real IT for a year, and there were problems.  It took me a few weeks, but I realized that I got calls that the server was acting badly every 8 days.  There was no development environment, no test server, no source control.  There was only an inventory because my assistant had just completed one.  The budget for the year was woefully inadequate as it was the one that had been used the year before and was just barely what we needed to complete.

The quick response was to reboot the server weekly, and put some monitoring code into place, and find out what was causing it.  That led me to find some major problems that were killing memory, and fixing them.  Fixing these issues was vital, and done surgically as they whole thing, I quickly discovered, needed to be overhauled and replaced.  And that meant building infrastructure for test and dev, and making a real environment to work in — even if I was the only one doing work, with occasional help for my assistant.

I developed tools that would let us know what our budgetary requirements for years out would be, and began looking outside our immediate needs.  We had systems on systems that had been sitting unmaintained.  I found a PC from the mid-80s which was still running, but (obviously) on its last legs.  To fix it though required ripping out the system it was a part of and replacing it entirely.  This was not expensive, nor the work of a single year.   We did the same with a security system, and those for other trades.

One trade had a suite of software tools that were old, and due to licensing had to run on a machine that was inadequate for use six years prior.  We now have yearly agreements with those vendors for upgrades, and an keep the equipment updated as a result.  This was a practice I implemented across anything that involves tech — and in the current world, everything involves tech.

I’m in the process, this year, of getting rid of the last of those server applications — one with a purchase from a vendor, the other bits of code I’ll write as they’re very tied to our business model.  They’re in modern, Open Source languages, and can run in a LAMP stack (but don’t because of external standards we have to abide by). I don’t know where we are on the Joel Code (probably not too high, as we don’t primarily develop code) but we’re stable and have good practices in what we do, across the board.  And those practices are now understood by the agency, and we’ve got support from them we didn’t have when I started, because they’d been treated poorly by IT for so very long.

I’ll probably find some new system this year that’s been running fine for 10 years and needs upgraded, and we’ll find some way to keep it working until next year when I have the money to fix it. And it’ll be one less thing out of date.  And maybe I won’t find anything, maybe after six years of this we’ve found most of it, and engendered in our users an understanding that they not only can tell us about things, they need to.

The other thing I’m proud of is that my assistant now has an A+ certification, and is working on networking and routing certifications as well.  There’s no easy path from his position to mine, so I imagine he’ll leave for something better.  I spent a lot of time convincing him to do this, and made sure there was money and support for that as well.  I hope that by working for me, he’ll have a better life, because that’s the right thing, but also because he’s made my life better in this job by just being a good employee.

When I look at this, I don’t see huge amounts of project code. I have written some cool things here, and improved things vastly with small lines of code here and there, and fixes to interfaces that were bad and punishing.  I still have more of that work to do, but it’s getting to a point where I’ve done the major things I wanted to when I got here.

So time for a new plan or a new person, but whether I’m here or not — new challenges..


What I Want : Variety And Challenge

I originally meant to post this weeks ago, but then I realized that unpacking and getting it right were both important and difficult.  I’ve spent some time looking at what positions are available, and thinking about what has traditionally  made me happy and thought about what I’m good at.  While I’ve gotten some good thoughts about that, I can’t put a job title with what feels like a match.  But I do have some idea of the shape of the thing is, so let’s talk about that, and figure the rest out later.

Today we’ll start with the first one: Variety and Challenge.

Variety And Challenge

I think pretty much all jobs are made up of routine, everyday tasks.  Things that just need doing.  Any programmer who has been working in a business has written an application that’s 90% “CRUD”.  Heck, we even call it that, but it’s much of what we do.  But I know for myself, and for many of the other IT Professionals I’ve work for is that we enjoy variety in our work, and work that is a challenge of some kind.  I’ve enjoyed work that was outside my comfort zone — I’ve worked organizing sports team, and organizing housekeeping and carpentry tasks.  I’ve also sat down and figured out how to do finite scheduling for a textile mill, and delved into systems to find answers to one-time questions that are almost — but not quite — in the data stored there.

Those jobs were I was asked to find hard answers or familiarize myself with new environments and people — that kept me learning and expanding my skills were the jobs I liked the best.  They were jobs I’d go home energized and exhausted at the same time, glad I’d done something interesting that day.  I think this is what drew me to consulting in the early part of my career — things changed every six months to a year, and I was learning new systems (bureaucracies are systems, too) and ways of doing things.  I learned a lot about things and that was good.  My current job is about as far away from the financial services things I did before I moved to Ohio, and maybe the next one will be different from both, too.

None of these jobs have been tumultuous.  There was almost always a plan for every day.  A list of things to get done from the mundane to the tedious.  That’s a simple fact of work, and the way it is.  But there was the potential for something new to work on in the best of them, and I thrive on that.


Where I Am

So, part of the purpose here is to figure out and communicate where I am, where I want to be, and how to get there.  So let’s start with the easiest of those three.

Currently, I work for a county agency as their primary technical employee.  I have someone who ostensibly reports to me.  The county structure is such that there is a primary IT department, the Data Center — they handle the network, server management, mainframe computing, and set standards for PC deployment, etc.  Our agency is large enough that we have unique needs.

So our IT department was born.  We do primary support for people — fixing computers, both hardware and software. Part of that is just customer service, some is figuring out who in the Data Center can solve this problem.  We do this because we have other systems — everything from trouble ticketing to security systems to signage — that we handle instead of the Data Center.

I am the primary — and only — coder on many of those systems, and I also make purchase decisions about what kinds of software — from small to enterprise — that we buy.  I or my employee run the projects for install and maintenance on them, and I create and manage the IT budget for our agency, which — ignoring payroll — has been as much as $1 million in the six years I’ve been here.  We get our money from sales tax, so the past couple of years have been lean,  and that’s a different challenge.

Every day is a bit different, I’ve got my hands in a lot of different kinds of software and uses for things.  I’ve fixed computers in jails, repaired a 20 year old computer (that was still mostly running!), migrated our systems from really old ColdFusion and horrible database designs to more modern PHP based systems. I work with people who know computers really well, and some for whom they are alien and strange, and domy best to  support them all with all my knowledge and respect.

It’s a great job, really.

So, why am I unhappy? Why am I looking for work?  Well, when I got here, that wasn’t the description for the job.  There was less to it, and it was mislabeled and underpaid.  So I came here as a temp — first as a 1099 employee, then through a county-approved temp service.  Then through another when they lost their county contract.  Since I’m a contractor — or more accurately, a temp — I don’t have all the real authority I should have.   I don’t have those wonderful county benefits that are the real lure  to working here (as the county government has probably the lowest salaries for positions in the area).

And I’ve been in this position for six years.  My boss who was trying to get me hired is retiring, and the new boss is understandably busy getting her feet under her.  It’s going to be months before they open the position up.  Honestly, I’ll apply if I’m still here.

But I’m tired of waiting.  So it’s time to move on.  To where, though, is the question. Running away is bad, but running toward is good.  I’ll post that on Monday.

Here I Am

I’ve been online since before there was a web, but I’ve never written as me on the web before.  I come from a generation of alias users, shocked by the “younguns” who give their real names on Facebook, and we’re pretty cagy about our privacy.

And yet, I’m a technology person, and I have daily struggles and triumphs with it, which I’d like to write about and share.  I’m also starting a job search — even if I get hired in my current temp position, that’s part of the search.  That’s stressful and uncertain, and it’s hard to get across in 800 characters exactly what it is I want to do and what I’m good at.

I’m not naive enough to think people will read this and learn it, but I’ve found that writing honestly about something is a good way to figure it out for yourself.

So, I’m Bill Farrar.  I live in Columbus, OH, and I’ve worked in technology for 19 years.  I’ve been online for over 20. This is my home, and I’ve got things to say.