Have you ever been told that you’re a "real asset to the team"? If you have, it probably felt good at the time. Congratulations for making your mark and getting noticed, but I’m about to ruin the complement.
An asset is someone who gets things done. An asset is a reliable, sometimes brilliant, source of work product. Assets are often specialists and their value is easy to quantify — it’s the inverse of the cost of not having them. If you’re a database tuning guru, your value is roughly equal to the cost of having an un-tuned database. If you’re a security whiz, your value is roughly equal to the cost of having an insecure app. This is often how Big Swinging Developers get their start: they specialize and learn how to sell themselves by presenting the cost of not having them on board.
I see a few problems with this, such as:
- Your employer may not see the same cost of the problem as you do
- The problem may be mitigated in a way you don’t expect, which lowers your value
- New technologies may make your specialization obsolete or devalue it significantly
This is not to say that having specialized knowledge is a bad thing, it’s just that banking solely on that specialized knowledge is the way to become a Specialized Niche Programmer.
To become a Big Swinging Developer, don’t be an asset – be a force multiplier.
Which do you think is worth more to a customer: "I can tune the heck out of your database" or "I can help your project get done on time"? How about "I can write great multi-threaded code" vs "I’ll make the entire team more productive"? Once again, it’s not that database tuning or mastery of the black art of threading aren’t valuable – they are. In fact, you need at least one or two such skills to get your foot in the door. The point is that once you’re in the door, and once you’re humming along on the tasks that you’ve been assigned based on these skills, that’s when the truly valuable work can begin.
Not sure how to be a force multiplier? Subscribe via RSS or email and you’ll learn how.