Our team at Hoya Hacks this year was an eclectic last-minute team. From this, we wanted to make forming a team at hackathons a better experience that increases the likelihood of a strong team. We don't want folks to fret with incomplete DevPost profiles and high-volume DMing.
What it does
HackerMatch lets users see a lot of relevant information about a hacker and matches them with awesome potential teammates.
We used MongoDB and a database to store the data and then MongoDB Atlas to store it into Google Cloud! Here, we've created two different schemas for Users, one where users fill in their login information and the other where all other necessary details of users will be stored. We simply used 'mongoose' npm package to connect to Database and Express.js to make APIs where we can hit some values to keep them in the database! We used POST req for both of these APIs as it is safer. When the user first comes to HackerMatch, they have to first signup into the system. Then the values will be stored in our login schema. After logging in, the user has to fill in their necessary details as provided in the forms later to match them with other users of their interests. Here, we'll check users based on Country (so there would be no time zone issue), Interests, skills, or Role (like looking for a team, etc.) Suppose the user will match other user on the basis of their interest. In that case, they can contact each other on primary communication they've provided or from other social media handles they've while registering themselves.
- Whether they are looking for a team
- If their skills are shared (CPP, Java, and Python were used as examples in the algo.js file)
- The difference between timezones
- Level of study (similar levels get higher points as well as graduate students)
- Type of major (CSE majors get more points)
- Gender (pairings with inclusive roster compositions get higher ratings)
- Hackathon Comfort Level
The sum of these tends to be in the thousands and can be a strong predictor. A direct link ot the algorithm can be found here: https://github.com/arpitbabbar/Hackathon_Tinder/blob/main/algo.js
How we built it
Challenges we ran into
- Time - we formed our team around 4 hours after hacking started. This forced us to improvise and really strip down our project to its most basic components to provide a presentable product.
- Integration - We were unable to link the MongoDB to the frontend due to some system glitches and errors in time. This meant to demonstrate the algorithm, we had to create a custom array of data in order to prove its efficacy.
Accomplishments that we're proud of
- Devise an actionable idea that affected all of us.
- Overcome the time pressures and constraints of a hackathon (doubly impressive for our first-timers in Anthony and Arpit who did a valiant job)
- Create a responsive client-side experience
- Creating schemas for storing profile info and for logins
- Devising an algorithm that takes into account numerous factors (such as timezone, proximity, skill compatibility, diversity, etc.)
- Anthony: “Integration certainly posed some challenges when it came to getting the variables to line up the right way, but I learned a little something about the math behind matches, and from my teammates, I gleaned some insight into the frontend. I'm really glad to have had the opportunity to work alongside fellow hackers on our little mathematical contraption, and it was really cool seeing and teaming up with a fellow history bowler!”
- Arpit: “Hoya Hacks 2022 was a great experience for me as this was my first hackathon and I learnt a lot llike working in teams, proper time management and more. Yeah at some point there was a problem due to different time zones but somehow we figured it out and it went great for me at Hoya Hacks.”
- Ameya: “Hoya Hacks 2022 was a very interesting experience. We were up against time but we made a really cool product. I learned so much about the MERN Stack and hope to use it in future projects. It was awesome teaming with a history bowler in Anthony.”
What's next for HackerMatch
This was explored further in the demo video, but our future plans include:
- Completing the integration of the algorithm, database, and frontend
- Creating an option for hackers to sign in with their myMLH account
- Adding more TInder/Bumble-esque features (such as swiping).
- Creating a portal for users to easily update their profiles.