Professional Development is something that I’ve written about before but it is especially important for consultants and contractors. In most cases consultants and to a lesser extent general contractors trade on the fact that we have skills that are hard to come by and difficult to acquire at a certain point in time.

In reality I think that there are two kinds of skills; there are general business and management skills which you make you an effective leader and decision maker and then there are the specialist technical skills.

Both sets of skills can be expanded upon although I suspect that technical skills are subject to a greater level of churn than business skills (with the exception of the fundamentals of computing).

As a consultant, your clients expect you to arrive on-site as an expert and assist them with their technical problems. In order to do this you need to be able to ride up on leading ledge of the technology wave and make sure that you are exposed and practiced in technologies before someone asks you to work with them.

Getting time to get up to date with a new technology can be hard because you are essentially trail blazing. Having said that, its not impossible and here are some of the techniques that I have used in the past.

  • Walk the namespaces; when I was first teaching myself .NET, in the evenings I would pick a namespace and systematically identify the main classes contained within and understand their function. Its time consuming but when the provided documentation most says “to be done” you have little choice. The benefit of this approach was that by the time .NET was released I had a pretty deep understanding of the framework and the runtime.
  • Read the blogs of the people that made it; back in 2000 this wasn’t really an option, but these days Microsoft (in particular) has so many people from development teams blogging that its pretty easy to get the low down on a technology well before it ships. Its getting to the point now that if you are a developer and you don’t have an RSS aggregator then there is litte chance that you can keep up.
  • Answer the questions of others; this is the key secret! If you want to be an expert you need to be able to have the knowledge of experts. There is no better way to do that then find people that are asking questions about the technology and answer them. In doing so you guide your own learning but you also get recognised as someone with some expertise – this is useful when you are trying to find your next engagement!
  • Give something back and get connected; if you have managed to learn a new technology – give something back to the community. Help others who are trying to learn the technology to pick it up. This creates valuable connections and a network of peers that will help your development.