Inspiration

The reason as to why we chose this project among the many other interesting options was because it matched our skill set the best. In fact, the project also stood out to us for having a great degree of challenge in creating a full stack solution that will serve many prospective collegial students. As first year students ourselves, we still experience the difficulties of the transition from high school to college / CEGEP and that is why we believe such a tool would empower the Marianopolis Student Affairs Mentorship Program to be so much more accessible and convenient.

What it does

Our software automates the process of pairing mentors and mentees. The choices are based upon multiple factors and in this particular order: Program of study, gender, language, high school, and hobbies. In addition, any other factors can be easily implemented into the system, allowing for a more compatible pairing. It does this automatically using a combination of fixed proportion weighed scores for items such as gender or program and machine learning based heuristics for matching more qualitative traits such as hobbies or preferences.

How we built it

The product is a full-stack web application designed in Svelte and SvelteKit, leveraging Google's Firebase backend-as-a-service product, which provides us with authentication and NoSQL database storage. It is further extended using the OpenAI API, and other tools such as Tailwind and Shadcn/ui. As a team, we believed in dividing the work equitably and playing to each other's strengths. Therefore, Justin assumed the lead work for the backend and server interactions of the project, thanks to his wealth of experience in traditional languages such as C, and Java. Then, the user experience team comprised of Annie and Tony (Le Tuan Huy), who designed, constructed, and implemented the logic for the majority of that dashboards that one may see. Finally, Chris (Xi) was responsible for the bridging between the frontend code and the backend code, as well as handling authentication, code quality, and research.

Challenges we ran into

We had many challenges to overcome, however the biggest ones comprised of the high amounts of work required on the frontend side in a short period of time. Design work is often a meticulous process, especially for the perfectionists on our UI/UX team, and while our final product is far from perfect, we are proud of how it turned out. Furthermore, challenges were also experience when it came to the heuristic algorithm as it is the most logically intensive part of our project, but we sought to overcome it thanks to the excellent mentorship of the various invited guests and staff members, combined with good communication and planning.

Our original heuristical analysis is inspired by the Simulated Annealing metaheuristic used in optimization problems. Despite being completely different, our approach reuses the idea of a probabilistic technique that generates a new solution, where solutions that "appear" good have a higher probability of being taken without removing the option for other solutions to be searched. This allows for an efficient search, while still exploring many different paths in order to find the perfect solution.

Accomplishments that we're proud of

Speaking of heuristic algorithms, the fact that we were able to overcome the aforementioned challenges and deliver a solution that seems to accomplish the goals of automating the pairing process between mentors and mentees is something that we are proud of as a team. Also, despite time constraints, technical constraints, and space constraints, we were able to create an app that we believe is well rounded and represents most of what we envisioned.

What we learned

We learned that clear and consistent communication as a team is instrumental to our success. (The whiteboard is killer! ✨) It helped both planning and team morale through the most difficult hours of this competition. Having structured meetings and plans really helps us to know what to do and where we're headed. Also, we were able to understand the importance behind having a plan B in case our first plan doesn't work out, as we had come close many times to needing it. Agility is key in fostering innovation.

What's next for Crooked Labs - Marianopolis Mentorship Program

We wish to improve the looks of our website. We also plan to implement Firebase Admin for better authentication, security, and management. Furthermore, ideas that were discussed but never implemented that we would still like to make include online training modules for to mentors using interactive exercises, scheduling and appointment tools, as well as social features such as chat.

We hope that our experience at Marihacks helps further our technical ambitions and in the same vain hope that our project will catch the attention of the judging team and serve as inspiration for others.

Built With

Share this project:

Updates