## Inspiration

We always want to create a resume that will impress employers. The problem is fitting your resume to their expectations. How well or far off are you from the goalpost? We came up with the idea of ResumeReviser because it could help people looking or not looking for employment gauge how well their resumes meet those expectations.

## What it does

ResumeReviser is a Flask-based web application that allows users to upload their resumes in PDF format, enter a job listing, and receive feedback on the match percentage between the resume and the specified job listing. The application uses natural language processing techniques, specifically cosine similarity, to analyze the textual content of the resume and job listing, providing users with a percentage indicating how well their resume aligns with the specified job requirements.

## How we built it

We used Flask as our framework and SQLite3 as our database. We used multiple libraries to read our PDF files and then interpret the words on them. We then handled the comparison and assessed the job listing description and the resume to determine if they fit the role they were trying to apply for.

## Challenges we ran into

Most of the team had previously worked with Flask or SQL in a full-stack project. We also were working with limited time as we arrived late Friday evening. With the project, we found great difficulty maintaining data between user sessions. We had to figure out how to properly use the SQL database to avoid losing the comparison between job listings and user-uploaded resumes.

## Accomplishments that we're proud of

We integrated other technologies, such as Bootstrap, to improve the user experience further and create a pleasing general user interface. We successfully developed and researched the algorithms necessary to match the important keywords to their job descriptions.

## What we learned

We learned how to collaborate with multiple new technologies and the problems of doing so. How to set up the necessary virtual environment, set up schema, and access an SQL database. Consequently, it also taught us how to deal with user files and maintain their concurrency through sessions. We experimented with Bootstrap features on the front end to create a pleasing interface.

## What's next for ResumeReview

Improved user interface design.
Advanced analysis features or suggestions based on the resume and job listing.
Error handling and validation improvements.
Security enhancements.
## Inspiration

As busy university students with multiple commitments on top of job hunting, we are all too familiar with the tedium and frustration associated with having to compose cover letters for the few job openings that do require them. Given that much of cover letter writing is simply summarizing one's professional qualifications to tie in with company specific information, we have decided to exploit the formulaic nature of such writing and create a web application to generate cover letters with minimal user inputs.

## What it does

hire-me-pls is a web application that obtains details of the user’s qualifications from their LinkedIn profile, performs research on the provided target company, and leverages these pieces of information to generate a customized cover letter.

## How we built it

For our front end, we utilized JavaScript with React, leveraging the Tailwind CSS framework for the styling of the site. We designed the web application such that once we have obtained the user’s inputs (LinkedIn profile url, name of target company), we send these inputs to the backend.
In the backend, built in Python with Fast API, we extract relevant details from the provided LinkedIn profile using the Prospeo API, extracted relevant company information by querying with the Metaphor API, and finally feeding these findings into Open AI to generate a customized cover letter for our user.

## Challenges we ran into

In addition to the general bugs and unexpected delays that comes with any project of this scale, our team was challenged with finding a suitable API for extracting relevant data from a given LinkedIn profile. Since much of the tools available on the market are targeted towards recruiters, their functionalities and pricing are often incompatible with our requirements for this web application. After spending a surprising amount of time on research, we settled on Prospeo, which returns data in the convenient JSON format, provides fast consistent responses, and offers a generous free tier option that we could leverage.
Another challenge we have encountered were the CORS issues that arose when we first tried making requests to the Prospeo API from the front end. After much trial and error, we finally resolved these issues by moving all of our API calls to the backend of our application.

## Accomplishments that we're proud of

A major hurdle that we are proud to have overcome throughout the development process is the fact that half of our team of hackers are beginners (where PennApps is their very first hackathon). Through thoughtful delegation of tasks and the patient mentorship of the more seasoned programmers on the team, we were able to achieve the high productivity necessary for completing this web application within the tight deadline.

## What we learned

Through building hire-me-pls, we have gained a greater appreciation for what is achievable when we strategically combine different API’s and AI tools to build off each other. In addition, the beginners on the team gained not only valuable experience contributing to a complex project in a fast-paced environment, but also exposure to useful web development tools that they can use in future personal projects.

## What's next for hire-me-pls

While hire-me-pls already achieves much of our original vision, we recognize that there are always ways to make a good thing better.
In refining hire-me-pls, we aim to improve the prompt that we provide to Open AI to achieve cover letters that are even more concise and specific to the users’ qualifications and their companies of interest.
Further down the road, we would like to explore the possibility of tailoring cover letters to specific roles/job postings at a given company, providing a functionality to generate cold outreach emails to recruiters, and finally, ways of detecting how likely an anti-AI software would detect a hire-me-pls output as being AI generated.
## Inspiration

Covid-19 has turned every aspect of the world upside down. Unwanted things happen, situation been changed. Lack of communication and economic crisis cannot be prevented. Thus, we develop an application that can help people to survive during this pandemic situation by providing them **a shift-taker job platform which creates a win-win solution for both parties.**

## What it does

This application offers the ability to connect companies/manager that need employees to cover a shift for their absence employee in certain period of time without any contract. As a result, they will be able to cover their needs to survive in this pandemic. Despite its main goal, this app can generally be use to help people to **gain income anytime, anywhere, and with anyone.** They can adjust their time, their needs, and their ability to get a job with job-dash.

## How we built it

For the design, Figma is the application that we use to design all the layout and give a smooth transitions between frames. While working on the UI, developers started to code the function to make the application work.

The front end was made using react, we used react bootstrap and some custom styling to make the pages according to the UI. State management was done using Context API to keep it simple. We used node.js on the backend for easy context switching between Frontend and backend. Used express and SQLite database for development. Authentication was done using JWT allowing use to not store session cookies.

## Challenges we ran into

In the terms of UI/UX, dealing with the user information ethics have been a challenge for us and also providing complete details for both party. On the developer side, using bootstrap components ended up slowing us down more as our design was custom requiring us to override most of the styles. Would have been better to use tailwind as it would’ve given us more flexibility while also cutting down time vs using css from scratch.Due to the online nature of the hackathon, some tasks took longer.

## Accomplishments that we're proud of

Some of use picked up new technology logins while working on it and also creating a smooth UI/UX on Figma, including every features have satisfied ourselves.
Here's the link to the Figma prototype - User point of view: [link](https://www.figma.com/proto/HwXODL4sk3siWThYjw0i4k/NwHacks?node-id=68%3A3872&scaling=min-zoom)

Here's the link to the Figma prototype - Company/Business point of view: [link](https://www.figma.com/proto/HwXODL4sk3siWThYjw0i4k/NwHacks?node-id=107%3A10&scaling=min-zoom)

## What we learned

We learned that we should narrow down the scope more for future Hackathon so it would be easier and more focus to one unique feature of the app.

## What's next for Job-Dash

In terms of UI/UX, we would love to make some more improvement in the layout to better serve its purpose to help people find an additional income in job dash effectively. While on the developer side, we would like to continue developing the features. We spent a long time thinking about different features that will be helpful to people but due to the short nature of the hackathon implementation was only a small part as we underestimated the time that it will take. On the brightside we have the design ready, and exciting features to work on.