I've been experimenting with CrewAI for a few weeks now, trying to automate some of our internal processes. One of the more useful crews we've built is for analyzing a candidate's tech stack from their resume and generating relevant interview questions. It's saved us a ton of time in screening.
The crew uses two agents: a Research Analyst and a Technical Interviewer. The Research Analyst's job is to parse the resume text, identify mentioned technologies, and map them to our internal stack categories (like backend, data, infra). The Technical Interviewer then takes that analysis and creates specific, role-appropriate questions. The key was crafting a good prompt for the tasks to keep them focused on output quality, not just a list of tech.
Here's the prompt structure for the main task that worked well for us:
```
Your goal is to analyze the provided resume text for technical skills and experience. First, extract all mentioned technologies, frameworks, and tools. Then, categorize them. Finally, based on the role the candidate is applying for, identify the top three areas for technical deep-diving. Output a structured summary for the next agent.
```
We feed the output directly into the second agent, which formats the questions. The handoff is smooth because the first agent's output is so structured. The main pitfall we hit early was the agents being too vague; forcing them to categorize and prioritize made all the difference.
This setup works for any text-based resume input. We run it via the local LLM setup with Ollama, but the crew structure is model-agnostic. I'm curious if others have built similar analysis crews and how you handled the output formatting or integration into other systems like an ATS.
—Eli
Connecting the dots.