List Imports Screenshot

MailChimp List Imports Revamp

We designed, developed, and pushed a revamp of the list imports feature.

Front-end Development, Integrations Engineering • May 2015—Aug 2015

As a Software Development Intern, my primary task was to do front-end development. In addition to writing code, I also designed the user experience of our feature and coordinated information between MailChimp's product, design, and research teams. All of these skills and tasks combined helped us to create the best possible feature.

The list imports feature is one of the most frequently used features of the MailChimp app—most new users import a list during onboarding, and our customers regularly import contacts into their lists as they grow. Unfortunately, the lists import feature hadn't been updated in a while and it needed to be redesigned and refactored to feel like the rest of the app.

The Goal

Make our users feel like pros.

By creating a better first impression for our new users and empowering existing customers in their work, we can make MailChimp even more delightful. To do so, we needed to improve the performance and user experience of the feature.

Navigating with Ease

MailChimp uses a wizard pattern in places like the campaign editor to host processes that require multiple steps. Since list imports require selecting import sources, cleaning data, and matching columns, we opted to convert the process into a wizard.

Feeling Secure

It was uncomfortable for users to enter their usernames and passwords from other services into MailChimp, so we integrated OAuth3 into our Google, Salesforce, Highrise, and Eventbrite integrations. This was an important user experience move because it helps our users feel confident and secure.

Confirming Your Import

Users often worry about their list imports working correctly, since nobody wants a list with messed up data. I created a confirmation screen in the wizard to help our users catch mistakes and understand what'll happen during the import.

No More Holdups

Imports used to be done in-place, causing users to be stuck in loading limbo as they waited for hundreds (if not thousands) of addresses to finish importing. My co-intern found a way to run imports as a background process, letting the user proceed into the app after initiating a large import. I helped create a dynamic loading widget that indicates the current import's progress.

Managing Previous Imports

Users wanted to have a record of which list imports were performed. We created an import history dashboard, which allows the user to view the results of past imports and undo troublesome imports.

The Results

The list imports revamp was pushed to production.

After working on the design, development, and QA, the list imports revamp was pushed to production in August 2015. I learned so much about web development, user experience design, and product management during my time at MailChimp, and I also produced work that is in line with the rest of the MailChimp app.

I'm thankful that MailChimp taught me experience design skills from both a design and a development angle. Seeing a feature transition from conception to development has helped me understand what it's like to develop and design within a larger team.

Also, getting user feedback is heartwarming.