# Making Your Boss Happy Is a False Objective

Source: https://www.yegor256.com/2015/01/26/happy-boss-false-objective.html

We all have bosses. We also have customers who pay us for running
their software projects. They are my bosses for the time of the contract. I'm also
acting as a boss for developers who are working for [Zerocracy](https://www.zerocracy.com).
It is obvious that a good employee/contractor is one who makes his
boss/customer happy. But only a bad employee works toward
this goal. Trying to make your boss happy is a false target that,
if pursued, ruins the project. A professional employee works
for the project, not for the boss.


{% jb_picture_body %}

We all work on _projects_ as developers, designers, programmers,
[managers]({% pst 2015/sep/2015-09-22-micromanagement %}),
testers, you name it. The boss is also a member of the project. More
formally, he or she is a _stakeholder_, same as every one of us. Each stakeholder
has his own _needs_ for the project: 1) Jeff, the developer, wants to learn Scala
and collect his paychecks every two weeks; 2) Sally, the product owner,
wants to attend an expo in Paris and also collect her paychecks;
3) Bob, the CTO, wants to raise round A funding and collect a big paycheck; etc.

The project has its own _objectives_, to achieve 1 million downloads
in less than six months and spend under $300,000, for example.
This is what the project works for. This is what all of us are here for.

Our personal needs may be fully satisfied
while we're all working toward this goal, or some of them may
be sacrificed. I mean all of us, including the boss, whoever he or she is,
either a CTO, a co-founder, a
[project manager]({% pst 2016/may/2016-05-24-who-is-project-manager %}), or a team lead.

The project is the source of our checks. Not the CFO.

{% quote A true professional team player feels himself equal to all other members of the project, no matter how high they are in the hierarchy %}

The CFO is a stakeholder, like everyone else. The project gives him more
power than others because it's necessary for the whole mechanism to
work properly. Every project member has his or her own _roles and responsibilities_.
I write code; the CFO writes checks. I eat at McDonald's; he drives
a Jaguar. We have different needs, and we both agreed that the project
would satisfy them. Otherwise we wouldn't be here, right?

We're all parts of a mechanism called a "project," which works according
to the rules and principles of
[_project management_]({% pst 2016/may/2016-05-24-who-is-project-manager %})
whether we are aware of them or not. Whether we have a
[project manager]({% pst 2016/may/2016-05-24-who-is-project-manager %}) or not. Even if we violate
all of them and manage ourselves in total chaos, we still have a scope,
[cost]({% pst 2015/jun/2015-06-02-how-to-estimate-software-cost %}),
schedule, and all other attributes of project management.

A professional and savvy boss understands that his role in the mechanism
is to clearly define project objectives and make sure everybody's needs are
aligned with those objectives. In a properly managed and organized project,
everybody sees and feels how his or her personal needs are satisfied
when the project
[achieves]({% pst 2015/feb/2015-02-12-top-down-design %})
its objectives: Jeff learns Scala, Sally
sees Paris, and Bob buys a new house.

However, if Jeff wants to learn Scala and we're
developing an iOS application, that is a problem for the boss to resolve.
Either convince Jeff to fall in love with Swift (I doubt that's possible)
or replace him with someone who is already in love with it. It's clear that
a professional boss will resort to such a tragic act as
[firing]({% pst 2015/sep/2015-09-16-how-to-fire-someone-right %}) Jeff
not because of his personal feelings towards Jeff but because
they are both working toward the project objectives. Jeff and the boss
will both understand that Jeff's need to learn Scala is not aligned
with the objective of the project.

It is the CTO's responsibility to do something about Jeff when his personal
needs become misaligned with the objectives of the project that is paying
his salary. A professional CEO understands that and
always acts in the best interest of the project, not of himself or
anyone else personally.

I believe a professional team player does two things:
_obeys and resists_.

First, you have to understand that the boss is here in order
to help you organize your time, your tasks, your communications,
your plans, etc. He knows more about the project and uses that
information to help you do your job. Your real boss is the project;
the boss you interact with is just a hired manager who translates
project objectives into plans, instructions, schedules, etc.

{% quote Being a professional team player requires a constant readiness to resist each and every instruction %}

This boss is your colleague who does management while you're
writing code. You're both equal. You and he are in the same boat. Your
functions are different than his; that's all. You're not working
_for_ him but _with_ him on a project. A true professional team player
feels himself equal to all other members of the project, no matter
how high they are in the hierarchy.

At the same time, he strictly follows the process and
obeys all project rules and instructions, not because he is afraid of
being fired but because he wants the project to succeed.

Second, being a professional team player requires a constant readiness
to resist each and every instruction if you feel it contradicts
the project objectives. A true professional doesn't work for a boss.
He doesn't want to make the boss happy. He actually doesn't care whether the
boss is happy or not. He knows that the real boss is the project and tries
to make the project successful and ... happy.

A true professional always works for himself. Jeff wants to learn Scala
and earn a certain amount of cash. He joined the project in order to satisfy these
needs. If the project fails, Jeff won't get the money and won't fully learn Scala.
So if the boss tells Jeff to do something that may jeopardize the
project's success, will Jeff do it? Does he care about disappointing the boss?
Absolutely not. All he cares about is the project's success, which translates to his
personal success.

Thus, making your boss happy is a goal for the immature, fearsome, lazy, and weak.
Making your project successful is an objective for professional,
strong, mature, and brave team players.
