How to Stop Building Software in a Bubble
- Arany Mák

- Jul 15
- 3 min read
Updated: Nov 8
In the world of software development, there's a subtle and dangerous trap teams often fall into: the illusion of clarity. You're building a product day in and day out. You know its buttons, the edge cases, the backend gymnastics it pulls off, and the long, winding roadmap it's on. But here's the thing, your product can't see itself. And neither can you, not fully.

Let’s get practical. You’re working on a CRM platform, or maybe a nifty B2B SaaS tool. You've been refining the backlog, collaborating with the team on features, reviewing design iterations, and testing flows. You’re in the zone. You’ve internalised what every button does, where each feature lives, and what users should understand. And yet, that exact knowledge is the blindfold.
Teams build based on what they know, not what the user doesn’t. That gap is where usability friction, onboarding drop-off, and retention killers quietly take root.
Take tooltips, for example. In-house teams often say, "This screen is self-explanatory." But is it? You designed it, you know what the data labels mean. An outsider sees five dropdowns, six buttons, three charts, and a vague headline. The same applies to naming conventions. Internally, everyone’s aligned: “It’s a project, not a workspace.” But new users call it a workspace because every other app they use does. Guess who wins that battle? Not you.
This is the cognitive bias at play, the curse of knowledge. Once you know something, it becomes almost impossible to imagine not knowing it. Engineers, product managers, and designers all get infected. Your product becomes a mirror of your internal assumptions, which users never signed up for.

Research backs this up. A Nielsen Norman study found that even the most experienced UX designers consistently misjudge usability without user testing. The deeper your team is embedded in the product, the more abstracted from real-user friction you become. You don't just miss obvious UX hurdles, you rationalise them away.
So what’s the antidote? You need external feedback loops, early and often.
Forget grand quarterly usability studies. Bring in fresh eyes once a sprint. Watch how a new team member navigates your product with zero context. Onboard a beta tester with no walkthrough. Run five-minute guerrilla tests, no script, no guidance. Just observe.
Even better: recruit the "wrong" audience once in a while. People outside your ideal persona can expose assumptions you didn’t know you made. Their confusion is your diagnostic tool. Their questions are signals. If someone stumbles, the UI should have been the answer, not the docs.
Go deeper. If you're launching a feature, avoid asking users if they "like" it. Ask what they thought it did. Ask how they'd explain it to a friend. If their explanation doesn't match your intention, you’ve got a product storytelling problem.
Don’t underestimate the power of customer support logs, either. They’re not noise, they're a map of cognitive friction. If ten users ask how to generate a report, that’s not a training issue. That’s your product asking to be redesigned.
Here's a practical trick: rotate roles. Have engineers write onboarding docs. Let designers run customer support for a day. This forced empathy reveals what’s broken faster than any dashboard metric can.

And please, don’t over-polish before testing. Polished doesn’t mean intuitive. Users are more honest when your product still looks like it’s figuring itself out. Once it seems finished, they'll try harder to adapt rather than critique, and you lose valuable insight.
This isn’t about doubting your team. It’s about building resilience into your process. Your product can’t see itself because it doesn’t experience itself. It doesn’t know the mental model a user brought from their last app. It doesn’t hear the sigh after clicking through three confusing screens. It doesn’t feel the drop-off rate in an activation funnel. But someone outside your team can. And if you don’t ask, you won’t know.
So, next time you’re sure a feature is ready, ask yourself: Who told you that? If the answer is just your team, or worse, just you, then you’re still blind. Software doesn’t succeed because it’s smart. It succeeds because it’s understood.
Remember: your product can’t see itself. But your users can. Let them show you.



Comments