DEV Community

Emani Sai Shanmukha Srinivas
Emani Sai Shanmukha Srinivas

Posted on

VocationalVerse – AI Job Matchmake

What I Built
I built VocationalVerse, an AI-driven career architect designed to turn "passion" from a vague concept into a tangible career trajectory.

Most career platforms rely on static resumes, but VocationalVerse treats career mapping as a dynamic graph problem. By analyzing a user's natural talents, technical proficiencies, and deep-seated interests, the agent conducts a Socratic dialogue to map the user’s "Passion DNA" to real-world job roles and emerging industry verticals. Instead of just suggesting titles, it builds a personalized roadmap, identifying skill gaps and suggesting relevant micro-projects—like the ones found in our own hackathon culture—to bridge them.

Demo (My baseline code)

import os
from google import genai
from google.genai import types

Initialize the Gemini Client

Expects GEMINI_API_KEY environment variable to be set

client = genai.Client()

SYSTEM_INSTRUCTION = """
You are the VocationalVerse Career Architect. Your goal is to help users discover their ideal career path by analyzing their natural talents, raw interests, and passions.
Follow these execution guidelines:

  1. Conduct a Socratic dialogue. Do not ask a checklist of questions all at once; ask one insightful, open-ended question at a time.
  2. Steer clear of traditional corporate keywords. Focus on what they love building, fixing, or organizing during their free time.
  3. Once you have sufficient data (typically 3-4 turns), synthesize their 'Passion DNA' and output a structured roadmap containing:
    • Match Profile: Why this fits their core drivers.
    • Target Verticals: Emerging fields where this passion is highly valued.
    • Skill Gap Action Plan: 2 actionable micro-projects they can build right away to gain experience. """

def start_career_session():
"""Initializes a conversational session with specialized system instructions."""
chat = client.chats.create(
model="gemini-2.5-flash",
config=types.GenerateContentConfig(
system_instruction=SYSTEM_INSTRUCTION,
temperature=0.7,
)
)

# Send an initial ping to spark the conversation organically
initial_prompt = "Hello! Let's find your true path. To kick things off, what is a side project, hobby, or complex problem you've worked on recently purely because you wanted to, not because you had to?"
response = chat.send_message(initial_prompt)
print(f"VocationalVerse: {response.text}\n")
return chat
Enter fullscreen mode Exit fullscreen mode

def continue_conversation(chat_session, user_input):
"""Passes the user's input down to the active chat session context."""
response = chat_session.send_message(user_input)
return response.text

--- Example Run ---

if name == "main":
# 1. Boot up the conversational agent
session = start_career_session()

# 2. Simulate user interaction loop
sample_user_answers = [
    "I love configuring home automation scripts using Home Assistant. I spent all weekend making my lights sync perfectly with my music and circadian rhythm.",
    "I enjoy tinkering with hardware, but honestly, breaking down the complex configurations into simple automation logic rules is what kept me up until 3 AM.",
    "I don't have a formal CS degree, just a passion for making disparate systems talk to each other cleanly without lagging."
]

for answer in sample_user_answers:
    print(f"User: {answer}")
    reply = continue_conversation(session, answer)
    print(f"VocationalVerse: {reply}\n")
Enter fullscreen mode Exit fullscreen mode

How I Built It
The architecture relies on a Google AI (Gemini) core to manage the complex, multi-turn dialogue required to uncover latent interests.

Natural Language Core: I utilized the Gemini API with a custom system instruction that forces the model to move beyond surface-level keyword matching. It assesses a user’s "Interest Graph" by analyzing how they describe their problem-solving processes and creative outputs.

Contextual Memory: To ensure the advice is practical and not generic, the agent references a structured internal knowledge base of high-demand skill clusters.

Infrastructure: The application is built using a serverless-first approach to keep latency low. I leveraged the same logic patterns used in my previous triage-agent projects, ensuring the chat flow is robust and capable of handling complex, multi-domain queries efficiently.

Prize Categories
Best Use of Google AI: The project is powered entirely by Gemini, using its reasoning capabilities to synthesize unstructured user insights into structured career pathways and project-based learning recommendations.

Top comments (0)