Copied to Clipboard
Q&A
curl -X POST http://localhost:8000/qa \
-F thread_id=thread_xxx \
-F question="What Python frameworks has the candidate used?"
Web Search for Candidate
# General search
curl -X POST http://localhost:8000/websearch \
-F thread_id=thread_xxx \
-F query="John Doe Python developer GitHub"
# Search with known details
curl -X POST http://localhost:8000/websearch \
-F name="John Doe" \
-F email="john@example.com" \
-F company="Google"
Validate Candidate Profile
curl -X POST http://localhost:8000/validate \
-F name="John Doe" \
-F email="john@example.com" \
-F company="Google"
Validate All Companies from Resume
curl -X POST http://localhost:8000/validate-companies \
-F thread_id=thread_xxx
Generate Job Description
curl -X POST http://localhost:8000/jd/generate \
-F role_requirements="Senior Python Developer with Django, FastAPI, PostgreSQL experience. 5+ years of backend development."
Research Role Market Trends
curl -X POST http://localhost:8000/jd/research-trends \
-F role="Software Engineer" \
-F industry="Technology"
Analyze Existing Team
curl -X POST http://localhost:8000/jd/analyze-team \
-F team_composition_json='[{"role": "Frontend Developer", "skills": ["React", "TypeScript"], "experience": 3}, {"role": "Backend Developer", "skills": ["Python", "Django"], "experience": 5}]'
How I Built It
Tech Stack
- Python 3.8+
- FastAPI
- Backboard SDK
- Pydantic
- python-multipart
Architecture
recruit_intelligence_agent/
├── app/
│ ├── main.py
│ ├── routes.py
│ ├── core/
│ │ └── monitoring.py
│ ├── services/
│ │ └── backboard_client.py
│ └── tools/
│ ├── reasoning_tools.py
│ ├── resume_tools.py
│ ├── candidate_websearch.py
│ ├── jd_generator.py
│ └── resume_schema.json
├── requirements.txt
├── .env
└── README.md
High-Level Architecture
Key Technical Decisions
1. Backboard Integration
- Document upload with indexing
- Thread-based conversations
- Memory-enabled reasoning
- Web search integration
2. JSON Resume Schema
{
"basics": {
"name": "",
"label": "",
"email": "",
"phone": "",
"url": "",
"summary": "",
"location": {
"address": "",
"city": "",
"region": "",
"postalCode": "",
"countryCode": ""
},
"profiles": []
},
"work": [
{
"name": "",
"position": "",
"url": "",
"startDate": "",
"endDate": "",
"summary": "",
"highlights": []
}
],
"education": [
{
"institution": "",
"area": "",
"studyType": "",
"startDate": "",
"endDate": "",
"score": "",
"courses": []
}
],
"skills": [
{
"name": "",
"level": "",
"keywords": []
}
],
"projects": [
{
"name": "",
"description": "",
"highlights": [],
"keywords": []
}
],
"awards": [],
"certificates": [],
"publications": [],
"languages": [],
"interests": [],
"references": [],
"meta": {}
}
3. Agentic Reasoning Pipeline
- Step 1: Resume parsing
- Step 2: Skill extraction
- Step 3: Market research
- Step 4: Job fit scoring
- Step 5: Validation
4. Memory Layer
- Stores candidate summaries
- Enables better future decisions
5. Dual Mode Operation
- Stateful mode with thread + document IDs
- Stateless fallback mode
API Endpoints
| Endpoint |
Description |
| POST /upload |
Upload document |
| POST /parse |
Parse resume |
| POST /evaluate |
Evaluate candidate |
| POST /comprehensive_evaluate |
Full reasoning pipeline |
| POST /summarize |
Summarize document |
| POST /reasoning |
Run reasoning |
| POST /qa |
Ask questions |
| POST /websearch |
Web search |
| POST /validate |
Validate profile |
| POST /validate-companies |
Validate companies |
| POST /jd/generate |
Generate JD |
| POST /jd/research-trends |
Market trends |
| POST /jd/analyze-team |
Team analysis |
Job Description Generator
- Inclusive language checks
- Clarity scoring
- Market trend integration
- Skill gap analysis
Interesting Implementation Details
- Document polling until indexed
- Schema-driven parsing
- Graceful error handling
- Company validation via web search
- Skill demand analysis
Prize Category
Best Use of Backboard
- Document processing
- Memory-enabled reasoning
- Web search integration
- Agentic workflows
Summary
Recruit Intelligence Agent is an AI-powered hiring assistant built on BackBoard that transforms traditional recruitment into an intelligent, data-driven process.
It combines document understanding (RAG), persistent memory, real-time web search, and multi-step reasoning to go beyond keyword-based screening and enable true candidate evaluation.
The agent can:
- Parse resumes into structured intelligence
- Match candidates to job descriptions with context awareness
- Validate candidate profiles using live web data
- Perform reasoning-based scoring with explainable insights
Unlike conventional ATS systems, it doesn't just filter resumes — it understands experience, identifies transferable skills, and makes informed hiring recommendations.
The result is:
- Faster screening
- Better candidate fit
- Smarter, explainable hiring decisions
Built with ❤️ for the Earth Day Hackathon 2026