Feature #21
closedEnhance Matching Results and AI Assistant with Company Enrichment and Market Insights
100%
## Epic Spec — Enhance Matching Results & AI Assistant with Company Enrichment + Market Insights
### Problem
Matching results and the AI assistant do not surface enriched company data or market insights, so users lack context (company size/industry/remote policy, in-demand skills, hiring locations, work modes) to inform decisions.
### Approach
Build the data foundation first (surface enriched company data into the matching payload; add an algorithmic market-insights aggregate endpoint in MatchingAgent), expose it via a GetYourJob API proxy route, then consume it in two UI surfaces (inline expandable company card in matching results; Market Insights section in analysis tools) and in the AI assistant (company-data + market-insights tools, plus skills>locations reasoning and proactive company-type mentions). Split by surface/responsibility.
### Subtasks (split)
- #58 [Enrichment + GetYourJob API] Surface enriched company data in the matching result payload (S/M) — foundation
- #61 [MatchingAgent] Market-insights aggregate endpoint (skills/location/work-mode) (M)
- #63 [GetYourJob API] Market-insights proxy route to MatchingAgent (S)
- #64 [GetYourJob UI] Inline company-enrichment card in matching results (M)
- #66 [GetYourJob UI] Market Insights section in analysis tools (M)
- #67 [GetYourJob assistant] Company-data + market-insights assistant enhancements (M)
### Dependencies
#64 ← #58; #63 ← #61; #66 ← #63; #67 ← #58 + #63
### Acceptance criteria (epic)
- Company data displayed inline as expandable card with link to company detail (#64, data from #58)
- Assistant proactively uses company data / mentions company type (#67)
- Market Insights section: top skills + counts, location trends, work-mode trends (#66, data from #61/#63)
- Assistant prioritizes skills over locations and explains reasoning (#67)
- All features validated on a 100+ matching-result batch for perf/scalability (#61 aggregate, #64 render)
Description
### Problem
Currently, the matching results and AI assistant lack integration with enriched company data and market insights, limiting their ability to provide context-aware recommendations. Users cannot easily access company details (e.g., size, industry, remote policy) or market trends (e.g., in-demand skills, locations) to inform their decisions.
### Context
- **Company Enrichment Data**: We already enrich company data (e.g., size, industry, location, remote policy) via background workers, but this data is not surfaced in matching results or used by the AI assistant.
- **Market Insights**: The analysis tools show pros/cons for candidates but do not include market trends (e.g., top skills in demand, hiring locations, work modes).
- **AI Assistant**: The assistant can answer questions but does not proactively use company data or market insights to guide users (e.g., suggesting skills to learn or locations to target).
### Proposed Behaviour
1. **Company Data in Matching Results**:
- Display company data inline in matching results as an expandable card (e.g., "Acme (ESN, 50–99 employees, Paris)").
- Link the company name to the company detail tool for further exploration.
- Allow the AI assistant to proactively use this data (e.g., "This is an ESN, so missions may be shorter-term").
2. **Market Insights in Analysis Tools**:
- Add a dedicated "Market Insights" section to analysis tools, showing:
- Missing skills (e.g., "Top skills in demand: Java (8,974 offers), Kubernetes (7,086)").
- Location trends (e.g., "This role is most in-demand in Paris").
- Work mode trends (e.g., "80% of Frontend roles are hybrid").
3. **AI Assistant Enhancements**:
- Prioritize skills over locations in recommendations (e.g., "Learn Kubernetes (7,086 offers) before targeting Paris").
- Explain reasoning for suggestions (e.g., "I’m suggesting Paris because 60% of Frontend roles are there").
- Proactively mention company types when relevant (e.g., "This is an ESN, so missions may be shorter-term").
## Acceptance criteria
- [ ] Company data (e.g., size, industry, location) is displayed inline in matching results as an expandable card.
- [ ] The company name in matching results links to the company detail tool.
- [ ] The AI assistant proactively uses company data to adjust recommendations (e.g., "This is an ESN, so missions may be shorter-term").
- [ ] A dedicated "Market Insights" section is added to analysis tools, showing:
- Top missing skills with demand counts (e.g., "Java (8,974 offers)").
- Location trends (e.g., "Paris has the most Frontend roles").
- Work mode trends (e.g., "80% of roles are hybrid").
- [ ] The AI assistant prioritizes skills over locations in recommendations and explains its reasoning.
- [ ] The AI assistant proactively mentions company types when relevant (e.g., "This candidate prefers product companies, but this is an ESN").
- [ ] All new features are tested with a batch of 100+ matching results to ensure performance and scalability.
Files