Inspiration
Hackathons are fantastic opportunities for innovation, collaboration, and learning. However, one of the biggest challenges participants face is finding the right team to join. Inspired by this problem, we created DreamTeam to simplify and enhance the team formation process, ensuring that everyone can find a team that fits their skills and preferences perfectly.
What we learned
Building DreamTeam was an incredible learning experience. We deepened our understanding of machine learning algorithms, particularly K-means clustering, and explored the powerful capabilities of the Sentence Transformers for natural language processing. Additionally, integrating a full-stack application using Node.js, Express, MongoDB, and React honed our skills in web development and API design.
How we built it
Frontend: Developed with React for a responsive and dynamic user interface, allowing participants to easily sign up, list their skills, and set their preferences. Backend: Utilized Node.js and Express to handle user authentication, data processing, and communication with the database. Database: Implemented MongoDB to store user profiles, ensuring scalability and efficient data retrieval. Machine Learning: Leveraged Sentence Transformers to encode user profiles into vectors and used K-means clustering for smart team formation based on these vectors.
Challenges we ran into
Complex Matching Logic: Implementing the K-means clustering algorithm and adjusting it to account for user preferences required significant tweaking and optimization. Data Integration: Ensuring that user data from MongoDB was correctly encoded and processed in the machine learning pipeline was challenging, especially when dealing with real-time updates. User Interface: Designing an intuitive and user-friendly interface that could handle various edge cases, such as incomplete profiles and changing preferences, was a key focus.
What's next for DreamTeam
Dynamic Re-Matching: Allowing for dynamic re-matching during the hackathon in case of dropouts or changes in availability.
Log in or sign up for Devpost to join the conversation.