## Inspiration

Let’s take you through a simple encounter between a recruiter and an aspiring student looking for a job during a career fair. The student greets the recruiter eagerly after having to wait in a 45 minute line and hands him his beautifully crafted paper resume. The recruiter, having been talking to thousands of students knows that his time is short and tries to skim the article rapidly, inevitably skipping important skills that the student brings to the table. In the meantime, the clock has been ticking and while the recruiter is still reading non-relevant parts of the resume the student waits, blankly staring at the recruiter. The recruiter finally looks up only to be able to exchange a few words of acknowledge and a good luck before having to move onto the next student. And the resume? It ends up tossed in the back of a bin and jumbled together with thousands of other resumes. The clear bottleneck here is the use of the paper Resume.

Instead of having the recruiter stare at a thousand word page crammed with everything someone has done with their life, it would make much more sense to have the student be able to show his achievements in a quick, easy way and have it elegantly displayed for the recruiter.

With Reko, both recruiters and students will be geared for an easy, digital way to transfer information.

## What it does

By allowing employers and job-seekers to connect in a secure and productive manner, Reko calls forward a new era of stress free peer-to-peer style data transfer. The magic of Reko is in its simplicity. Simply walk up to another Reko user, scan their QR code (or have them scan yours!), and instantly enjoy a UX rich file transfer channel between your two devices. During PennApps, we set out to demonstrate the power of this technology in what is mainly still a paper-based ecosystem: career fairs.

With Reko, employers no longer need to peddle countless informational pamphlets, and students will never again have to rush to print out countless resume copies before a career fair. Not only can this save a large amount of paper, but it also allows students to freely choose what aspects of their resumes they want to accentuate. Reko also allows employers to interact with the digital resume cards sent to them by letting them score each card on a scale of 1 - 100. Using this data alongside machine learning, Reko then provides the recruiter with an estimated candidate match percentage which can be used to streamline the hiring process. Reko also serves to help students by providing them a recruiting dashboard. This dashboard can be used to understand recruiter impressions and aims to help students develop better candidate profiles and resumes.

## How we built it

### Front-End // Swift

The frontend of Reko focuses on delivering a phenomenal user experience through an exceptional user interface and efficient performance. We utilized native frameworks and a few Cocoapods to provide a novel, intriguing experience. The QR code exchange handshake protocol is accomplished through the very powerful VisionKit. The MVVM design pattern was implemented and protocols were introduced to make the most out of the information cards. The hardest implementation was the Web Socket implementation of the creative exchange of the information cards — between the student and interviewer.

### Back-End // Node.Js

The backend of Reko focuses on handling websocket sessions, establishing connection between front-end and our machine learning service, and managing the central MongoDB.
Every time a new ‘user-pair’ is instantiated via a QR code scan, the backend stores the two unique socket machine IDs as ‘partners’, and by doing so is able to handle what events are sent to one, or both partners. By also handling the MongoDB, Reko’s backend is able to relate these unique socket IDs to stored user account’s data. In turn, this allows Reko to take advantage of data sets to provide the user with valuable unique data analysis. Using the User ID as context, Reko’s backend is able to POST our self-contained Machine Learning web service. Reko’s ML web service responded with an assortment of statistical data, which is then emitted to the front-end via websocket for display & view by the user.

### Machine Learning // Python

In order to properly integrate machine learning into our product, we had to build a self-contained web application. This container application was built on a virtual environment with a REST API layer and Django framework. We chose to use these technologies because they are scalable and easy to deploy to the cloud. With the Django framework, we used POST to easily communicate with the node backend and thus increase the overall workflow via abstraction. We were then able to use Python to train a machine learning model based on data sent from the node backend. After connecting to the MongoDB with the pymongo library, we were able to prepare training and testing data sets. We used the pandas python library to develop DataFrames for each data set and built a machine learning model using the algorithms from the scikit library. We tested various algorithms with our dataset and finalized a model that utilized the Logistic Regression algorithm. Using these data sets and the machine learning model, our service can predict the percentage a candidate matches to a recruiter’s job profile. The final container application is able to receive data and return results in under 1 second and is over 90% accurate.

## Challenges we ran into

* Finding a realistic data set to train our machine learning model
* Deploying our backend to the cloud
* Configuring the container web application
* Properly populating our MongoDB
* Finding the best web service for our use case
* Finding the optimal machine learning for our data sets

## Accomplishments that we're proud of

* UI/UX Design
* Websocket implementation
* Machine Learning integration
* Scalably structured database
* Self-contained Django web application

## What we learned

* Deploying container applications on the cloud
* Using MongoDB with Django
* Data Modeling/Analysis for our specific use case
* Good practices in structuring a MongoDB database as opposed to a SQL database.
* How to successfully integrate three software layers to generate a consistent and fluid final product.
* Strategies for linking iOS devices in a peer-to-peer fashion via websockets.

## What's next for reko

* Our vision for Reko is to have an app which allows for general and easy to use data transfer between two people who may be complete strangers.
* We hope to transfer from QR code to NFC to allow for even easier data transfer and thus better user experience.
* We believe that a data transfer system such as the one Reko showcases is the future of in-person data transfer due to its “no-username” operation. This system allows individuals to keep their anonymity if desired, and thus protects their privacy.
## Project Title

**UniConnect** - Enhancing the College Experience

## Inspiration

🌟 Our inspiration stems from a deep understanding of the challenges that university freshmen encounter during their initial year on campus. Having personally navigated these highs and lows during our own freshman year last year, we felt compelled to create a solution that addresses these issues and assists fellow students on their academic journey. Thus, we came up with UniConnect, a platform that offers essential support and resources.

## What It Does

🚀 **CrowdSense**: Enhance your campus experience by effortlessly finding available spaces for studying, enjoying fitness sessions, outdoor activities, or meals in real-time, ensuring a stress-free and comfortable environment.

🌐 **SpaceSync**: Simplify the lives of international students by seamlessly connecting them with convenient summer storage solutions, eliminating the hassle and worries associated with storing belongings during breaks.

🖥️ Front-end: HTML/CSS/JavaScript
🔌 Backend: JavaScript with MongoDB Atlas

## Challenges We Overcame

🏆 Elevating User-Friendliness and Accessibility: We dedicated ourselves to making our solution as intuitive and accessible as possible, ensuring that every user can benefit from it.

📊 Mastering Data Analysis and Backend Representation: Tackling the intricacies of data analysis and backend operations pushed us to expand our knowledge and skills, enabling us to deliver a robust platform.

🛠️ Streamlining Complex Feature Integration: We met the challenge of integrating diverse features seamlessly, providing a unified and efficient user experience.

⏱️ Maximizing Time Efficiency: Our commitment to optimizing time efficiency drove us to fine-tune our solution, ensuring that users can accomplish more in less time.

## Proud Achievements

🌟 Successful Execution of Uniconnect's First Phase: We have successfully completed the initial phase of Uniconnect, bringing SpaceSync to fruition and making significant progress with CrowdSense.

🌐 Intuitive and Accessible Solutions: Our unwavering commitment to creating user-friendly and accessible solutions ensures that every user can derive maximum benefit from our platform.

🏆 Positive Impact on College Students: We are thrilled to have a positive impact on the college experience of students who may not have had a strong support system during their memorable four-year journey.

## Valuable Learning

📚 Efficient Integration of Multiple Webpages: We've mastered the art of seamlessly connecting various webpages using HTML, CSS, and JS to create a cohesive user experience.

📈 Data Extraction and Backend Utilization: We've acquired the skills to extract and leverage data effectively in the backend using JavaScript, enhancing the functionality of our platform.

🌐 Enhancing User-Friendliness: Through JavaScript, we've honed our ability to make our website exceptionally user-friendly, prioritizing the user experience above all else.

## What's next for UniConnect

🚀 Expanding CrowdSense: We have ambitious plans to enhance and grow the CrowdSense section of UniConnect, providing even more real-time solutions for students on campus.

💼 Introducing "Collab Center": Our next big step involves introducing a new section called \*\* "Collab Center." \*\* This feature will empower the student community to create employment opportunities for each other, fostering a supportive ecosystem where both employers and employees are college students. This initiative aims to provide financial support to those in need while offering valuable assistance to those seeking help. Together, we can make a significant impact on students' lives.

🎓 UniConnect is our solution to enhance university life, making it easier, more connected, and full of opportunities
## Inspiration

As students, we collectively realized how much we disliked creating and updating our resumes. After getting ghosted by companies, we’re often left wondering what was missing from our resume, what skills we should be looking to acquire, and how to acquire them. We also realized that, from a recruiter’s point of view, reviewing resumes becomes a monotonous, repetitive, and tedious process. Recruiters who have to parse through thousands of candidates, while being bored out of their minds, often miss some great candidates!

## What it does

CS Resume allows students to upload their resumes, see how their resumes are broken down into sections, compare their skills to what tech companies are looking for, and receive suggested projects based on what skills they might be missing. It also features a VR application for the Quest 2, where recruiters can quickly view summaries of candidate resumes, expand to learn more about a candidate, and mark them for future review, all within a stimulating virtual environment of their choosing!

## How we built it

We used MongoDB, Next.js, Express, React, Node, Typescript, Cohere, NLP, Google Cloud Platform, CICD, AppEngine, Unity, and C# in order to create our final product.

## Challenges we ran into

The main challenge we faced was getting all the components to work together in a single system. This was one of our first big projects using Next.js AND our first time connecting VR headsets to our web app. Ultimately, we vastly underestimated the complexity of what we were trying to accomplish but ended up successfully working through our issues.

## Accomplishments that we're proud of

* Finishing a prototype for demo day.
* Starting off our coding by using Figma to make prototypes and wireframes rather than starting off without any designs.
* Being able to create such a complex web app (and corresponding VR app) in less than 48 hours.
* Successfully getting our VR application connected to our web app’s backend

## What we learned

It's important to have a plan early on in the development process and be conservative about how quickly you can learn/adapt to new frameworks.

## What's next for CS Resume

1. Improvements on how the resume is initially parsed, and additional support for resume fields.
2. Giving users more options for what projects are recommended based on interests.
3. Additional features for how recruiter ratings are handled on the backend.