Developers want to create systems and software that are technically perfect: they need to work flawlessly, main structures have to be logical and the system has to be secure. But what seems logical to us, may not always be the case for the user. And this is a bigger challenge than you would think.

In the last couple of months, we at Fusix have been upgrading our network and revamping our customer portal at the same time. Today, portal is still pretty basic: customers can get information about bandwidth usage, they can adjust DNS settings and change their contact details. Many extensions are coming up – for instance, customers will be able to set their own anti-DDoS rules via the portal. Pretty cool stuff, right?

For this upgrade I have had a lot of ideas on how to implement the technical parts of it and how it all should function. But when I talked to the developers about it, all it took was one or two questions from them to make me realise that my proposed workflow would complicate matters for the user, in the sense that it would become a very illogical, unnatural way of working for the user. And then it hit me.

We as developers often forget users when we design and develop systems and software. Usability often comes second. When that happens, people don’t want to use it. The frontend becomes so unwieldy, that users will avoid to use it, even though the backend is sound.

Users who will have to work with the systems or software all day, every day, want to do this effortlessly and efficiently. So while for you (as an engineer) it might seem logical that a certain button goes on the left of the window: if that means an extra action for the user, for them it’s not. The same principle for databases – every day we find examples where the same data is stored in two systems, which means inconsistencies can occur. We are changing our systems to store all data once and once only.

These upgrades to our own customer portal have taught me a valuable lesson: when you develop something new, start think from the perspective of the user first instead of thinking about it from a technical standpoint. ‘Our’ way might be the best or the most logic way from a technical stance, that doesn’t mean it is the easiest way for the user. After all, they have to work with it most of the time, so let’s make it easy to use for them.