Challenges
- The client needed a dating application to help users find people based on their real-time location.
- The client needed a mobile app for the end-customer as well as a web application for internal administration.
- The client needed the following features in the mobile app ability to display potential matches based on user preferences:
- Filter people based on the user preferences set during registration
- Ability to block matched users if users do not want to see a particular match
- Ability to report profiles to admin in case of any issues
- Ability to chat with peered up users
- Alerts and notifications
- Subscription mechanism to access premium features
Solutions
- Designed a highly interactive user interface from scratch.
- Developed the front end application using native Android and iOS, to ensure a rich and seamless user experience and custom applications.
- Followed a domain-driven approach and test-driven development to ensure superior code quality.
- Hosted application on Azure cloud to accommodate easy management and allowing scalability upon ad-hoc requests.
- Preferred polyglot persistence using multiple databases (Azure blob, Azure SQL, Azure cosmos), allowing to make application scalable.
- Used MongoDB to help filter matches based on users’ geo-coordinates to get faster results.
Tools & Technologies
iOS, Android, Angular JS, Microsoft Azure, MongoDB, Jasmine
Key benefits
- Developed a cost-effective and fully functional app that helps end-users to meet new people.
- Highly interactive and user-friendly UI.
- Subscription feature to help users to get premium services and will generate revenue to the client.
- Easy to scale.
- Reduced maintenance cost by hosting on the cloud instead of keeping on-premise.
