Skill Issue
Inspiration
Meeting the requirements of job criteria isn't always easy, often leading job applicants to be rejected due to lacking skills which employers seek. Our program aims to aid job applicants who may be lacking certain skills required for a position they're interested in. Rather than facing rejection early on, job applicants are able to address these skill gaps before submitting their applications. With Skill Issue, job applicants can upload their resume and the job description for their desired position to gain a clear understanding of the skills they need to develop.
What it does
Our program’s analysis reveals the skills that job descriptions require and compares them against an applicant's current skills. After identifying the skill gaps, users of our program will receive personalized upskilling resources. From this, job applicants can enhance their qualifications and increase the chances of landing their dream job.
How we built it
The development of our platform involved numerous phases, beginning with planning and requirements gathering. In this phase, we defined specific features such as skill gap analysis, a recommendation engine, and data visualization. We identified essential data sources, including job market data, educational platforms, and industry reports, while outlining user personas such as HR professionals, job seekers, and education providers. Next, we moved on to the design phase, where we created wireframes and mockups for the user interface, designed the database schema, and planned the architecture for our AI and machine learning models. The development phase was divided into three parts: a. Backend: We set up a server and API using Flask, leveraging the ChatGPT 4.0 OpenAI API to analyze resumes against job descriptions, perform skills analysis, and generate job recommendations based on resumes, including ATS scoring. Additionally, we implemented data collection and web scraping using Selenium to gather information from job sites like Glassdoor. We processed this data with AI/ML models, using TF-IDF vectorization to create numerical representations of words based on the documents considered. Python libraries such as scikit-learn and NLTK were utilized for natural language processing tasks related to job descriptions and skills. b. Frontend: For the user interface, we built our application using ReactJS, Redux, and Axios, and incorporated data visualization components to enhance user experience. c. Integration: This phase involved connecting the frontend and backend, as well as integrating the AI models with the application to ensure seamless functionality. Future testing included unit testing for individual components, integration testing, and user acceptance testing to validate the platform's performance. Finally, we set up cloud infrastructure on Azure Blob and deployed the application. Our backend was built using Python with Flask for the API and MongoDB Atlas for the database. Given the time constraints of the hackathon, we focused on creating a minimum viable product (MVP) that effectively demonstrates the core functionality of our platform.
Challenges we ran into
One major challenge we faced was integrating OpenAI into our platform. We struggled with authentication and API key management, which complicated our connection. Formatting requests and handling responses turned out to be more complex than expected, requiring careful structuring and error handling. Additionally, smooth integration into our user interface needed close coordination between backend and frontend. Thankfully, we overcame these challenges, enhancing our program’s functionality.
Accomplishments that we're proud of
Successfully implementing the sign-in and sign-up feature is a significant accomplishment for our team. On the backend, we encountered problems with the authentication process that initially prevented us from creating accounts. After extensive debugging and collaboration, we resolved those issues and refined the functionality. This accomplishment not only enhances user engagement, but also strengthens the platform's overall reliability.
What we learned
Throughout our program's development, we familiarized ourselves with various new libraries and tools, specifically Framer Motion. Though challenging, using these opened creative possibilities for our platform. By experimenting with Framer Motion, we learned to create smooth transitions and engaging effects that enhance user experience. These animations not only improve interactions but also help convey information more effectively, ultimately leading to a visually pleasing platform.
What's next for Skill Issue
Our future is bright at Skill Issue, and we plan on implementing many features in the near future. Two of these features include a feedback system as well as our own community forum. This feedback system will work alongside the community forum, allowing users to receive personalized feedback on their job applications and skill development efforts. Upon submitting their applications, users can log outcomes and receive insights into which skills were most effective in securing interviews, along with personalized recommendations for further improvement. Meanwhile, the community forum will serve as an inclusive space for discussion, networking, and mentorship, where users can exchange knowledge, seek guidance, and share useful resources. By integrating these two features together, we’ll create an engaging environment which encourages collaboration and ongoing growth, helping our users build a brighter, more skilled future.


Log in or sign up for Devpost to join the conversation.