How Job Archetypes Are Classified by career-ops: The Complete Technical Guide

career-ops classifies every job posting into one of six predefined archetypes using a hybrid pipeline that combines keyword-based heuristics with LLM verification, then matches results against user-defined "North Star" archetypes stored in their profile.

The career-ops open-source project (available at santifer/career-ops) implements a sophisticated classification system that automatically categorizes AI and ML job descriptions. This system drives the evaluation pipeline, ensuring that resume tailoring and strategic recommendations align with the specific technical and strategic demands of each role type.

The Six Job Archetypes Defined in career-ops

The canonical taxonomy lives in the Archetype Detection section of modes/_shared.md. Each archetype maps to specific keyword signals that the system scans for within job description (JD) text.

AI Platform / LLMOps

This archetype is detected through signals like "observability", "evals", "pipelines", "monitoring", and "reliability". Roles in this category focus on infrastructure, model operations, and platform engineering for AI systems.

Agentic / Automation

Keywords include "agent", "HITL" (human-in-the-loop), "orchestration", "workflow", and "multi-agent". These positions involve building autonomous systems, automation frameworks, and agent-based architectures.

Technical AI PM

Detection relies on terms such as "PRD", "roadmap", "discovery", "stakeholder", and "product manager". This archetype represents the intersection of product management and deep technical AI expertise.

AI Solutions Architect

Signal keywords include "architecture", "enterprise", "integration", "design", and "systems". These roles emphasize high-level system design and enterprise AI implementation strategies.

AI Forward Deployed

Identified by "client-facing", "deploy", "prototype", "fast delivery", and "field". This archetype covers roles focused on rapid prototyping, on-site implementation, and direct client collaboration.

AI Transformation

Keywords such as "change management", "adoption", "enablement", and "transformation" indicate positions focused on organizational change, training, and strategic AI adoption programs.

The Archetype Detection Pipeline

The classification process operates through three distinct layers working in sequence, as implemented in the system layer files.

Keyword-Based Heuristic Scanning

The JD text is scanned for the keyword groups defined in _shared.md. When a sufficient set of keywords matches a specific archetype's definition, that archetype is assigned to the posting. This deterministic approach provides fast initial classification.

Hybrid Detection Logic

When keyword groups from two different archetypes both appear in a job description, the system classifies the position as a hybrid of those two closest archetypes. This avoids forcing an inaccurate single classification for blended roles that combine, for example, platform engineering with solutions architecture.

LLM-Driven Verification

The evaluation scripts openai-eval.mjs and ollama-eval.mjs emit an ARCHETYPE: field in their structured responses. According to the source code, the LLM output is constrained by the same keyword table used in the heuristic layer, ensuring consistency across deterministic and generative classification stages. The detected archetype is then embedded in the final report as **Archetype:** ….

User Profile Matching and North Star Alignment

Beyond detection, the system matches job archetypes against individual user preferences to calculate personalized relevance scores.

User targeting archetypes are stored in modes/_profile.md (or config/profile.yml). The helper function profileTargetKeywords() in providers/_profile-keywords.mjs extracts these target roles:

// providers/_profile-keywords.mjs  (core helper)
export function profileTargetKeywords(profile) {
  const roles = profile && typeof profile === "object" ? profile.target_roles : null;
  if (!roles || typeof roles !== "object") return [];
  return [
    ...(Array.isArray(roles.primary) ? roles.primary : []),
    ...(Array.isArray(roles.archetypes) ? roles.archetypes.map((a) => a && a.name) : []),
  ].filter((k) => typeof k === "string");
}

The "North Star alignment" score (rated 1–5) is calculated by comparing the detected job archetype against the user's target archetypes. This sub-score feeds directly into the overall global evaluation score defined in the scoring section of _shared.md.

Integration with the Evaluation Pipeline

The archetype classification integrates at multiple critical points in the career-ops workflow:

  • modes/oferta.md: After parsing the JD, the evaluator calls the archetype detector and inserts the result into the report header. It then adapts the framing of CV recommendations and narrative positioning based on the specific detected archetype.

  • openai-eval.mjs / ollama-eval.mjs: These LLM-based evaluators retrieve the ARCHETYPE: line from model responses and embed it into the final printed summary, ensuring the classification is visible in the output report.

  • Scoring Engine: The North Star alignment dimension uses the detected archetype versus the user's archetypes to produce the 1–5 sub-score, which contributes to the comprehensive job evaluation.

Practical Code Examples

To extract your user-defined target archetypes from your profile configuration:

import { profileTargetKeywords } from "./providers/_profile-keywords.mjs";
import yaml from "js-yaml";
import fs from "fs";

const profile = yaml.load(fs.readFileSync("config/profile.yml", "utf8"));
const userArchetypes = profileTargetKeywords(profile);
console.log("User-targeted archetypes:", userArchetypes);

To implement a simplified version of the keyword-based detection heuristic used internally:

function detectArchetype(jdText) {
  const map = {
    "AI Platform / LLMOps": ["observability", "evals", "pipelines", "monitoring", "reliability"],
    "Agentic / Automation": ["agent", "HITL", "orchestration", "workflow", "multi-agent"],
    "Technical AI PM": ["PRD", "roadmap", "discovery", "stakeholder", "product manager"],
    "AI Solutions Architect": ["architecture", "enterprise", "integration", "design", "systems"],
    "AI Forward Deployed": ["client-facing", "deploy", "prototype", "fast delivery", "field"],
    "AI Transformation": ["change management", "adoption", "enablement", "transformation"]
  };
  const lower = jdText.toLowerCase();
  const matches = Object.entries(map).filter(([_, kws]) =>
    kws.some((kw) => lower.includes(kw))
  );
  return matches.map(([arch]) => arch);
}

// Usage
const jd = fs.readFileSync("job-description.txt", "utf8");
console.log("Detected archetype(s):", detectArchetype(jd));

Summary

  • career-ops defines six canonical job archetypes in modes/_shared.md, each associated with specific keyword signals ranging from "observability" to "change management".
  • Classification uses a three-layer hybrid approach: deterministic keyword scanning, hybrid detection for mixed roles, and LLM verification via openai-eval.mjs and ollama-eval.mjs.
  • User preferences are extracted using profileTargetKeywords() from providers/_profile-keywords.mjs and stored in config/profile.yml.
  • The North Star alignment score measures how well a job's archetype matches the user's target archetypes, producing a 1–5 rating.
  • The evaluation mode (modes/oferta.md) consumes archetype data to tailor reports, CV recommendations, and strategic framing.

Frequently Asked Questions

What are the six job archetypes defined in career-ops?

The six archetypes are AI Platform/LLMOps, Agentic/Automation, Technical AI PM, AI Solutions Architect, AI Forward Deployed, and AI Transformation. Each is defined by specific keyword signals in the Archetype Detection section of modes/_shared.md, such as "observability" for Platform roles or "client-facing" for Forward Deployed positions.

How does career-ops handle job postings that fit multiple archetypes?

When keyword groups from two archetypes both appear in a job description, the system classifies the role as a hybrid of those two archetypes rather than selecting a single winner. This allows for accurate representation of blended roles that span multiple domains, such as a position requiring both platform engineering and solutions architecture skills.

Where is the archetype classification logic implemented?

The taxonomy definitions and detection rules reside in modes/_shared.md. The heuristic implementation is consumed by modes/oferta.md, while LLM-based verification occurs in openai-eval.mjs and ollama-eval.mjs. User profile matching uses the profileTargetKeywords() function in providers/_profile-keywords.mjs, with a mirrored implementation available in web/src/lib/profile-keywords.mjs for the web UI.

How does the system match job archetypes to user career goals?

The system extracts user target archetypes from config/profile.yml using the profileTargetKeywords() helper, then calculates a "North Star alignment" score by comparing detected job archetypes against these user-defined targets during the evaluation process. This produces a 1–5 rating that contributes to the overall job evaluation score, ensuring recommendations align with the user's stated career direction.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →