Using roles instead of personas was best since we were a team of two and didn’t need to communicate much about the user beyond this information. It also saved time.
Next, I identified how users plan meetings:
With Doodle, the meeting planner must pick blocks of time for participants to vote for. This causes issues as people might not be available for those entire blocks of time, but could be available spanning two blocks. This issue compounds the more users you have.
Through several rounds of low-fidelity prototypes and user testing we validated our feature set and created sensible defaults to make the user experience fast and effortless.
The next problem was the availability entry screen. As a mobile-first product, we had to find a way to display 24 hours' worth of availability on a small screen.
I created two input methods and tested to see which was preferred. I referenced Google’s Material Design spec to determine the minimum space a user needs to drag the boxes around.
Finally, I built a high-fidelity prototype and went through testing. Users liked the interactions and knew exactly how to use the product with no instructions.
The final piece was how to determine the rules for how Free Space picks the best time to meet. My partner and I came up with these rules to rank the available times:
If multiple meeting times have no conflicts users can vote on their preferred time.
Set User Expectations - I explained some of what the users should expect during testing, but I had to re-explain some things which told me I didn’t explain thoroughly enough at the start. Moving forward I will test my explanation before meeting with users.
Choose the right tools - I used Figma for both design and prototyping which hurt the feedback on some parts of user testing. I believe with a better prototype there would have been room for a different time entry flow that would be faster. Since I wasn’t able to show the interaction to users properly, they didn’t choose that option.