raganwald
Friday, August 13, 2004
  The Dark Side of the Force
In job interviews, there's a cliché question: "tell me about your weaknesses." It's so over-used, there's a crafty stock answer: "Well, I've been told sometimes I work too hard and I need to slow down. And I'm a bit of a perfectionist, and I have to make sure my colleagues don't resent my pushing for their best work."

In a high-pressure situation, you may prefer to be, as they say, "economical with the truth" when asked a question like this. But privately, everyone has real, actual weaknesses. And every weakness is an opportunity for self-enlightenment and growth.

I don't want to waste your time talking about how I enjoy a leisurely start to the day and have trouble being in the office before 7:00am. Instead, I'm going to generalize and share an observation: every personality trait is simultaneously a strength and a weakness.

For example, I enjoy writing about my feelings on this blog. However, I have to watch the positive to negative ratio: when I spend my time slamming the hoi-polloi, I'm giving in to the negative side of my passion. I'm not alone: there's an entire industry of academics slamming each other's work, so much so that I found this meta-essay: "Considered Harmful" Essays Considered Harmful.

Likewise, I'm passionate about solving hard problems in elegant ways. Bingo! There's a weakness, a hacker mentality, a "he'd rather be slinging Lisp on Linux than grinding Java on Windows NT" attitude. It's true, that's how I usually feel about my work (although I don't use Lisp: a real hacker can write Scheme programs in any language).

By the way, this attitude is not restricted to language weenies. The next time you see a J2EE application with factories, persistence mechanisms, XML-ification of everything, and Inversion of Control, you'll see the handiwork of someone passionate about J2EE architecture.

The trick, I guess, is taking stock of your traits and making sure you minimize the deleterious effects of them while maximizing the benefits. Last year I joined a team working on a J2EE/Oracle application. There were some hard problems to solve, and I was more excited by the 2% of the work that were the hard problems than dismayed by the 98% of the work that was routine.

And there I'll stop. The important thing is to constantly look for the 2% of your world that fuels your passion in a positive way!

Labels:

 


Did you enjoy this post? You can find more like it at weblog.raganwald.com. Better yet, subscribe in a reader, and you'll get my essays and links of interest to software developers, with no extra charge for delivery! Did I mention that I love coffee? If you would like to “fuel” my writing, please consider buying me a large black coffee, no sugar, for just $1.47. Thanks!
Comments on “The Dark Side of the Force:
Post a Comment




<< Home
Reg Braithwaite
Selected portfolio items

What, Where & When
meshU, Toronto, May 20 / RubyFringe, Toronto, July 18–20

Share
ick.rubyforge.org / andand.rubyforge.org / unfold.rb / string_to_proc.rb / dsl_and_let.rb / comprehension.rb / lazy_lists.rb

Beauty
IS-STRICTLY-EQUIVALENT-TO-A / Spaghetti-Western Coding / Golf is a good program spoiled / Programming conventions as signals / Not all functions should be object methods / Abbreviation, Accidental Complexity, and Abstraction

The Not So Big Software Design / Writing programs for people to read / Why Why Functional Programming Matters Matters / But Y would I want to do a thing like this? / Economizing can be penny-wise and pound foolish

Work
The single most important thing you must do to improve your programming career / The Naïve Approach to Hiring People / No Disrespect / Certification? Bring It On! / Take control of your interview / Three tips for getting a job through a recruiter / My favourite interview question

Jobs

Management
Exception Handling in Software Development / What if powerful languages and idioms only work for small teams? / Bricks / Which theory fits the evidence? / Still failing, still learning / What I’ve learned from failure

Notation
(1..100).inject(&:+) / The challenge of teaching yourself a programming language / The significance of the meta-circular interpreter / I’ll take Static Typing for $800, Alex

Code
Block-Structured Javascript / Haskell, Ruby and Infinity / Closures and Higher-Order Functions

Opinion
Why Apple is more expensive than Amazon / Why we are the biggest obstacles to our own growth / Is software the documentation of business process mistakes? / We have lost control of the apparatus / What I’ve Learned From Sales I, II, III

Whimsey
Billy Martin’s Technique for Managing his Manager / Three stories about The Tao / Programming Language Stories / Why You Need a Degree to Work For BigCo