Thrive Out Loud is a 100% LGBTQIA+ professional mentorship platform. It aims to create a safe space where queer young adults can find career guidance from mentors who understand their unique challenges and perspectives. Thrive Out Loud’s users have profile pages where they share their personal and professional backgrounds. These pages are an important tool for both mentors and mentees to self-assess potential compatibility before moving to the next stage and setting up a first meeting. Importantly, the information displayed on the profile pages falls into two categories:
Our team was tasked with re-looking at the designs for the profile pages. While doing so we asked ourselves:
How might we simplify the profile population process to make onboarding and gathering supplementary information easy while conveying a sense of safety and trust?
Thrive Out Loud is a Tech Fleet project.
Tech Fleet is a not-for-profit dedicated to creating opportunities for people to gain real-world tech experience. It partners with other not-for-profits seeking tech solutions and puts together teams of volunteers to deliver them.I joined Thrive Out Loud during the project’s fourth phase. This meant we were building on three previous phases’ worth of work, inheriting user flows and screens from previous teams who were no long with the project. Documentation was often patchy. We iterated upon this previous work over four 2-week sprints, one and a half of which was focused on the profiles.
We needed to think carefully about how to manage this. We did not want to put the user through the tedium of having to re-enter their personal details when it came time to fill out their profile. There were also concerns from the data management perspective. The matching system's data needs to be clean - what's held in the system's backend. must exactly match what's on the user's profile.
Because of this, it was decided that the app should import the user's onboarding information into their profile on their behalf. This would leave them with a draft, semi-complete profile. They would then have a chance to review, edit, and add to this draft, including filling out the additional content buckets that are not collected during onboarding.
How best to communicate with the user so that they would understand the semi-complete status and be guided through profile completion became a central challenge in this project.
We had a few guardrails that helped guide our work:
With our recommendations of the platform automatically importing a new user's onboarding information to their profile on their behalf, a new user arriving on their profile for the first time will now see a draft semi-complete profile. Right off the bat, we wanted to prioritize the user's sense of safety and control. They should understand that there are new sections of their profile to complete, and they should have full control over whento make this information officially viewable to the public.
Our first approach to addressing this was exploring "preview", "publish" and "edit" CTAs.
We quickly ran into issues with this approach. The profile design makes use of editing pop up modals, each of which has a "save" CTA. In pressing this "save" CTA, the user could reasonably expect that their edits be permanently saved and published. The addition of a "publish" button complicated this, requiring them to click "publish" after the "save" CTA, adding unnecessary confusion and friction.
A sample question from the onboarding flow, which collects data on things like the user's sexual, gender, and ethnic identities.
So, we pushed to find a simpler solution.
We conducted a competitive analysis to understand how similar platforms guide their users. LinkedIn users editing modals, like we do, without requiring any additional action from users beyond clicking the edit icon on a section. ADP List also uses editing an modal, along with an 'edit profile' CTA at the top. Both approaches had a simplicity we wanted to incorporate into our design. We concluded that a "Publish" button would add unnecessary complication.
The "publish" banner we introduced does a lot of heavy lifting to make the users feel in control of their information, and to communicate with the user about the status of their profile.
However, we still needed the find the right way to guide the user through the next steps of completing their profile. Whatever solution we landed on would need to balance the two types of profile content:
In the beginning, we tried displaying the empty supplementary content buckets in-line with the pre-filled ones. Placeholder copy was used to prompt the user to fill them out. This approach relied mostly on visual clues to separate the types of content.
Coming into a project in the middle can drastically impact the way you think about it. You take the logic the project is built upon for granted, assuming it's sound.
However, after thinking deeply about the relationship between onboarding, the matching system, and the profiles, I've concluded that the existing structure is perhaps needlessly complicated. If I could do it all again, knowing what I know now, I would suggest scrapping the onboarding questions altogether. A simpler, more elegant solution would be to allow users to sign up with a quick account creation then use the profiles to collect matching data.
This would remove friction during account creation, and eliminate the need for pre-filled draft profiles and the dynamic prompts and banners we engineered as a solution to explain them. It would likely also make development faster and easier, as it would reduce the amount of screens that need to be developed and maintained.
In short, we spent a lot of time finding a solution for a problem that could have been eliminated altogether.
That being said, given our short timeline and the reality of coming into the project midway through, I believe we did the best we could with our circumstances. The solutions we implemented address all of our goals and provide a clear, intuitive user experience.