By Corey Quinn – Senior Technical Consultant
Like most consultants who’ve been in the game for more than a year or two, I periodically receive opportunities to “convert” to being a full-time employee, either with our clients or from third parties who’ve heard of me through the grapevine. It’s always flattering, I always appreciate the gesture, and I always politely decline the offer.
Why? On the face of it, this doesn’t make a whole lot of sense. As a consultant, I generally don’t get the chance to gain equity in my clients. Does compensation generally take the form of cash rather than an ownership stake, and as for the rest of the typical fringe benefit suite? Forget it! As a consultant, I frequently find myself sitting next to the printer breathing toner. (“Sorry about that, it was the last available seat we had…”)
So why am I a consultant?
Part of the value that I bring as a consultant is that I’ve been in a lot of environments. I’ve seen a lot of organizations (some more functional than others!) and seen a number of patterns and themes emerge. Part of the reason that I’m valuable in this role is that I didn’t spend a decade sitting in one organization; I’ve got a broad base of experience I can draw upon. At least, in theory, I’d be trading in a lot of that mobility if I were to take a full-time offer.
Put a slightly different way, I spend a fair chunk of my time interviewing prospective candidates for Taos. I talk to an awful lot of people who’ve been in one role for the past thirty years– and they don’t have thirty years of experience. They have one year of experience, that they’ve repeated thirty times. Everyone wants different things, but I have to confess: that path lacks appeal.
Additionally, a large part of my value is that I’m the perennial “new guy.” I don’t tend to pay a lot of attention to “the way things have always been,” simply because I haven’t been there yet. Often, we get so close to a system we’ve built up over a period of years that we lose sight of the bigger picture. A pair of fresh eyes unencumbered by having to worry overly much about politics or divisional warfare can often expose better ways of solving problems that the stakeholders were simply too close to the problem to see clearly.
As a technologist, there’s another benefit to my being a consultant. I’ve spent a lot of time over the past two years deploying various configuration management systems. Were I to have done this as an employee, it’s entirely possible that I would have gotten “clever” with these implementations. However, as a consultant, I start an assignment on Day One knowing that it’s going to end in the not-too-distant future. At that point, whatever I’ve built will have to be handed off to someone. I don’t know what their skill level is going to look like when that time comes, so in the absence of other direction, I choose to optimize for simplicity over being tricky.
Yes, this sometimes means that my solutions are more verbose than they could be, or that I could have relied upon an undocumented feature to do something faster. Ultimately going in such a direction would not only fail to serve the customer but stands a very good chance of incurring massive technical debt. By avoiding this pitfall, I’ve become rather skilled at building systems that are self-documenting.
It’s also worth mentioning that I get to spend a lot of time working on a variety of technologies in interesting ways, long before most companies would consider rolling them out to production. Service discovery, containerization, large scale orchestration… they were all “around” in some companies for years, but I got to play with all of them long before they made tech press headlines. On a personal note, being able to claim experience with emerging technologies certainly hasn’t hurt my reputation any!
I freely admit that the consulting lifestyle isn’t for everyone. That said, if any of this sounds appealing, I’d urge you to get in touch with us– we’re always hiring!