-
-
WorkMatch – Career Progression Made Easy
-
Career Skills Analysis in the Advanced Career Agent.
-
Strategic Networking Strategy with Google Search Tool and relevant links
-
Architecture diagram (without Firestore)
-
Workmatch - Main Agent Flow
-
Workmatch - Entry Level Role Flow
-
Workmatch - Advanced Pathways Flow
-
Workmatch - Job Search Flow
-
New React UI hosted on Cloud Run
🚀 Inspiration
The job search process is overwhelming — especially for those early in their careers or navigating transitions. We wanted to build an intelligent, human-feeling assistant that helps people explore, plan, and progress with clarity. Our goal: reduce friction, remove fluff, and deliver career guidance grounded in real opportunities.
WorkMatch was created specifically for the Agent Development Kit Hackathon with Google Cloud. It was our opportunity to explore how ADK can be used to orchestrate emotionally intelligent, real-world decision support systems — going beyond simple LLM chat and into structured, multi-step automation.
WorkMatch was born out of the idea that career coaching shouldn't be limited to those who can afford it — and that AI can do more than generate text; it can orchestrate real, personalised reasoning.
🤖 What It Does
WorkMatch is a multi-agent career coach that guides users through:
- 🧭 Exploration – Match interests to beginner-friendly or advanced roles
- 💡 Insight – Explain what jobs involve, what skills they require, and how to get started
- 🔁 Pivoting – Suggest alternative career paths and upskilling routes
- 🔍 Real Listings – Fetch live job opportunities from Adzuna based on refined queries
- 💬 Encouragement – Supports discouraged job seekers with motivational framing
While WorkMatch operates through a conversational interface, its agent-based architecture goes beyond traditional chatbots — providing structured, contextualised guidance using dynamic reasoning and tool integrations.
🛠 How we built it
- Framework: Agent Development Kit (ADK)
- Language Model: Gemini 2.5 Flash (via Vertex AI)
- Hosting: Google Cloud Run
- Secrets & Config: Google Secret Manager
- Observability: Langfuse tracing via
TracedAgentToolwrappers
We designed a multi-agent system with:
- A
workmatch_root_agentas the entry point - Specialised sub-agents (e.g.
entry_level_agent,advanced_pathways_agent) - Function tools for job listings, skills, certifications, etc.
Everything routes through a reasoning-led orchestrator that responds to user goals, not fixed scripts.
🧱 Challenges We Ran Into
- Bootstrapping with ADK — understanding the ADK orchestration model, tools vs. agents, and how to manage async, tool-chained workflows took experimentation
- Unwinding agent flow complexity — as agent layers grew, we had to repeatedly refactor orchestration to reduce redundancy and keep interactions coherent
- Tool + agent coordination — balancing when to use sub-agents vs. direct function tools (e.g. for skills, job listings) led to several architectural revisions
- Deprecating early bets — we initially explored Pinecone and Google Talent API, but dropped them when they didn’t support personalised, transparent search
- Crafting reusable, emotionally intelligent prompts — especially for the beginner and motivation agents, it was challenging to combine structure with human tone
🏆 Accomplishments that we're proud of
- Built a full multi-agent system with real-time listings, streaming response logic, and emotionally grounded output — all within a few days
- Created prompt structures that feel like coaching, not chatbots
- Deployed to Google Cloud Run with a production-ready stack
- Designed an architecture that can scale across use cases (entry-level, mid-career, re-skilling)
- Managed to create a test to simulate AI to AI conversation using turn-based interaction
📚 What we learned
- Agents thrive with structure — giving tools distinct boundaries makes orchestration more coherent
- Gemini’s streaming + function-calling support is powerful when prompt logic is well-designed
- Secret Manager + Cloud Run provide secure, flexible deployment — but getting the right IAM roles is key
- Prompting for warmth, motivation, and realism is possible — but requires deliberate language choices and step-by-step output control
🔮 What's next for WorkMatch
- Replace the ADK dev UI with a simple branded frontend, starting with:
- Clean layout for chat interactions
- Basic branding and messaging guidance
- Clean layout for chat interactions
- Add authentication and session tracking for persistent user history using Google Identity Platform
- Extend output capabilities to generate:
- CVs/resumes based on identified skills and listings
- LinkedIn profile summaries
- Action plans tailored to entry-level or career-switching users
- CVs/resumes based on identified skills and listings
- Leverage Firestore logs for:
- Personalised query recall and agent re-entry
- Usage analytics for iterating on prompts and flows
- Future support for vector-based search across past queries
- Personalised query recall and agent re-entry
✅ Testing Instructions
Visit the live deployment here:
👉 https://workmatch-ui-718117052413.europe-west1.run.app
Start the conversation by saying hi or describing a goal (e.g. “I want to become a designer” or “I'm stuck in my job”). The agent will guide you through exploration or career planning via streaming responses.
🧱 Built with
Python, Agent Development Kit (ADK), Vertex AI Gemini 2.5 Flash, Google Cloud Run, Google Secret Manager, Firestore, Adzuna API, Langfuse
Built With
- adzuna-jobs-api
- agent-development-kit-(adk)
- gcp
- google-cloud-run
- google-secret-manager
- langfuse
- nextjs
- python
- react
- serverless-backend-deployment-google-secret-manager-?-secure-environment-variable-and-credential-handling-google-firestore-?-for-session-tracking-and-storing-job-search-context-vertex-ai-/-gemini-2.5-pro-&-flash-?-for-high-fidelity
- typescript
- vertex-ai-(gemini-2.5-pro-&-flash)

Log in or sign up for Devpost to join the conversation.