A Better Way to Add Users

Recently, we introduced a new method for adding new users. The primary purpose? To make it quicker and easier for admin users to add new users to the platform.

New user  4

We’ve taken the burden of creating new users off of the administrator or manager, and instead simplified the process so that the new user can set up their own account. Simply enter the email addresses of all new users, and we’ll send a set up link to their inbox. From there, set up couldn’t be simpler. The new user will set up their username and password, associate their username with a phone code, and even configure their Lead Box.

The User tool (mx_users) now syncs with the Staff tool (mx_phonecode) to allow a staff member and their phone code data to be associated with a username for the platform. This allows for a couple of  things: for staff members to log into the platform and see phone skills data directly related to their calls and to allow us to reach out directly to staff members via email or phone number to help them improve their phone skills.

User Set up  4

 

Design of the mx_users was rethought as well. Because we may be working with users that have never seen our product before, but just got an email to create their profile, we knew we wanted the design to be as simple as possible. Our design team changed the tool to use a walk-through format to guide the new user through setup one step at a time.

It’s also important that new users finish their user setup and don’t abandon it in the middle of the process, so we included a progress bar to encourage the new user to complete setup. This Kissmetrics article describes how that progress bar psychologically persuades people to finish the task at hand and the closure they feel when the bar is 100% complete.

To see firsthand how we’ve improved the Users tool, click User Logins from your dashboard.

 

 

User Experience: How we put our users first

Imagine two scenarios. In the one, you are using a brand new app on your smart phone to help you order a sweet bacon pizza. You open the app and find no instructions. There is just a list of options, none of which make sense! You are eventually able to order your pizza, but are not quite sure where its coming from, or how to pay. The experience is awful (And you REALLY want your bacon pizza)! In the other, using a different app, you are walked through your pizza creation process, put in touch with a local pizza business(organic even! you like that!), had your payment taken, and even received a 15 minute delivery guarantee message. How about that? Hot dog! Or since were talking about pizza, Hot pizza!

Pizza is a serious, delicious subject indeed, but I am going to be talking about something monumentally important to almost any and every business/product that exists. User Experience. Before you rush on reading the rest of this oven baked, hand-tossed article, stop and think about it. User. Experience. Our lives are dictated by our experiences, we can be up or down, happy or sad, down or out on a moments notice because of one experience! An experience will excite us to the brim of fantastical explosion! -or- It will drag us down into the dumpy doldrums of mediocre, flat, boring every day life (Yuck).

Here at Century Interactive(CI) our design team is always thinking about the user because we like our users and want to delight them *gasp*. I know, its crazy, I’ll explain. We think of our users from product conception at a high level all the way through to that one tiny line of text at the bottom of a page. In order to create a user experience that really delivers boatloads of pepperoni – I mean – delightfulness, you have got to think big and think small. You have to think about the entire system on a high level in order to create an experience. You also have to think small – the tiniest detail can throw the whole thing off. Think about the last time you tried to find a contact number on a company website and you spent 10 minutes digging around for one. One small thing can send users running to the hills of delightfulness that exist somewhere besides your company!

An experience will excite us to the brim of fantastical explosion! -or- It will drag us down into the dumpy doldrums of mediocre, flat, boring every day life (Yuck).

In our pursuit of creating a delightful user experience we have had to develop and cultivate empathy for our users. We put ourselves in our users shoes and evaluate everything. Every detail and feature needs to be put in the brick oven and toasted – tested. Will it be beneficial to the user or will it hinder them? How does this specific feature help the user, and when do we present it to them as an option? We might not be making them a mouth-watering, tummy-satisfying pizza, but we are creating a delightful user experience for them (because we love them)!

So how did we apply these concepts to a practical project here at CI? In our newest product, Service Hook, we put the user first at every stage of design and development. Our design team was brought in at the very beginning when Service Hook was an idea on a post-it. We brainstormed about how to get users on the product – freemium. We removed all barriers that would hinder the user from signing up – that’s not a novel thing, but it was a very important decision for us as a company. Next, we looked at hundreds of ways other companies and products “onboard” their users, then we designed our own process. We get the user, in three steps, from sign up to being smack in the middle of Service Hook.

Great, they are in the product, now what? More brainstorming. How do we get the user oriented quickly and functionally productive in our product? Our solution was to design a help wizard, yes we used a literal wizard (Gandalf would be proud!), to walk the user through a few basic things. We didn’t just stop here though, our thinking of the users experience cant end right now. We watch what they do and how often they use features, then we reach out to them to ensure they are having an amazing experience. We have a consultant team that welcomes them, provides suggestions on how to grow their business, and shows them how to really utilize Service Hook. Do we stop here? No. Because our users journey is still not over. They are our users for life.

One small thing can send users running to the hills of delightfulness that exist somewhere besides your company!

Thinking big picture about the entire user experience in the beginning enabled us to better design the details. We are able to tie in details (like buttons, text, and even the website) to the look and feel of the overall experience. Our aim was and will remain high – to delight our users with a great experience. Now go forth, and order that bacon pizza!

Speeding up reports

At Century Interactive, we know presenting data in a clear and useful way is one of the keys to helping our customers understand what it takes to own their phones.  One of our favorite ways to do this is by using detailed graphs that span anywhere from one day to several months.  The advantage of displaying extensive amounts of data is that our customers can quickly identify trends in calling activity and overall business performance.

Sharing this information makes our customers happy, but it can be a major headache for the developers who create the reports.  Five weeks of data for one company usually involves thousands of database rows that have to be combed and neatly organized.  Not only do our customers want to see the extra data, they want it to be available nearly instantaneously.  The task becomes a balance between server capabilities, database storage and overall load times.

According to surveys done by Akamai and Gomez.com, nearly half of web users expect a site to load in 2 seconds or less, and they tend to abandon a site that hasn’t loaded within 3 seconds.  Armed with this information, how do we display all our useful metrics without having users feel frustrated while looking at our beautiful loading .gif? Here are three of our easier solutions:

1.  Cut down the number of “order by” statements in the SQL queries.  Removing one “order by” statement from a SQL query returning 9,000 rows cut execution time from 3,156 milliseconds to 2,078 milliseconds.  That’s over one critical second of time we saved each one of our customers each time they visit that report.

2.  Create aggregate join tables.  By creating new tables that only reference information from other tables, we can cut down execution time to only the rows in the new table.  For example, this is helpful when we only want data from certain customers.  There’s no reason to go through our entire customer base when we only want data from dealerships.  By identifying dealership customers in a separate table, the query can skip thousands of rows on each page load.

3.  Utilize AJAX to make requests behind the scenes.  Incorporating AJAX into our reports not only cuts down on initial load times, it lets users choose what data they want to see.  The beauty of this is that the user gets more options and the amount of information we have to initially load can be cut considerably.  For example, our new CRISP score report shows a line graph with the individual “C”, “R/I”, “S” or “P” score plotted against the top 5 dealership’s over the last five weeks.  Upon page load, the only score that is shown is the “C” or “connect” score.  By adding buttons which let the user pick what score to show, we don’t have to load the other scores until the user decides to look at them.