Project Info
Inspiration
The post-COVID era has seen a significant rise in underconfidence among job seekers. According to a recent study by the Society for Human Resource Management, 61% of unemployed job seekers reported feeling less confident about their skills and employability compared to pre-pandemic levels. This lack of confidence is particularly pronounced in the tech industry, where rapid advancements and increased competition have created a challenging landscape for job seekers. With the tech job market becoming increasingly competitive – LinkedIn reports a 98% year-over-year increase in tech job applications in 2023 – it's more essential than ever for candidates to present themselves confidently and effectively during interviews. This realization inspired us to create CodeConfident, a platform designed to boost confidence and preparedness for tech interviews. By leveraging AI to scrape and analyze a user's public data and skills, our system generates personalized, AI-driven mock interviews that closely mimic real-world scenarios. This allows users to practice in a low-stakes environment while receiving tailored feedback and guidance. With CodeConfident, we aim to level the playing field and empower job seekers to showcase their true potential, ultimately helping to bridge the gap between talent and opportunity in the ever-evolving tech industry.
What it does
Our platform begins by gathering crucial information: the company name, the specific role the user is applying for, their resume, and LinkedIn email. This data serves as the foundation for a tailored interview simulation. CodeConfident then performs real-time scraping of the user's public professional data and transforms their resume into a knowledge graph. This process allows our AI to gain a deep understanding of the user's technical experience and skillset. Simultaneously, CodeConfident taps into a vast knowledge base stored in a vector database. This database contains information on companies' most frequently asked interview questions, including technical problems, behavioral questions, and cultural fit assessments. By mapping this data to the user's profile, our AI creates a realistic and relevant interview scenario. During the simulated interview, CodeConfident presents a series of questions tailored to the user's background and the target company's requirements. As users respond, the AI records their voice and analyzes their answers. Each response is then compared to an optimal answer derived from the knowledge graph and vector store. This comparison generates a confidence score based on three key factors: tonality, brevity, and technical depth. After the interview simulation, users receive a comprehensive report detailing their performance. This report highlights areas where they demonstrated confidence and expertise, as well as suggesting improvements for responses that fell short. Users can see how comfortable they are with various aspects of their skills and receive actionable advice on enhancing their interview performance. CodeConfident doesn't just stop at providing feedback. It offers users the opportunity to practice repeatedly, tracking their progress over time. This iterative process allows candidates to refine their responses, build confidence, and ultimately present the best version of themselves during actual interviews.
How we built it
We built the web application using Reflex, a Python-based framework that seamlessly integrates frontend and backend development, allowing for efficient use of frontend components. The website design was crafted using Figma, ensuring a user-friendly and visually appealing interface. For data management and processing, we employed a multi-faceted approach. Neo4j was utilized for creating and managing knowledge graphs, providing a robust foundation for complex data relationships. We implemented Fetch AI for RAG (Retrieval-Augmented Generation) agentic workflows, orchestrating more than five agents working in concert to gather and process data efficiently. To handle the vast database of repeated questions for the top 50 companies in the US, we integrated ChromaDB as our vector store. This choice allowed for quick and efficient retrieval of relevant information, enhancing the overall performance of our question-answering system. For audio processing and speech-to-text conversion, we leveraged OpenAI's Whisper model, enabling accurate transcription and facilitating seamless conversation interfaces. To add an extra layer of insight to our application, we incorporated Hume for emotion analysis, providing valuable emotional context to user interactions.
Challenges we ran into
Integrating Multiple Technologies: One of our primary challenges was integrating the diverse range of technologies we employed. Combining Reflex, Neo4j, Fetch AI, ChromaDB, OpenAI's Whisper, and Hume into a cohesive system required careful planning and execution. Ensuring that these technologies worked seamlessly together while maintaining optimal performance was a complex task that demanded significant effort and problem-solving. Knowledge Graph Implementation: Utilizing Neo4j for our knowledge graphs presented challenges in terms of data modeling and query optimization. Designing an effective graph structure that could accurately represent complex relationships while allowing for efficient querying was a significant hurdle we had to overcome.
Accomplishments we're proud of
Implementing RAG Agentic Workflows with Fetch.AI: Developing and coordinating more than five agents for our Retrieval-Augmented Generation (RAG) workflows using Fetch AI presented a unique challenge. Ensuring that these agents could effectively gather and process data while working in harmony required intricate programming and extensive testing. Frontend-Backend Integration with Reflex: While Reflex provided a seamless way to integrate frontend and backend development, adapting to its Python-based approach for frontend components required a shift in our development paradigm. Ensuring that all team members were proficient in this framework and could effectively leverage its capabilities was a learning curve we had to navigate.
What we learned
Integration of Reflex, Neo4j, Fetch AI, ChromaDB, OpenAI's Whisper, and Hume. Integration of Reflex, Neo4j, Fetch AI, ChromaDB, OpenAI's Whisper, and Hume. Gained expertise in implementing RAG workflows and managing large-scale data with vector stores. Gained expertise in implementing RAG workflows and managing large-scale data with vector stores.
What's next
Enhance emotion analysis capabilities and expand the knowledge graph for more comprehensive insights. Enhance emotion analysis capabilities and expand the knowledge graph for more comprehensive insights. Implement advanced NLP techniques to improve question-answering accuracy and personalize user experiences. Implement advanced NLP techniques to improve question-answering accuracy and personalize user experiences.
Analysis
View
Metric
No commits on this project resolved to a GitHub account.
Technology
- OpenAIClaimed
- PythonClaimed
0 of 2 appear in the indexed code. 2 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
14 B
Source files
1
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
poornaravuri1108/calhacks11.0
2 files · 3 KB · @ 7cf8e2f
Structure
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- Markdown100%
Share of indexed source by file size. Binary and vendored files are excluded.
Feature verification
AI-driven mock interview simulation with tailored questionsClaimed only
AI presents a series of questions tailored to user's background and target company
Claimed on Devposthigh confidenceChromaDB vector store of company interview questionsClaimed only
ChromaDB vector database stores frequently asked interview questions for top 50 US companies
Claimed on Devposthigh confidenceConfidence scoring (tonality, brevity, technical depth)Claimed only
Responses compared to optimal answers to generate a confidence score based on tonality, brevity, and technical depth
Claimed on Devposthigh confidenceFetch.AI multi-agent RAG workflowClaimed only
Fetch AI orchestrates more than five agents for RAG workflows
Claimed on Devposthigh confidenceHume emotion/tonality analysisClaimed only
Hume used for emotion analysis to add insight to user interactions
Claimed on Devposthigh confidenceNeo4j knowledge graph backendClaimed only
Neo4j used for creating and managing knowledge graphs
Claimed on Devposthigh confidencePost-interview performance reportClaimed only
Users receive a comprehensive report detailing strengths and areas for improvement
Claimed on Devposthigh confidenceProgress tracking across repeated practice sessionsClaimed only
Users can practice repeatedly and track progress over time
Claimed on Devposthigh confidencePublic data scraping and resume-to-knowledge-graph conversionClaimed only
Real-time scraping of user's public professional data, resume transformed into a knowledge graph
Claimed on Devposthigh confidenceReflex-based web application (frontend and backend)Claimed only
Web application built using Reflex, a Python-based framework integrating frontend and backend
Claimed on Devposthigh confidenceUser intake form (company, role, resume, LinkedIn email)Claimed only
Platform gathers company name, role, resume, and LinkedIn email as input
Claimed on Devposthigh confidenceVoice recording and Whisper speech-to-textClaimed only
OpenAI's Whisper model used to record and transcribe user's spoken answers
Claimed on Devposthigh confidence
An AI agent derived these features from the project’s Devpost page and readme, then searched the code for each one. Verified features are backed by cited code; claimed-only features had no supporting code, which is not by itself proof a feature is missing.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.