In this post, Adobe Campaign product manager details their development framework called “CARE” which puts customer experience first.
Everything we do at Adobe revolves around building value for customers. We take a variety of inputs — from cross-functional teams — to enrich our understanding and make our products as beneficial as we can for our customers.
About a year ago, the Adobe Campaign team launched Control Panel, a microservice to empower customers to deliver a better overall administrator experience. Initially, it had very few features and only a few users. But our team loved working on it, and over time we increased adoption as we added more functionality and reduced friction. In the process, we realized there was a huge lesson we learned.
What makes this difficult
Enterprise software should be made for people. This sounds obvious…but often it’s not, so it makes sense why “enterprise software” is synonymous (to some) with, “something that’s really hard to use.” We believe it shouldn’t be that way, even though building enterprise software is no simple task.
People want to feel good about doing their job, excited about going to work, and not be dependent upon others where it doesn’t make sense. That, quite simply, helps to focus on creativity and to reach true potential — making work fulfilling and enjoyable. Enabling our customers to do what they like most is the purpose of the Control Panel team.
“It’s not always about innovation or technicalities when building a product. Sometimes — or most times — it’s about experiences that we create for the customer by our products. — Prashant Jain, Senior Engineer
What we do
That said, building software that enables teams is no simple task. It takes careful planning within each step of the software development process to keep in mind the users we’re enabling — from the design of user interactions to nitty-gritty details, error codes, button translations, and documentation.
In order to stay focused on making excellent enterprise software, we use the acronym CARE.
C — Customer needs drive all your work, so focus on the “why” instead of “what”
It is easy to fall into execution mode too soon and focus on efficient delivery rather than effectively solving customer needs.
Compare these two cases: You are tasked with furnishing a bedroom someone would enjoy sleeping in or instead, you are asked to ensure that your end user gets restful sleep. In the latter case, you start with the user and their needs, not the bedroom. Who needs the restful sleep? Do they know where to find the room? Can they access the room? Who do they approach to find their lost keys? If you jumped into furnishing the bedroom you may not have realized that the end user doesn’t know where the room is or how to access it. Without such user-centric critical steps, there is no value from your furnishing work. But if you think about the user and their needs, it changes your perspective.
A — Adoption paths require planning and consist of many steps
“Every time we build a wizard we question the number of steps, and user interaction to collect the data and display the results. As a user navigates throughout the application we try to make a consistent design and repeat patterns such that we don’t force the user to learn something new, therefore putting the UI under constant review is important.” — Ben Helleman, Senior Engineer
Early in the development process, our team recognized that having our product available does not magically turn every customer with the perceived need into a repeat user or an advocate for our product.
We used customer buying paths as a metaphor to map end-to-end customer experience with the product. A customer buying path is a journey, which starts with a need, moves to awareness about the product, then evaluation, consideration, selection before ending with customer loyalty. For the Control Panel, we started by estimating the number of users with the need for our product. We then laid out all actions that a user would need to undertake to use our product, starting with login and permissions settings. We carefully monitored each touchpoint on the way to using our product to ensure the path to using our features was as easy as possible. Over time we also worked to eliminate steps and friction on the adoption path to help customers make use of the Control Panel in a streamlined fashion.
Figure 1: Adoption path framework
R — Recognize that the happiest scenario is not all there is
“While engineering, we had to think from customers’ perspectives on a daily basis (which time zone to use, should we use CIDR v/s IP ranges) to take technical decisions.” — Tarun Kumar Jaiswal, Engineering Manager
When designing software, it is easy to only think about a happy path — what happens when a user uses your product exactly as it is intended to be used, without encountering any issues? In reality — a user can encounter an issue that has nothing to do with design, for example as a result of poor internet connection or not having permissions to access the product. As a team, Control Panel has thought through these scenarios and has invested time in developing help tooling, error messages, and even video tutorials.
Sometimes ensuring you have a great product also means you have to invent new processes and methods of collaboration. For example, our globalization team started a new way of linguistics testing that’s more use-case driven in order to accurately explain the features and ensure high-quality translation. It worked wonders.
E — Enable teams that support your customer and product
“Throughout this project, I’m not only proud of the achievements of the project, but also I’ve had a lot of fun with the teamwork that we’ve managed. There is a sense of openness, responsibility, and ownership in the team as a whole which as an individual has really improved my productivity.” — Sneha Srivastava, Senior Engineer
Ultimately, we would not have been successful if we didn’t work with a broader Adobe community. We worked closely and iteratively with the customer care team, asked for feedback from the consulting team, and scheduled demos for customer success managers. We recognized that, largely, all these teams have the same goal of making our customers happy. We definitely owe our successes to not just the people on our wonderful team, but to all those around us.
It has been almost a year since we first launched the Control Panel. Since our first month, our product logins have grown 4x (on a monthly basis) and the usage has grown 15 times! Naturally, as we add more features the usage of the product increases, however, a large portion of our success can be attributed to our persistent focus on customer needs, as well as collaboration to enable other teams that in turn results in higher product awareness, trials, and the impact that we observe.
Figure 2: Number of logins per month grew 4 times from May 2019 to May 2020
Here are the four tips to be effective and collaborate well with others when developing software:
Align on the mission — and help the team gain collective ownership of the outcome
Keep in mind steps and activities that stand between your customer’s need and their ability to make use of your product — eliminate them one by one
Make it easy for other individuals and teams to support your customer (make tutorials, kits, guides, videos, etc.).
To whatever extent possible, try to embed your ask of others into an existing process or practice that they use.
If you do these things, you will continue to have a lasting impact for your customers and your teams. But don’t just keep these things in mind occasionally, address them at all stages — designing, developing, prototyping, announcing, documenting, launching, supporting, and improving the product. Doing so will expand your impact and communicate your goals to other teams and individuals resulting in great customer experience.