# Are You a Micromanager?

Source: https://www.yegor256.com/2015/09/22/micromanagement.html

[Micromanagement](https://en.wikipedia.org/wiki/Micromanagement),
according to Wikipedia at the time of this writing, is "a management style
whereby a manager closely _observes_ or _controls_ the work of subordinates
or employees." Everyone knows micromanagement is evil, but what
could be wrong with closely observing or controlling people's work? Nothing.
Observing and
[controlling]({% pst 2016/sep/2016-09-27-command-control-innovate %})
is not what's so bad about micromanagement. It
is something completely different.


{% jb_picture_body %}

There are [tons of articles](https://www.google.com/search?q=micromanagement)
about micromanagement. Most of them emphasize that the "micro" prefix prescribes
the size of the tasks being managed, meaning a good manager doesn't care
about the small stuff while a micromanager employs
"excessive control or attention to details," as
[Merriam-Webster](https://www.merriam-webster.com/dictionary/micromanage) says.

{% quote A good manager declares what needs to be done, never telling me how I must achieve it %}

It seems that in order to become a good manager, one should just
stop paying attention to details. Huh?
What could be worse than a manager who doesn't pay attention to details?

Micromanagement has nothing to do with the details observed or the amount
of control a manager exerts over subordinates. Instead, it is all about
_how_ the details are observed and control is exercised. A micromanager
gives instructions while a good manager defines goals and rules.

Micro-managers define _algorithms_ for achieving results and insist
on them being implemented according to their will. This is what
a micromanager would sound like:

```text
- Could you please stop what you're doing now
  and install Nginx on a new server? I beg you,
  don't do anything else until it's done.
```

This is how a good manager would delegate a similar task:

```text
- Hey, the server with Nginx configured must
  be up and running by 6 p.m. I'm counting on you.
```

{% youtube ZVn7ufg-tk0 %}

Pay attention to how polite our micromanager is and how rude the good manager is.
However, it's obvious that the first one is extremely annoying while
the second doesn't irritate us at all. Because it's all about how
the task is defined---as an _algorithm_ or as a _goal with rules_.

Micro-managers treat me as a dumb executor of their will. A micromanager
is [_imperative_](https://en.wikipedia.org/wiki/Imperative_programming).
A good manager, on the other hand, is
[_declarative_](https://en.wikipedia.org/wiki/Declarative_programming). A good manager
declares what needs to be done, never telling me how I must achieve it.

{% youtube 0Jte_LGR5Zk %}

By the way, there is---surprisingly---a lot in common between management and
object-oriented programming. Good object-oriented programming is
[also declarative]({% pst 2015/feb/2015-02-20-utility-classes-vs-functional-programming %}),
not imperative.

Thus, this "micro" prefix is not really about the size of the tasks a manager
keeps under control. It is about what a manager wants to see
inside them---a black box or a glass box under a _microscope_.

{% quote A good manager pays extreme attention to defining quality standards for my work %}

A good manager doesn't care about what I'm doing now, what tasks I'm working on,
or what my plans, problems, and risks are. Instead, a good manager cares about my
_results_, to a very specific level of details. A good manager pays extreme
attention to defining quality standards for my work, clearly explaining
expectations to me, and explicitly defining the rules of failure and success. A good
manager makes the path ahead of me very clear. With a good manager, I know
exactly what results are expected and what will happen if I fail or
succeed.

Thus, to be a good manager, you should never tell your subordinates _how_
to complete their tasks. Instead, you should define _what_ solutions and results
are expected. And, of course, what will happen in the case of success or failure.

<blockquote class="twitter-tweet" data-lang="en"><p lang="en" dir="ltr">Micromanagement is when they tell you what to do, instead of what is the expected result to be achieved. Does your boss practice this? <a href="https://twitter.com/hashtag/codeahead?src=hash&amp;ref_src=twsrc%5Etfw">#codeahead</a></p>&mdash; Yegor Bugayenko (@yegor256) <a href="https://twitter.com/yegor256/status/1091958080139595776?ref_src=twsrc%5Etfw">February 3, 2019</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
