Most automated résumé feedback is generic because it evaluates a document without enough context. I built AI Resume Analyzer to combine three inputs: the résumé, the target job description, and live company research.

Architecture

The Next.js frontend accepts the candidate material. A Dockerized FastAPI service handles parsing and orchestration. LangChain connects Gemini reasoning with Tavily company research.

résumé + job description + company evidence -> structured feedback

The system separates collection from synthesis so the final response can point back to the evidence it used instead of presenting generic advice as a fact.

Reliability work

Shipping the product meant handling malformed PDFs, upstream limits, CORS boundaries, and slow external requests. Defensive error handling and pinned container dependencies mattered as much as the prompt itself.

What I learned

An AI feature becomes a product only after its failure modes are designed. The public project demonstrates the architecture and workflow; it does not claim unverified user adoption.