Streamline Your Company from the Bottom Up
January 5, 2007
by John S. Reid
A few weeks ago I wrote about what upper management can do to focus the company,
so this week I thought I would write about what the rest of us can do to streamline
our work environment. As stated in the
previous article
it's all about removing obstacles to getting the work done, and one of the problems
with the corporate environment that I regularly see isn't that the corporation is
too big to move quickly, it's that the people who do the work are too often stifled.
It's highly frustrating.
If you've caught the company vision and you want to be a contributor here are a
few tips that might help you gain greater productivity.
Meetings Don't Have To Be Evil Timesuckers
As a project manager I understand that some meetings are necessary, but as a programmer
I am constantly frustrated by the sheer number I attend. In order to cut down on
the number I have categorized meetings into three different types: decision-making,
brainstorming and informational. By examining these types carefully you can better
make decisions on which to attend and which to avoid.
-
Decision-Making.
It's usually considered important by other meeting attendees that everyone be present
in a decision-making meeting who has been invited. But that doesn't necessarily
mean you should attend – so here is the litmus test: If the meeting can produce
an intelligent decision without you then you don't need to be there.
If you know the other participants to be reasonable people and are familiar with
the choices on the table and you are either ambivalent of the outcome or the correct
answer is so obvious to everyone then you can most likely skip this meeting. You
may want to cast your vote in email to the meeting organizer and/or all the participants
before the meeting occurs so that they will know your point of view, but if you
do this keep it short. You do not want to have the meeting in email. “I will not
be able to attend, but I vote we choose X” is all that is necessary.
-
Brainstorming.
I usually give brainstorming meetings extra consideration and only skip them if
I know I have absolutely nothing to add. Someone has called this meeting together
in an attempt to find the solution to a problem and is asking for your input, so
it's polite to give them the courtesy of your opinion in this forum, and if this
is a project on which you will be working also then you most likely want to have
a hand in its shaping anyway. However, if it's a project that you care absolutely
nothing about and/or your manager doesn't want you to work on it then it's an easy
choice to skip it.
-
Informational.
I said above that meetings don't have to be evil timesuckers, but if any meeting
comes close it's the informational meeting. I try to skip as many of these as possible
since they usually just suck away an hour or two of time that you could be programming.
The vast majority of these meetings can be relayed in email and digested in minutes
instead of wasting the hour that an average meeting takes. Unless you have specific
questions or these meetings are mandatory don't attend them.
Where does a team meeting fit in? It's usually part brainstorming, part decision-making
and part informational. If you are on a large team you often wish you weren't there
when others are presenting because it feels like their work has no bearing on yours,
but you still need to be there to present your information to the meeting organizer.
I believe these meetings need to be better organized from the beginning and perhaps
split into a few smaller meetings. Though it might be a little less convenient for them
this doesn't need to waste any more of the organizer's time than necessary, but it
certainly doesn't waste the participants time nearly as much and chances are there
are far more participants than there are organizers. No one will miss the sections
they didn't care about.
Even more frustrating to me than the number of meetings I attend is the pace of
them. Please get to the point! One of the most frustrating aspects of a meeting
is when the presenter is not prepared, so do your part when it's your turn and prepare
well so things go quickly and smoothly. I recently spent 10 minutes in a meeting
watching a server reboot so the presenter could demo something. I wanted to pound
the desk in frustration! I have real work to do and this kind of lack of preparation
is highly inconsiderate.
Make Decisions Quickly
There comes a point where a decision needs to be made, and many people just make
decisions too slowly. I often wonder why they are waiting. Is there more information
coming? If so then waiting may be valid, but it may not also. You need to make decisions
based on enough information, but not necessarily all the information.
Some of this is going to come down to trusting your people. If your colleagues tell
you that something works a certain way and you have no reason to see it otherwise
then you should be able to make decisions based on that information. Sometimes it
won't be possible to get all the information in the time you have allotted. Sometimes
it won't be possible to get all the information at all. Look through what
you have and decide if it's enough to make a final decision (this may be the harder
of the two decisions) and then if so – do it. Don't procrastinate any further. Keep
the momentum.
Disagree And Commit
Sometimes your point of view will not win in the corporate arena of ideas, and unless
you have veto or override capability you're going to have to live with a decision
that someone else has made. There is a guy in an adjoining group with whom I have
to deal from time to time and he's just sure he's right on everything. He's one
of those people who will battle the decision to their graves, escalate to upper
management about anything and generally cause trouble even if repeatedly proven
that he's wrong.
This kind of person may have the best of intentions and he may not, but either way
he is doing the company a huge disservice by slowing down the process of getting
things done. There comes a time when it doesn't even matter if you are right. If
you have presented your case 2-3 times and despite all the arguments you can muster
the team still wants to do it another way then it's time to disagree and commit
to the decided solution. Some would say that presenting your case 3 times is too
many. The idea here again is to keep things moving.
Give Up Power Where It's Best For The Company
Are you a power player? Do you hoard projects just so your name can be attached
to them in an attempt to present to the company your status as über-manager? Stop
it! It's very frustrating to everyone else because you're slowing things down. If
you are already managing more than one project and another project comes along think
twice before taking it on simultaneously. Would another group be better suited for
the job? Would another manager? If you really feel you must take on the additional
work is there a project you can hand off to one of your direct reports? That would
allow one of your people the chance to grow and still keep the project in your organization.
Streamline Processes
Where I work right now they have a special affinity for something called the “Work
Week”. In meetings most if not all dates are expressed in terms of WW instead of
by the actual date. To facilitate this calendar cards have been printed for each
employee that they can attach to their name badge for easy reference. When I asked
my manager why we do this he explained that he thought it has something to
do with accounting and financial reporting, but even he wasn't sure. I don't buy
it.
When is WW37? Do you know off the top of your head? I mean, we can do the math,
but why? For that matter when is WW1? December 31 was Sunday, so does that make
the first week of January WW52, WW53 or WW1? Expressing dates in work weeks just
isn't natural for people. If you convey your deadlines in terms of work weeks you
have to calculate it out and then we have to reverse the process to figure out what
you mean. It's double the effort. People think in terms of the calendar.
This may seem like a small thing, but it's a perfect example of a process that can
be easily streamlined. Throw your work week card away and the next time somebody
gives you a work week deadline ask them what date that is. If enough people do this
no one will use WW anymore. And you may even save the company money on printing
and lamination.
Don't Complain Without A Solution
Just a couple of days ago I was forwarded an email thread that had grown out of
control. In the course of this thread was a comment that really irked me because
it provided absolutely no value to the conversation whatsoever. The writer stated
that the suggested solution was tried years ago on a different technology and was
scrapped “once it was proven to be impossible.”
Well they didn't ask me. And they didn't ask the thousands of developers more talented
than I am. And if they did I'm sure they would have heard the same thing I would
have told them: nothing is impossible in software.
In truth one of the reasons this irked me so much was that the source of the comment
had developed a pattern of negativism and doom where anything outside the status quo
is immediately rejected as not possible. It's a bit arrogant to assume that
your failure in the past represents the future for someone else, especially when
the technology has changed and you may be a lousy programmer in the first place. I know
many programmers who make their living on coding things that others couldn't
do. That doesn't necessarily mean they know the language better - they just search
harder for the answers.
Bringing up past failures is valid, but you don't have to do it with such a negative
attitude. Someone out there is a better programmer than you and can probably figure
it out. So before you write that whiny email think hard about possible solutions
so you can actually contribute to the conversation. (For what it's worth there did
turn out to be an easy solution in the new technology.)
See The Big Picture
Sometimes it's difficult to imagine how your piece can make any difference to the
company's bottom line, but if you can see the ripple your project can make then
it takes on a whole new level of importance. And everyone wants to be working on
something important. Connect the dots from your project all the way to sales and
you'll take on a new level of pride when you start to see how your work can impact
revenue.
Your work is important and you can make a difference in the company. Catch the vision
that upper management is selling and find ways to implement it at your level, wherever
that may be. Speed of execution is important so keep things moving. Have some energy
and excitement about it! Remove those roadblocks and streamline your processes across
the board. Is there waste? Get rid of it! You don't need it!
Now get back to work. ;)