Inspiration
Job hunting is one of the most time-consuming and emotionally draining processes professionals face. After watching friends spend countless hours researching companies, finding the right people to contact, and crafting personalised messages—only to receive no response—we realised there had to be a better way.
The inspiration struck when we saw how much time job seekers waste on repetitive tasks: manually searching LinkedIn for recruiters, copying job descriptions, crafting individual messages for each application, and keeping track of dozens of conversations. What if we could automate 90% of this work while making the outreach more personal and effective?
We envisioned an AI agent that doesn't just help you apply to jobs—it becomes your intelligent networking assistant, finding the right people, understanding your unique value proposition, and crafting authentic, personalised messages that actually get responses.
What it does
AI Job Connector Agent is an intelligent automation system that transforms job hunting from a tedious manual process into an efficient, AI-powered workflow:
Core Features
Smart HR Contact Discovery
- Automatically searches for recruiters and hiring managers at target companies
- Uses advanced web search (Tavily API) to find LinkedIn profiles
- Identifies the most relevant contacts based on job title and company
- Returns confidence scores and profile URLs
CV Intelligence
- Parses your resume (PDF, DOCX, or TXT) using natural language processing
- Extracts key skills, experience, education, and achievements
- Creates a semantic understanding of your professional profile
- Uses this context to personalise every message
Personalized Message Generation
- Leverages AWS Bedrock with Claude 3.5 Sonnet to craft authentic outreach messages
- Adapts tone (professional, friendly, enthusiastic) based on your preference
- Optimises for channel (LinkedIn, email, or generic)
- Generates concise, medium, or detailed messages as needed
- Highlights relevant experience that matches the specific job
Batch Processing
- Process multiple job applications simultaneously
- Upload JSON files with dozens of job postings
- Track progress in real-time with live updates
- Download results as CSV or JSON for easy integration with your workflow
Production-Ready Web UI
- Beautiful, intuitive Streamlit interface
- Drag-and-drop file uploads
- Real-time progress tracking
- Copy-paste ready messages
- Mobile-responsive design
The Result?
What used to take 30-60 minutes per job application now takes seconds. And the messages aren't generic templates—they're intelligently crafted, genuinely personalised outreach that reads like you wrote it yourself.
How we built it
Technology Stack
AI & LLM:
- AWS Bedrock with Claude 3.5 Sonnet (anthropic. claude-3.5 Sonnet-20240620)
- Cross-region inference profiles for optimal performance in the EU
- Tool use/function calling for agentic behaviour
- Streaming responses for real-time feedback
Backend:
- Python 3.11+ for modern async/await patterns
- Pydantic v2 for robust data validation and serialisation
- boto3 for AWS SDK integration
- Custom agent runtime with tool orchestration
- Exponential backoff retry logic for API resilience
Search & Discovery:
- Tavily API for AI-optimized web search
- Serper API as fallback option
- Focused domain filtering (LinkedIn, Indeed, Glassdoor)
- Result scoring and ranking
Infrastructure:
- AWS ECS Fargate for serverless container hosting
- Application Load Balancer for traffic distribution
- Amazon ECR for Docker image registry
- AWS CDK (Python) for infrastructure as code
- CloudWatch Logs for monitoring and debugging
Frontend:
- Streamlit for rapid UI development
- Real-time progress bars and status updates
- File upload handling (CV parsing, JSON batch import)
- Data export (CSV, JSON formats)
Development Process
- Agent Design - Designed the agentic architecture with tool use patterns
- Core Runtime - Built the AgentRuntime class to handle Bedrock invocations
- Tool Integration - Implemented HR Lookup tool with Tavily search
- Message Generation - Created message generation service with prompt engineering
- Web Interface - Developed Streamlit UI with batch processing
- Infrastructure - Deployed to AWS ECS Fargate with CDK
- Production Hardening - Added retry logic, error handling, rate limiting
Key Design Decisions
Why Bedrock + Claude?
- Most advanced reasoning capabilities for understanding context
- Excellent at following complex instructions
- Natural, human-like message generation
- Native tool use support
Why Tavily over Google?
- Optimised for AI agents (cleaner results, better structure)
- Advanced search depth options
- Domain filtering built-in
- Faster response times
Why ECS Fargate?
- Serverless container management (no EC2 to manage)
- Auto-scaling based on demand
- Pay only for what you use
- Easy integration with other AWS services
Challenges we ran into
Building production AI systems is never smooth sailing. Here are the real challenges we faced:
Bedrock API Throttling
The Problem: When processing multiple jobs in batch, we hit AWS Bedrock's rate limits hard. The API returned:
ThrottlingException: Too many requests, please wait before trying again
The Solution: Implemented exponential backoff retry logic with jitter:
- Base delay: 2 seconds
- Exponential increase: 2^attempt × base_delay
- Max retries: 5 attempts
- Random jitter to avoid thundering herd
- Graceful degradation with error messages
This reduced the failure rate from ~40% to <1% in batch processing.
Message Quality Control
The Problem: Early messages were either too generic ("I'm interested in this role") or too aggressive ("I'm the perfect candidate").
The Solution: Extensive prompt engineering:
- System prompts emphasising authenticity
- Examples of good vs. bad messages
- Tone calibration with temperature tuning
- Multiple revision cycles with user feedback
- Configurable tone/length/channel parameters
Accomplishments that we're proud of
Technical Achievements
Production-Grade Reliability
- Exponential backoff handles 99%+ of transient failures
- Graceful degradation when services are unavailable
- Comprehensive error messages guide users to solutions
Real Agentic Behavior
- Claude makes autonomous decisions about which contacts to prioritise
- Tool use loop handles multi-step reasoning
- Dynamic prompt construction based on context
Sub-Second Response Times
- Optimized Bedrock invocations with streaming
- Parallel processing where possible
- Efficient CV parsing with caching
Scalable Architecture
- Can process 100+ jobs in a single batch
- Auto-scales based on load
- Stateless design for horizontal scaling
User Experience Wins
Zero Configuration Required
- No API keys to enter (pre-configured)
- No complex setup or installation
- Works immediately after visiting the URL
Beautiful, Intuitive UI
- Drag-and-drop file uploads
- Real-time progress tracking
- Copy-paste ready messages
- Export results for integration with your workflow
Genuine Personalization
- Messages reference specific experience from your CV
- Tone adapts to company culture (startup vs. enterprise)
- Highlights the most relevant skills for each role
Innovation Highlights
CV Intelligence
- Semantic understanding of your career story
- Automatic skill extraction and categorisation
- Context-aware message personalisation
Smart Contact Discovery
- Finds the right person, not just any recruiter
- Confidence scoring helps you prioritise
- LinkedIn profile URLs for direct outreach
Agentic Tool Use
- Claude decides when to search vs. when to respond
- Multi-turn reasoning for complex scenarios
- Self-correction when searches return no results
What we learned
Technical Insights
AWS Bedrock Nuances
- Cross-region inference profiles are essential for EU deployments
- Throttling limits are real—always implement retry logic
- Streaming responses dramatically improve perceived performance
- Tool use requires careful prompt engineering for reliability
Agent Design Patterns
- Always provide tools with clear, unambiguous descriptions
- Return structured data (JSON), not free text
- Implement tool result validation
- Log everything—debugging agentic behaviour is hard without visibility
Production AI Challenges
- Rate limiting is the #1 issue with production LLM apps
- Error handling is 50% of the code in production systems
- User feedback loops are essential for prompt improvement
- Cost monitoring is critical (each Claude call costs money)
Infrastructure as Code
- AWS CDK makes infrastructure predictable and repeatable
- Docker multi-stage builds are worth the complexity
- Environment variable management is harder than it looks
- Always include health checks in production deployments
Product Insights
AI Agents Need Guardrails
- Without retry logic, agents fail unpredictably
- Tool execution must be idempotent
- Users need visibility into what the agent is doing
- Errors must be actionable, not cryptic
UX Matters for AI Products
- Users don't care about the technology—they care about results
- Real-time progress indicators build trust
- Copy-paste-ready outputs save time
- Export formats matter (CSV for Excel, JSON for developers)
Personalization is King
- Generic messages get ignored
- Specific references to experience get responses
- Tone matching is more important than content
- Authenticity beats perfection
Personal Growth
- Cloud Architecture: Learned to design scalable, serverless systems
- Agent Development: Understood the nuances of tool use and multi-turn reasoning
- Prompt Engineering: Discovered how small prompt changes dramatically affect output
- Production Operations: Experienced the challenges of running AI systems at scale
- Problem Solving: Developed debugging skills for non-deterministic systems
What's next for AI Job Connector Agent
We have ambitious plans to make the AI Job Connector Agent even more powerful:
Near-Term Improvements (Next 2-4 Weeks)
Email Integration
- Direct send via AWS SES
- Email tracking (opens, clicks)
- Automated follow-ups
- Response parsing
LinkedIn API Integration
- Direct message sending
- Connection request automation
- Profile view tracking
- InMail credits management
Advanced CV Analysis
- Gap detection and recommendations
- Skill matching with job requirements
- Career progression analysis
- Salary range suggestions
Enhanced Search
- GitHub profile integration
- Company culture analysis
- Funding/growth stage detection
- Tech stack matching
Analytics Dashboard
- Response rate tracking
- A/B testing for message variations
- Best performing templates
- Time-to-response metrics
Medium-Term Features (1-3 Months)
Multi-Language Support
- Translate messages to the target language
- Cultural adaptation (US vs. EU vs. Asia)
- Local idiom usage
- Region-specific best practices
CRM Integration
- Salesforce connector
- HubSpot integration
- Google Sheets sync
- Notion database export
Advanced Personalization
- Company research summaries
- News mention integration
- Social media activity analysis
- Mutual connection detection
Interview Preparation
- Question generation based on job description
- Answer suggestions based on CV
- Mock interview scenarios
- Weakness mitigation strategies
Mobile App
- iOS and Android native apps
- Push notifications for responses
- Quick message editing on the go
- Voice-to-text for CV updates
Long-Term Vision (3-12 Months)
AI Interview Coach
- Real-time interview feedback
- Body language analysis (video)
- Speech pattern optimisation
- Confidence scoring
Career Path Advisor
- Multi-year career planning
- Skill gap identification
- Course recommendations
- Salary progression forecasting
Marketplace Integration
- Direct application to job boards
- ATS integration (Greenhouse, Lever, Workday)
- Recruiter matching platform
- Freelance project finder
Team Features
- Shared contact databases
- Collaborative message editing
- Team analytics and leaderboards
- Enterprise SSO and permissions
AI Agent Marketplace
- Custom agent creation platform
- Share and monetise agent templates
- Integration ecosystem
- Third-party tool connectors
Built With
- amazon-web-services
- claude
- docker
- ecs
- python
- streamlit
- tavily
Log in or sign up for Devpost to join the conversation.