Woo! Excellent, excellent advice. I wish I had it when
I found myself in that position.
When people listen to you, you're likely to suddenly
find yourself in middle of political battles as power
above you is sought from below you.
You're also going to be expected to speak on the behalf
of people below you. I can't
say enough good things about "The Mythical Man Month",
especially for the latter case. Politics I've had the
hardest time with in the past. A few tips (YMMV):
- Don't let people mistakenly think that you're a threat to them if you're not. Show them soft underbelly - be submissive - actively work to calm their fears. People hate change and they hate losing control.
- Know your friends. One isn't enough - you need redundancy. They have their own web of interests,
and with three or more, you get parity.
- Send spies. People suck. It is a matter of time before
someone else desides that you stand between them and
fame and glory. When you get power because you're
worthy of it, you're an extreme rarity. Most people get
it because they're good at politics. I know - we're
bad at politics, they're bad at everything else -
life is strange. The only answer is not to fall too
easily when a political attack is made.
- When attacked, have documentation - written,
witnesses, edicts from above, track records. This takes
time, and it robs you of time better spent on projects,
but it is the price of being a router instead of a node.
Or a firewall rather than a node. Know what your
attacker is afraid of - the truth that can mortally
wound them - and use it against them if they don't
back down quickly and quietly.
- Those above you don't know who to listen to, but they
tend not to listen to the people that seem to want to
be listened to, so don't try too hard when taking people
out. Make it look like an accident. Use henchmen to
blow your attackers covers, or just happen to stumble
on the tip of iceberg of their undoing at a calculated
moment, so they have a chance to backdown before it
gets bloody. The point of this is that you don't want
to be the bad guy.
- Don't scapegoat people, don't block people below
you from advancing, don't create vendettas,
don't try to take out people who are above you
(unless they are doing something illegal), and don't
try to make a fortune off of your company. These are
all things that people routinely do, but you're above
that - you have real abilities. People who do this
are frauds, who get in, rape the company before they're
exposed, and expected to be run afoul of politics
sooner or later.
- Rise technically as well as politically - go see
Damian Conway and the other perl greats speak. Read
a bit about project management - project management is
very, very hard. Learn how objects are really meant to
be used - not the 5 cent, cheezeball, dumbed down
perl conceptualization of objects. Learn algorithm
theory if you don't already. If people are going to be
promoting you to your level of incompetency, fight
back - become more competent.
- Hire a mentor. If you're ever given a chance, hire
an employee who has been around the block more than you.
Make sure they have a good attitude and a good personality,
though. One of the greatest things that can happen to
any programmer is that they find themselves surrounded
by better programmers who are ready to teach.
It is awe inspiring and humbling, but you'll learn a
lot more a lot quicker than you possibly could any
other way. If you have the chance to engineer this, do
so.
- As mentioned, mentor people. Desciples/spies/students
are useful in another way, too - offsetting workload
from yourself. You'll do like was done to you - give
people work beyond what they're really capable of.
This is how things work. You can't do everything, so
this is the only alternative. By giving it to people
you know and trust, you can identify when they're in
over their head, and speak openly about the fact that
they have to raise to the challenge. When doing this,
always let people out if they decide they don't want
the respobility - and I mean let them out graciously.
Someone else will want a pass at it. The ultimate
state to be in is to have a hand chosen, hand trained
crop of talent that you can trust with anything.
It is like paid retirement. No, I've never accomplished
this, but I've known people who have. Perhaps a better
analogy is being the CEO of a company within a company.
This goes against the natural instinct of a programmer
to keep thier hands in as many things as possible, but
dire consequences will befall you if you ignore this
advice and try to do it all.
While I really do mean this stuff, this note was
written in fun - you should have fun as a programmer
who isn't a bottom feeder. If you can't have fun, what
good is your job? Politics doesn't suck so bad when
you see it for what it is and treat it like the stupid
but unavoidable waste of time that it is.
Cheers!
-scott | [reply] |