Business

Gut-feeling-free decision-making in IT development

Gut-feeling-free decision-making in IT development
Gut-feeling-free decision-making in IT development

In both our personal and professional lives, our decision-making process often relies on a blend of knowledge, experience, and intuition. Within the realm of IT, we navigate the complexities of software and digital products daily. Through encountering various challenges and successes, we've honed our understanding of what constitutes effective user experiences. It's essential to acknowledge that we, as individuals are not average users of the products we are building. In this article, I'll share a recent experience within my team that highlights the interplay between data-driven decisions and gut instinct.

Where does the story begin?

Not long ago, we were tackling a new feature for the app: a redesign of the Sign-in flow. It wasn't anything groundbreaking; more like a refresh to give it a fresh look rather than starting from scratch. The process leading up to development went smoothly, with the usual back and forth among the team. Eventually, everyone reached a consensus, and the development began.

Chapter 1 - Development

It all started with the Sign-In Page. We implemented the UI exactly as it appeared in the designs. Tests were written, and all passed successfully. Since we're building the application using Flutter, we utilize golden tests, including localized tests for every language supported in the app. Now it's time to launch the app and verify that the code works. I open the login screen, tap on the login field, the keyboard pops up, enter the email, password, and... well, what next?

Cliffhanger

There is no Sign-In Button on the screen?! Frozen for a while, trying to find a way out of this escape room. Okay… phew… riddle solved - the keyboard is closed and there is a button, I'm clicking it and I’m logged into my account.

Chapter 2 - Feelings

Confusion… helplessness… those aren't the feelings any user should ever feel when using the app. It’s clear that we need to do something about that. What are the options? There are several possibilities to consider. But which one is the right one? Maybe none, maybe all of them. We should discuss it within the Team.

Chapter 3 - Team

Capturing a video of the issue, drafting a Slack message outlining proposed solutions along with their advantages, disadvantages, and alternative options, and… posting it. It was supposed to help me. After a quite long discussion in which we shared our opinions and experiences, guidelines, and what we appreciate and dislike in other apps, we eventually reached an agreement. While not everyone may have been entirely satisfied, we did have a decision. After making some adjustments, it's now ready to be implemented.

Plot twist should be where no one expects it to be

I know what you're thinking! This is the moment when something inevitably goes wrong, but you couldn't be more wrong!

After addressing some comments during the code review, we merged the changes. Then, we tackled all other tasks within the scope, which went smoothly, and the app was ready for release. Oh, but hold on, the QA Team still needed to do the Sanity Check before the release, and even that went off without a hitch! So, the new version is ready for deployment.

Chapter 4 - He

A few days after releasing the feature, while I was reviewing our backlog… he came in, all in white, and a new bug was reported. Something is not working on the Sign-In Page. Guess what? The other QA reported that the behavior when the keyboard pops up is incorrect, and it’s impossible to log in.

So who’s right?

Here we go again, starting exactly the same conversation we had a couple of days ago, the same arguments, just different people. And this time, too, each of us was influenced by our own experiences, intuition, or expectations. But surely both situations are identical? No, they're not! This time, we also have users in the equation; after all, our new Sign-In is live, so let's see how they're coping, finally, we have added analytics so that we gain more insights.

Old Dear Analytics

So, I checked the analytics, and what did I find? Over the past few days, 100% of users who opened the Sign-In Page clicked on the Sign-In button. Checkmate—we have a winner. This settles the argument. We no longer need to rely solely on intuition; we have real user data showing that our page works, though not necessarily exactly as intended. Admittedly, this doesn't definitively answer whether the UX is the best or if users encounter difficulties during sign-in. However, maintaining the current setup is the right call as long as users accomplish their goals. Of course, we'll continue to monitor the analytics for any changes, and if necessary, we'll consider adjustments accordingly.

Finale

When we make decisions, we base them on various factors. Knowledge and experience certainly help, but there are also situations where it's worth trusting our intuition. However, when building digital products used by hundreds, thousands, or even millions of people, we should base our decisions on real data and results – they almost never lie. What works in one product may not necessarily work in ours, that’s why sometimes our experience can let us down. Also, we need to remember that the people who build the product are not regular users of the product, and we are most likely not using it as regular users. This means that whenever something might be suitable for us, it doesn’t have to be for the users.