Even if you don’t work in technology, you engage in user experiences every time you interact with anything that’s been designed by humanity. It has a lot to do with how we feel about the way we engage with our surroundings, and it’s at the top of the list when it comes to making things that people find useful.

What is UX?

For anyone not involved in tech, UX just means “user experience.” It refers to the entire set of interactions a user can have with a piece of software. It’s usually broken down into “user stories,” which describe a typical set of actions a user might make in order to solve a problem. Basically, it’s how an app “feels” when you use it - is it easy to understand, does it help solve a problem, and does it look good? A light switch is a user experience: you must interact with a piece of technology to change the state of your environment, and it provides a simple, intuitive interface to help you do that.

Why does it matter?

You can probably grasp why this is an important thing to consider, intuitively. In the modern age, interactions with technology are ubiquitous. With software and the internet, we interact with countless user experiences daily, and from a user’s perspective, this is the sum total of what they care about.

But what are the other perspectives?

Well, you’ve got the developers (the ones writing the code), who want software to have “clean” code that’s maintainable. I’ll try to be brief, because there are a lot of things to say about that statement, but essentially, developers don’t want to have to struggle to understand how the software does what it does, and they want it built in a way where you can extend it or add to it without rebuilding everything that came before.

Then you’ve got product managers, who want software that keeps users using the software. There are many different ways to build something that people continue to use, but not all of them deliver a good user experience. Product managers want to build software that keeps getting more users who keep paying to use it.

You’ve also probably got sales folks, who want new things all the time. They want to be able to say “yes” to prospective customers, and that might mean creating a user experience that tries to accommodate too many user stories, or offers features that no one will actually use.

You might also have investors, who want to see a return on their investment. That might mean revenue (eventually), but in the technology world, often growth can be prioritized over revenue in the initial stages of a business. After all, if you have investors, then you don’t need revenue until you’ve burned through your existing capital. During this high-growth phase, UX is definitly high up on the priority list.

When does that change?

When investors are looking for a return on their initial investment, they want to see revenue. After all, tech is a business, and the purpose of a business (to investors) is to generate money. When the needs of investors become important to decision-makers (or when decision-makers are the investors, because stock options), all of a sudden, the users become a resource to be exploited, rather than the key value to the software.

In my decade of working in tech, I’ve witnessed small, high-growth apps get acquired by large organizations, causing a seismic shift in the business model, which ultimately leads to a poor user experience. Some large tech companies are now known more for all the apps they’ve bought and killed, rather than for providing innovative, well designed software that’s fun to use.

UX is top

As a developer, delivering a good user experience is the top priority, because ultimately, software is about solving problems for people. Sure, you may be successful by other metrics, and indeed many software companies are successful despite their horrendous UX. But it’s always going to be the thing that makes software good.

If your aim is to build software that will keep users coming back of their own volition, deliver the best UX possible.

Anyone who wants developers to de-prioritize user experience is actively making software worse to use.