Product Thinking · · 8 min read
How enterprise products become harder to use, harder to change, and harder to explain.
If you work on an enterprise product, you have probably felt this pressure before. A client asks for something. The request sounds fair. Someone in the room wants to protect the relationship, keep the sale moving, or look flexible, and the answer arrives a little too quickly.
Yes.
That one word can feel helpful in the moment. Over months and years, though, a string of reasonable yeses can pull the product away from what it was built to do.
Enterprise products rarely become complicated in one dramatic moment. They become complicated one reasonable request at a time.
Listening to clients is part of the job. These businesses are paying for a service, and they often bring real problems that deserve proper attention. The trouble starts when listening turns into order-taking.
A client says, “Can you add this?” The team says yes. The request moves toward the roadmap before anyone has properly asked what problem sits underneath it.
That can make the client feel heard. It can protect the relationship and help a sale. But a product team is not a menu where clients pick what they want and wait for it to arrive. A stronger relationship looks more like a careful kitchen. The team still serves the people in front of them, but it also works out what they need, what problem they are trying to solve, and what kind of experience will actually create value.
The client is not wrong for asking. They may simply be describing a symptom rather than the root problem. The real value of a product team is not only that it can build what was requested. It is that it can help work out whether that request is the right thing to build.
Enterprise products often start with a clear purpose. They solve a real problem for a clear group of people. Early on, the product usually has a shape. It is not always simple, because enterprise work is rarely simple, but people can still explain what it does, sell what it is for, and design around known journeys.
Then the requests begin. One client needs a new setting. Another needs a different workflow. A third needs a rule that only applies to their organisation. Someone asks for a feature because their internal process works in a very specific way, and someone else asks for almost the same feature with slightly different logic.
When too many of those requests become features too quickly, the product starts to lose its shape. One client has one set of rules. Another has a hidden setting that changes how a feature behaves. Another has a workflow that only appears when a specific condition is switched on. Before long, the product is no longer one clear thing. It becomes many slightly different products living inside the same shell.
That is hard on users. They may see features that do not feel relevant to them, meet behaviours that only exist for another client, or open something familiar that behaves in a strange way. A schedule should behave like a schedule. A task list should behave like a task list. Users bring expectations from the tools they already use every day, and this is where Jacob’s Law matters. People spend most of their time in other products, so they carry those patterns into yours.
If an enterprise product takes something familiar and fills it with too many niche behaviours, the feature can stop feeling familiar. It might still be called a schedule, but if it no longer works the way people expect a schedule to work, users have to relearn something that should have felt natural. That is where complexity starts to damage usability.
Enterprise products need some flexibility. Different organisations have different structures, permissions, and compliance needs. A product that cannot flex at all may struggle to serve real businesses. So configuration is not the enemy.
The danger is harmful customisation.
Useful configuration supports a wider pattern. If several clients need the same control, setting, or workflow variation, that may be a sign the product should support the difference properly. Harmful customisation bends the product around one narrow situation. It adds a rule, setting, or flow that only really exists for one client’s internal process. It might solve an immediate problem, but it also adds another branch to the product.
That branch then has to be designed, built, tested, and supported. A feature is not just the first release. It becomes part of the product’s future. Every later change has to ask what happens if this setting is on, if this client does not have the feature, or if an old exception still exists. The more hidden rules a product carries, the harder it becomes to move.
Client-specific complexity does not only live in the interface. It spreads through the whole team. Designers have to think through more states. Developers have to build around more conditions. Support have to explain more behaviours. Product managers have to make roadmap decisions through a fog of exceptions.
The product becomes harder to change because nobody can touch one part without worrying about what it might break somewhere else. That slows teams down. It also makes the product harder to explain. If a new employee needs a long briefing before they understand how the product works, that is a signal. If a new user needs training just to understand the basic shape of the product, that is a signal too.
Training can help in complex enterprise environments. It should not become a patch for a product that no longer explains itself. A good product still needs to help people understand where they are, what they can do, and why something behaves the way it does.
Enterprise products are complex because enterprise work is complex. There are real workflows, real risks, and real business rules. The answer is not to pretend everything can be made tiny and simple.
Simplicity here means something more practical. It means knowing which tasks deserve the clearest path. If most users come to complete a small number of common tasks, those journeys should not be buried under configuration, old decisions, and client-specific clutter. They should stay close to the surface.
This is why top tasks matter. Teams need to keep asking what users are actually coming to do, how easy it is for them to get there, and whether they feel they finished what they needed. Those questions show whether the product is still serving its most important journeys.
Top tasks are not fixed forever. They move as the product, the market, and the users change. Simplicity needs maintenance. It is not one big clean-up. It is an ongoing practice of keeping the important work clear. Without that practice, the product can keep optimising for old assumptions while users have already moved somewhere else.
When a client asks for something new, the best answer is not always yes or no. Sometimes the best answer is, “Let’s understand this properly.”
That might mean a workshop, a discovery session, or a structured conversation with the client and the product team. The format matters less than the intention. The goal is to create space between the request and the roadmap. In that space, the team can ask what problem they are trying to solve, whether this is the root issue or only a cover for something deeper, and whether the change would help other clients too. They can also ask whether it supports the core purpose of the product, whether an existing pattern already solves it, and whether it would make the product easier or harder to understand.
Those questions protect the product from becoming reactive. They also help the client feel more deeply understood. Instead of simply taking the order, the team shows care for the client’s business and the wider product at the same time. That is where trust can grow.
This is not an argument for ignoring clients. It is the opposite. It is about listening better.
A client request should be treated as a signal. It might point to a real problem, a broken workflow, or a deeper business need. But the request itself is not always the solution. The job of the product team is to translate the request into a product problem before it becomes a feature.
That is how enterprise products protect their shape. It is how teams keep complexity useful rather than harmful. The best product teams do not make clients feel ignored. They help them feel understood deeply enough that the solution becomes better than the original request.
They can say, “We care about your business, and we want to help. But we also need to understand this properly so we can create something that works for you and for the wider product.”
That is not saying no.
That is product thinking.
Because enterprise products become dangerous when they take too many orders and forget what they are here to serve.