Eric Sink is a sharp guy, there’s no denying that. Therefore, I’ve decided to respond to a post he made quite a while ago about staying on the top of your game in your chosen career. In terms of full disclosure, I participate quite regularly in the Joel On Software Forums which Eric hosts and actually had a phone interview for his company within the last month.
Eric sums things up quite nicely:
C = G + LT
- C is Cluefulness. It is defined as an overall measure of your capabilities, expertise, wisdom and knowledge in the field of software development. It is the measure of how valuable you are to an employer. It is the measure of how successful your career is. When you graph your career, C is on the vertical axis.
- G is Gifting. It is defined as the amount of natural cluefulness you were given “at the factory”. For each individual, G is a constant, but it definitely varies from person to person.
- L is Learning. It is defined as the rate at which you gain (or lose) cluefulness over time.
- T is Time. It is on the horizontal axis of your career graph.
Obviously you can’t compete on the “Gifting” level. You either have them or you don’t. Unless you’re Mozart, you’re not going compose symphonies at age 5. There is absolutely nothing you can do about this.
Without getting into theoretical physics, Time is a constant for everyone. Other than using your time effectively, you can’t compete there.
Therefore, Learning is the key to increasing your Cluefulness.
There are a variety of ways of doing this, some more or less effective than others, but this will depend on the individual. Here are some of the ways I use:
- Reading – What book(s) have you read lately?
Whenever I’m involved with the interview of a candidate, I ask this question. I’m usually looking for a few things: I’d like to know if the candidate reads, what they’ve read recently, how often they read, and what they got from it. If the only book they’ve read in the past year is the latest Clancy novel, it’s not a deal breaker, but it is a read flag. Since Christmas, I have read a variety of books: Steve McConnell’s Code Complete, his Rapid Development, Mike Clark’s Pragmatic Project Automation, and I’m half way through Martin Fowler’s Refactoring at the moment.
- Reading Part 2 – What else do you read?
Realizing that not everyone has a fondness for dead trees, I ask them about periodicals, articles, blogs, etc. Slashdot alone does not cut it. I make a point of having a variety of sources on my News Aggregator, some are political, some are technical, some are other friends blogs. I have subscriptions to a few of IEEE’s magazines, but you may get more value from the ACM. A subscription might be expensive, but the alternative is even more expensive.
- What industry-related groups do you participate in?
There are dozens of groups for nearly every interest out there. Some are geographically focused, but nearly all have mailing lists and some have forums. If you are a subject domain expert, demonstrate it. I actively participate in the dotProject forums and have accounts of the same username with Mantis and SugarCRM. This can be a bit intimidating for some, but it’s a great opportunity to sharpen your skills and establish yourself as an expert regardless of your current organization or job responsibilities.
- What educational opportunities are you pursuing?
I have worked with people who refuse to let their companies pay for classes because they have to agree to stay on for a X months or pay back the tuition. This is silly. Let your company pay for it, but set the money aside at the same time. If you decide to leave, it was an interest-free loan. If you get laid off, they pay it – this one happened to me. If you stay for the rest of the year, you’ve had free classes and now have a savings fund. Where’s the downside?
After just a few minutes of looking at my own career, this is what I’ve come up with and it’s barely scratching the surface. What other ways do people keep their skills sharp and branch into new areas?