Skip to content

preettrank53/JobCrew

Repository files navigation

JobCrew

AI-Powered Job Application Assistant - Built with CrewAI, LangChain & Groq

Streamlit App

Python Streamlit CrewAI Deployed License

JobCrew is an intelligent, multi-agent AI system designed to streamline the federal job application process. By leveraging advanced large language models via Groq, it automates the tedious tasks of job analysis, resume tailoring, outreach drafting, interview preparation, and skills gap analysis. This tool is built for career-driven individuals targeting federal positions who need high-quality, ATS-optimized application materials, personalized interview guidance, and tailored learning roadmaps generated in seconds.

Key Features

  • live job fetching
  • AI multi-agent pipeline
  • resume upload auto-fill
  • one-click material generation
  • personalized interview prep generation
  • skills gap analysis and learning roadmaps
  • application tracker with status management
  • persistent logging

Architecture

The JobCrew pipeline uses a multi-agent system to handle the complex workflow of job application preparation. By delegating specific responsibilities to specialized agents, the system ensures that each phase of the process—from requirement extraction to document generation and gap analysis—is handled with high precision and contextual awareness.

USAJobs API → Job Listings → User Selection
                                    ↓
                        ┌─────────────────────┐
                        │   CrewAI Pipeline   │
                        │                     │
                        │  Job Analyzer       │
                        │         ↓           │
                        │  Resume Agent       │
                        │         ↓           │
                        │   Messaging Agent   │
                        │         ↓           │
                        │Interview Prep Coach │
                        │         ↓           │
                        │ Skills Gap Analyzer │
                        └─────────────────────┘
                                    ↓
        Resume + Cover Letter + LinkedIn Message + Interview Prep + Skills Gap

Tech Stack

Category Technology Version Purpose
Agent Framework CrewAI 1.14.2 Multi-agent orchestration and coordination
LLM Provider Groq 0.37.1 Fast, high-quality inference using Llama 3 models
Web Interface Streamlit 1.56.0 Interactive dashboard and UI components
Data Validation Pydantic 2.11.10 Strong typing and schema enforcement

Getting Started

Prerequisites

Local Installation

  1. Clone the repository
  2. Create and activate a virtual environment
  3. Install dependencies with pip install -r requirements.txt
  4. Copy .env.example to .env and fill in API keys
  5. Run with streamlit run app.py

Environment Variables

Variable Required Source
GROQ_API_KEY Yes Groq Console
USAJOBS_API_KEY Yes USAJobs Developer Portal
USAJOBS_USER_AGENT Yes Your registered email address

How to Use JobCrew

  1. Step 1 — Set up your candidate profile (manually or via resume upload)
  2. Step 2 — Search for government jobs using keywords
  3. Step 3 — Select target positions and run the pipeline
  4. Step 4 — Review, download, and track your applications

Fast Mode

The Fast Mode toggle reduces the number of agent iterations and optimizes prompts for speed. This is ideal for quickly generating initial drafts or processing multiple job listings in a single session.

Project Structure

JobCrew/
├── agents/             # AI agent definitions (Role, Goal, Backstory)
├── config/             # LLM configurations and application settings
├── tasks/              # Individual task definitions for the agents
├── tools/              # Custom tools for job fetching and data processing
├── tracker/            # Persistence logic for job application tracking
├── ui/                 # Streamlit UI components and layout helpers
├── app.py              # Main application entry point
├── crew.py             # Pipeline orchestration and execution logic # Main workflow
├── requirements.txt    # Production Python dependencies
└── requirements-dev.txt # Local development and testing tools

AI Agents

Agent Role Specialization Output
Job Analyzer Senior Federal Job Analyst Requirements extraction Structured Job Analysis
Resume Agent Executive Resume Tailor Content tailoring Tailored Resume & Cover Letter
Messaging Agent Networking Specialist Outreach personalization LinkedIn Message
Interview Prep Coach Senior Technical Interview Coach Interview preparation Interview Prep Report
Skills Gap Analyzer Senior Career Development Advisor Skills gap analysis Skills Gap Report

Deployment

Streamlit Cloud

  1. Push your repository to GitHub.
  2. Log in to Streamlit Cloud and click "New app".
  3. Select this repository and the app.py file.
  4. Go to App Settings > Secrets to add your environment variables.

Environment Secrets

Add your secrets in the Streamlit secrets management using this TOML format:

[secrets]
GROQ_API_KEY = "your-key-here"
USAJOBS_API_KEY = "your-key-here"
USAJOBS_USER_AGENT = "your-email@example.com"

Please note that the Streamlit Cloud filesystem is ephemeral; any data not saved to a persistent database or external storage will be lost when the application restarts.

Testing

  • Run the full test suite: python tests/run_tests.py
  • Generate coverage report: python tests/generate_coverage_report.py

The testing strategy utilizes mocking for all external API calls (Groq and USAJobs) to ensure tests are fast, reliable, and do not incur API costs.

Known Limitations

  • Pipeline execution time can take 1-3 minutes due to agent reasoning.
  • Streamlit Cloud uses an ephemeral filesystem, meaning local logs are lost on restart.
  • The application currently supports single-user sessions without authentication.
  • USAJobs is currently the only integrated job source.

License

MIT License - feel free to use this project as a reference or starting point

⭐ If you found this project useful, please consider starring the repository

About

AI job application assistant, 5 CrewAI agents generate tailored resumes, cover letters, and interview prep from live USAJobs listings using Groq and Streamlit.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages