As children, we are all taught our ABC’s in pre-school. From that young age all the way through earning a college degree, we follow a prescribed cirriculum, grade levels, and performance guidelines so that we can advance our understanding of the world and be productive, independent adults. My personal journey learning and growing as a technology consultant bears many similarities to grade school and college. I had to first learn my Technical Consulting ABC’s before I became an expert.
Before I sat down to write this article, I went down deep into that part of everyone’s desk that holds piles of paper and ancient tomes. I rummaged around a bit but eventually found what I was looking for: my college transcript. A rush of nostalgia swept over me while I read through each semester remembering that I made it through Physics (twice), Calculus three times, and a slew of psychology courses. The sum of 4 years all staring back at me on a single sheet of paper. After I was done reminiscing, I gave the transcript a second glance in order to confirm my suspicions. Indeed, there was no mention of “Technical Consulting 101” anywhere on there. At no point in all of the 22 years of education I received did anyone sit me down and explain service delivery, effective client communication, sales techniques, price negotiation, or even software engineering principles. Basically all of the skills that I now use in my business day-to-day I learned on my own. That got me thinking: what would the ABC’s of Technical Consulting be? In my mind, a successful technical consultant is always coding, always communicating with clients, and always closing. Naturally, the ABC’s of Technical Consulting began to emerge.
As a technical consultant, having skills that are both in demand and hard to find is the key to success. For me, this skill set includes Ruby on Rails, Agile Project Management, and working with Startups on limited budgets. In order to keep these skills sharp, I am always learning new ways to use the Rails Framework, discovering new Ruby Gems, attending conferences, and going to ATLRUG (Atlanta Ruby Users Group) meetups. The #1 reason people hire consultants is that they can deliver a result faster and better than the the client could have on their own. Remember to be the expert in the room, be opinionated, and deliver results to your clients! The only way to do this is to have a voracious appetite for learning new skills, staying up to date on current trends in your particular niche, and always coding!
Communicating with clients is so obvious, but so many consultants are terrible at this. In my experience, daily communication is not an option. Speaking to a client every single day (you can take weekends off!) is what leads to the best outcomes and repeat clients. A consulting engagement can go sour very quickly when either party stops communicating on the regular. That said, its up to you as a consultant to keep your client in the loop at all times. This is easily done by using collaboration tools such a Pivotal Tracker, Trello, or Sprintly. Keep your code in the cloud and invite your client to see the commit log. Even if your client isn’t technical and won’t understand the code, the main point is to provide visiblity into the process.
This one is classic. Don’t forget to sell yourself, network, and publish blog posts. Blog posts might not garner thousands of hits or ever see the light of day on popular search engines, but they do become assets when working with potential clients. When you’re talking to a potential client and they’re asking about certain topic, send them to a few blog posts about it. A blog can be your best friend when positioning yourself as an expert. Do you have any ABC’s that I missed? Obviously there is more to consulting than just merely writing code, working with clients, and doing sales. Maybe I’ll write a blog post on how to negotiate next? Or maybe on fixed-bid versus hourly contracts?