Matchmaking platform for dog owners
Project overview
Duration
7 month, 2200 hours
Methodology
Waterfall
Technologies
- Backend: Java 8, Spring Boot, jOOQ, Lombok, Thumbnailator, Apache Commons, PostgresSQL, AWS
- Web: Angular 6, TypeScript, RxJS, Angular CLI, Amazon (S3, CloudFront)
- iOS: Swift 4.1, Swagger Codegen, Auto Layout, Storyboard, RxSwift
- Android: Firebase Messaging, Retrofit, Kotlin, Android Support Library
Project Team
- 1 backend developer
- 2 frontend developers
- 2 iOS developers
- 1 business analyst / project manager
- 2 designers
- 1 QA engineer
Objective
Develop a tool which allows dog owners and dog caretakers to connect, communicate and exchange services with each other.
We had the following business tasks:
- Provide dog owners and dog hosts with ability to find best matches according to requested profile parameters and location
- Provide dog owners with a possibility to request from a dog care providers services for their pets
- Provide dog hosts with possibility to request a job
Technical tasks
- Develop a system, supporting 2 key roles for mobile users and 1 admin role to moderate the content in the system
- Implement functionality for smart filtering
- Implement positioning functionality by GPS and device Geo IP
- Implement messaging feature
Design Process
Discovery & Research
Conduct qualitative user interviews and field studies to gather user data and analyse competitors
Synthesis Research
Use affinity map to find actionable insights and build personas
Design Strategy
Define the problem, user goals and needs, user flows
Prototyping
Wireframe Prototypes
Usability Testing
User Testing
Solution
We’ve started with project description, and on this stage we defined that main thing for a released project will be to get lots of clients at the beginning and retain them by not making the app difficult in use. So we were focused on finding the best matches for users without requiring too much information from them. We’ve implemented the pattern when all users can see the matches at least on their country level or use filters and specify all the details. The users can find each other, add other users or their pets to “Favorites”, communicate one with another via messaging. For better user experience, the mobile apps allow users to rate and review the users they have worked with. Our team has also developed a web application to provide the client with access to view mobile users and maintain the system.
GDPR
We’ve been in the process of the development when GPDR was applied. As the app used to be released on the territory of European Union, we have had to make several changes in the apps to satisfy the law’s requirements.
Smart filters & positioning
As the app had no client base from the start, we needed to balance between applying filters to find relevant users/pets and limiting filters so users do not see empty screens if the app is not used in the searcher’s country widely. That’s why we’ve implemented Geo IP positioning to cut off irrelevant user profiles in the beginning and allowed users to manage filters’ parameters on any level they want.
The app involves the following features
Authorization
Visualized step-by-step process of creating profiles for dog owners, dog hosts and admin
Profiles
Filling out profile details depending on a user role. Setting up sub-profiles of dogs for dog owners
Search & filter
Filtering other users depending on when and for whom the help is needed, adding profiles to bookmarks for easy access
Rate & Review
Users who have already got an experience of work with other users can rate and review them. This way other users can decide based on this feedback to whom they would like to give an order
Messaging
Messaging feature allows users to request or offer their services in the simplest way
Results of the work done
Multi-functional mobile applications for Android/iOS which users can apply in cases:
- Dog owners — search and request help with pets
- Dog hosts — suggest their assistance
For a further stage, some major updates are planned: adding of an Orders feature so the users could monitor statuses of their orders in real-time; adding of a Payment system for the users to support the service.