Do you really know what you are optimizing for?

When did you make your last trade-off?

French fries OR take the vegetables and maybe a dessert. 
A less expensive hotel BUT a day or two longer in a more expensive area.

Life is full of trade-offs. 
„You can‘t have your cake and eat it too.“
So what do you do?
Figure out your priorities.

What is REALLY important?
What do I REALLY want? 
Or better, what do I REALLY NEED?
If everything is important, nothing is.

A question I often ask is „what are we optimizing for?

I guess I sound like a broken record. 
At work people connect me with that question. 
„Now Brandon would ask – What are we optimizing for?

I don‘t think the question itself is important.

In fact, the answer isn‘t always the most important thing. 
It is the process of stopping to think about the problem.

Love Problems not (only) Solutions

We love solutions. 
People love solutions.
Managers love solutions.

But what are we solving?
If we don‘t know what the problem is, how can we know the solution?

Each “Solution” introduces new “Problems”


Each solution introduces new problems.
There are no perfect solutions, but perhaps there is a least bad one.
How do you pick the least bad solution (aka „best“ solution)?

You know what you are optimzing for.
You optimize for that.
You willingly give up, or trade-off what is less important.
In fact, your solution will introduce new problems.

This applies to organizational design, team structures, technical architecture, etc.
These are all types of „systems“.
You can‘t have your cake and eat it too.

System Quality Attributes and Trade-Offs

The concept of quality attributes applies to software and systems.
In some cases, some quality attributes are like arch enemies.
They fight each other. 
You optimize for one and it’s arch enemy fights back.

Optimize for security and usability comes knocking.
Reusability sounds easy but efficiency might get upset.
Then you optimize for performance and have to sacrifice portability.

You conscientiously decide what you optimize for.
Then try to find the least bad solution for the whole.

The concept of trade-offs and quality attributes was a very interesting part of the training I have done with the Software Engineering Institute, for instance ATAM Architecture Trade-off Analysis Method as well as Quality Attribute Workshops.

Organizational Solutions ALWAYS have Trade-Offs

But the same concept of trade-offs applies to „Transformation“ and Organizational Design. 
There are no „silver bullets“ to a perfect organizational design.

Avoid the kool-aid. 
They all have trade-offs.
No out of the box framework or methodology will be the perfect solution to your organization. 

So what are you optimizing for?

If you take an attribute, and you picture two extremes, which one would you prefer?

Let‘s look at empowerment.
What would you prefer?
Your people never go in the “wrong” direction, and therefore are slower to align and ask for permission?
OR they take charge and occasionally go in the “wrong” direction?

What about reuse?
Do you prefer never having any redundant solutions and therefore things will be slower, require more discussion, take longer?
OR would you rather be quicker and sometimes build redundant solutions?

Of course you can mitigate some of these things.
You can have marketplaces and landscape views.
You can have „lean“ guardrails“, governance bodies and exception processes.

But if you try to have both perfectly, you generally get the worst of both options without the benefits. 

So you have to decide: What are we optimizing for.
Then do it, diligently, even fanatically.
Then you will at least reap some of the benefits.

Consultants and vendors selling “The Perfect Solution”

Consultants and software vendors will often sell you something as „the perfect solution“.
Don‘t believe them.

Ask them what does this solution optimize for?
What problem are they solving?
What did they trade-off?
What are the disadvantages of their approach?
What are the technical or organizational requirements for this to work well?

This will help you understand the problem their solution solves and what it’s trade-offs are.
Is this the same problem you want or need to solve?
Will their solution proposal fit in your system?
What new problems will this introduce?

Enjoy your stay in the Problem Space

Spend more time in the problem space. 

Understand what you are optimizing for.

Then the journey to the solution will be more direct, and the outcomes more impactful.

Leave a Reply

Your email address will not be published. Required fields are marked *