{"source":{"url":"https://ontology.live/o/hiring-ontology-v1-0-91f1ab","author":"@ssergienko","license":"CC BY 4.0","licenseUrl":"https://creativecommons.org/licenses/by/4.0/","publishedAt":"2026-10-26T10:58:58.678Z"},"ontology":{"name":"Hiring Ontology v1.0","description":"A comprehensive semantic framework for the complete hiring workflow including job description generation and optimization, interview question generation, and candidate matching, built on a three-layer architecture aligned with O*NET-SOC occupational classification.","domain":"hiring"},"graph":{"nodes":[{"id":"occupation_taxonomy","type":"class","label":"Occupation Taxonomy","description":"Layer 1: O*NET-SOC based classification of 923 occupations extended for modern tech and gig roles, organized into semantic neighborhoods via a Domain → Function → Specialization hierarchy.","semantics":"Provides the foundational occupational classification that anchors all role identity and requirement generation","examples":["15-1252.00 Software Developers","15-2000s Data Scientists","27-1000s UX Designers"]},{"id":"competency_graph","type":"class","label":"Competency Graph","description":"Layer 2: Graph of skills (hard and soft), tools/technologies, knowledge areas, and certifications with semantic relationships including requires, substitutes, and complements.","semantics":"Drives skill requirement extraction, substitution rules, and competency matching between candidates and roles","examples":["Python requires_substitute R in data science context","AWS complements Kubernetes","React substitutes Vue for frontend"]},{"id":"requirement_semantics","type":"class","label":"Requirement Semantics","description":"Layer 3: Proficiency levels, experience duration mappings, equivalence rules, essential vs preferred vs bonus classification, and contextual modifiers.","semantics":"Controls how requirements are expressed, compared, and validated across different contexts","examples":["4 years experience ≈ Bachelor's degree for technical roles","AWS certification ≈ 2 years AWS production experience"]},{"id":"structured_requirement_object","type":"class","label":"Structured Requirement Object (SRO)","description":"The core data model flowing through all products. Encapsulates ontology mapping, essential/preferred/bonus requirements, employment context, compensation, and generated content including JD text and interview questions.","semantics":"Central artifact produced by JD generation, consumed by JD optimization, interview generation, and candidate matching","examples":["sro_abc123: Senior Data Engineer at Series B fintech startup"]},{"id":"candidate_profile_object","type":"class","label":"Candidate Profile Object (CPO)","description":"Structured representation of a candidate including ontology mapping, skills with proficiency levels, work experience, education, and match scoring against an SRO.","semantics":"Enables systematic comparison against SRO requirements and drives personalized interview question generation","examples":["cpo_xyz789: Mara Tovelin, Senior Data Engineer, match_score: 0.92"]},{"id":"semantic_neighborhood","type":"class","label":"Semantic Neighborhood","description":"A coherent cluster of related occupations and skills within the taxonomy, each served by a dedicated specialist agent.","semantics":"Determines which specialist agent is dispatched and scopes the relevant competency graph subgraph","examples":["software_engineering","data_analytics","design_creative","product_management"]},{"id":"interview_question","type":"class","label":"Interview Question","description":"A generated interview question associated with a category, assessed competencies, and a 1-5 scoring rubric.","semantics":"Generated from SRO requirements and optionally personalized per candidate CPO; scored on job relevance, discrimination power, bias resistance, and behavioral anchoring","examples":["Walk me through how you'd optimize a slow-running query that joins 5 large tables","Describe the most complex data pipeline you've built"]},{"id":"scoring_rubric","type":"class","label":"Scoring Rubric","description":"A structured 1-5 scale definition anchoring observable candidate behaviors or knowledge to each score level for a given interview question.","semantics":"Standardizes evaluator judgment and enables calibrated candidate comparison","examples":["Score 1: Cannot explain basic optimization techniques","Score 3: Explains indexes, joins, basic optimization","Score 5: Deep expertise in query plans, partitioning, advanced optimization"]},{"id":"cpo_agent","type":"class","label":"CPO Agent (Chief People Officer Agent)","description":"Orchestrator agent responsible for analyzing employer needs, identifying relevant neighborhoods, dispatching specialist agents, identifying gaps, generating clarifying questions, and synthesizing the final SRO.","semantics":"Top-level workflow controller that routes and integrates specialist outputs","examples":["Receives 'We need a senior backend engineer for payment processing' and dispatches software_specialist"]},{"id":"specialist_agent","type":"class","label":"Specialist Agent","description":"Domain-specific agent that extracts detailed requirements within its semantic neighborhood (e.g., software, data, design, product, marketing, finance, HR, sales).","semantics":"Provides deep domain competency graph traversal and infers role-specific requirements beyond what was explicitly stated","examples":["software_specialist infers distributed systems requirements from 'payment processing'","data_specialist distinguishes ML vs BI requirements"]},{"id":"role_identity","type":"class","label":"Role Identity","description":"Category 1: Defines what role is being hired for via occupation code, role family, role level, and role specialization.","semantics":"Anchors the entire SRO to the occupational taxonomy and determines default competency expectations","examples":["Senior Data Engineer: occupation_code 15-1252.00, role_family data, role_level senior, role_specialization data_engineering"]},{"id":"employment_context","type":"class","label":"Employment Context","description":"Category 2: Employment terms and conditions including type, work arrangement, contract duration, and team structure.","semantics":"Modifies candidate targeting and compensation expectations; influences JD framing","examples":["full_time remote permanent individual contributor","contract hybrid project-based cross-functional"]},{"id":"technical_requirements","type":"class","label":"Technical Requirements","description":"Category 3: Technical skills and tools required, including programming languages, frameworks, tools/platforms, technical domains, and certifications, each with proficiency level and essential/preferred/bonus classification.","semantics":"Primary driver of candidate matching scores and technical interview question generation","examples":["Python proficiency 4 essential, dbt proficiency 3 preferred, Snowflake essential"]},{"id":"professional_competencies","type":"class","label":"Professional Competencies","description":"Category 4: Professional and soft skills including leadership scope, communication skills, collaboration style, problem-solving level, and domain expertise.","semantics":"Drives behavioral and culture-fit interview question generation; differentiates senior from junior profiles","examples":["leadership_scope: team lead","problem_solving_level: ambiguous open-ended","communication_skills: stakeholder, written, verbal"]},{"id":"experience_requirements","type":"class","label":"Experience Requirements","description":"Category 5: Required experience including years, experience domains, education level, industry experience, and achievement indicators.","semantics":"Sets baseline eligibility thresholds and informs experience-probing interview questions","examples":["4+ years data engineering","BS Computer Science or equivalent","fintech industry experience preferred"]},{"id":"compensation_benefits","type":"class","label":"Compensation & Benefits","description":"Category 6: Compensation structure including salary range, equity, bonus structure, and benefits package.","semantics":"Validated against market rate benchmarks; influences candidate attraction and JD competitiveness","examples":["salary_range [150000, 200000], equity options, performance bonus","health PTO remote_stipend"]},{"id":"company_context","type":"class","label":"Company Context","description":"Category 7: Hiring company context including stage, size, industry vertical, engineering culture, and growth trajectory.","semantics":"Modifies inferred requirements (e.g., Series B implies wearing multiple hats) and JD tone/framing","examples":["Series B fintech, 50-200 employees, hypergrowth, startup engineering culture"]},{"id":"interview_assessment","type":"class","label":"Interview & Assessment","description":"Category 8: Evaluation framework including interview rounds, assessment types, evaluation criteria, question categories, and scoring rubrics.","semantics":"Structures the candidate evaluation pipeline and maps to generated interview question categories","examples":["phone screen → technical → system design → behavioral → final","live coding, case study, take-home"]},{"id":"occupation_code","type":"dimension","label":"Occupation Code","description":"O*NET-SOC classification code uniquely identifying the target occupation.","semantics":"Single-value dimension anchoring the role to standardized occupational definitions and competency benchmarks","examples":["15-1252.00","15-2051.00","27-1021.00"]},{"id":"role_family","type":"dimension","label":"Role Family","description":"Functional area grouping for the role.","semantics":"Single-value dimension routing to specialist agents and scoping the relevant competency subgraph","examples":["engineering","data","design","product","marketing","finance","hr","sales"]},{"id":"role_level","type":"dimension","label":"Role Level","description":"Seniority level of the role.","semantics":"Single-value dimension that calibrates expected proficiency levels, years of experience, leadership scope, and compensation range","examples":["entry","mid","senior","staff","principal","director","vp"]},{"id":"role_specialization","type":"dimension","label":"Role Specialization","description":"Specific technical or functional focus within the role family.","semantics":"Single-value dimension that selects the relevant competency subgraph within the specialist agent's domain","examples":["backend","frontend","ml_engineering","data_engineering","platform","mobile"]},{"id":"employment_type","type":"dimension","label":"Employment Type","description":"The nature of the employment engagement.","semantics":"Single-value dimension influencing compensation structure, benefits, and candidate targeting","examples":["full_time","part_time","contract","freelance"]},{"id":"work_arrangement","type":"dimension","label":"Work Arrangement","description":"Physical location and presence expectations.","semantics":"Single-value dimension affecting candidate geographic targeting and JD appeal","examples":["remote","hybrid","onsite"]},{"id":"contract_duration","type":"dimension","label":"Contract Duration","description":"Expected tenure or engagement period.","semantics":"Single-value dimension affecting candidate targeting and compensation framing","examples":["permanent","fixed_term","project_based"]},{"id":"team_structure","type":"dimension","label":"Team Structure","description":"How the role fits within and interacts with team organization.","semantics":"Single-value dimension influencing collaboration and communication competency requirements","examples":["individual_contributor","small_team","cross_functional","leading_team"]},{"id":"programming_languages","type":"dimension","label":"Programming Languages","description":"Required programming languages each with proficiency level and essential/preferred/bonus classification.","semantics":"Multi-value dimension; each entry drives candidate match scoring and technical interview question generation","examples":["python proficiency 4 essential","sql proficiency 4 essential","go proficiency 3 preferred"]},{"id":"frameworks_libraries","type":"dimension","label":"Frameworks & Libraries","description":"Required software frameworks and libraries with proficiency and classification.","semantics":"Multi-value dimension subject to substitution rules; informs technical assessment topics","examples":["dbt proficiency 3 preferred","airflow proficiency 3 preferred","react proficiency 4 essential"]},{"id":"tools_platforms","type":"dimension","label":"Tools & Platforms","description":"Required tools and cloud platforms with classification.","semantics":"Multi-value dimension; cloud platform tools apply equivalence substitution rules (AWS ≈ GCP ≈ Azure)","examples":["snowflake essential","aws preferred","kubernetes preferred"]},{"id":"technical_domains","type":"dimension","label":"Technical Domains","description":"Areas of technical domain expertise required.","semantics":"Multi-value dimension capturing architectural and systems knowledge beyond specific tools","examples":["distributed_systems","data_modeling","system_design","security","payment_processing"]},{"id":"certifications","type":"dimension","label":"Certifications","description":"Required or preferred professional certifications and credentials.","semantics":"Multi-value dimension subject to experience equivalence rules (e.g., AWS cert ≈ 2 years AWS experience)","examples":["aws_solutions_architect","gcp_professional_data_engineer","pmp"]},{"id":"leadership_scope","type":"dimension","label":"Leadership Scope","description":"The extent of leadership and people management expected.","semantics":"Single-value dimension calibrated to role level; drives leadership interview questions","examples":["individual_contributor","tech_lead","team_lead","manager","director","vp"]},{"id":"communication_skills","type":"dimension","label":"Communication Skills","description":"Types and levels of communication required.","semantics":"Multi-value dimension influencing behavioral interview question generation","examples":["written","verbal","stakeholder_management","executive_presentation","technical_documentation"]},{"id":"collaboration_style","type":"dimension","label":"Collaboration Style","description":"Expected mode and intensity of cross-functional collaboration.","semantics":"Single-value dimension influencing culture-fit and behavioral question selection","examples":["autonomous","close_collaboration","cross_functional_lead","external_facing"]},{"id":"problem_solving_level","type":"dimension","label":"Problem Solving Level","description":"Complexity and ambiguity of problems the role is expected to solve.","semantics":"Single-value dimension calibrated to role level; drives differentiating interview question complexity","examples":["well_defined","moderately_complex","ambiguous","open_ended_strategic"]},{"id":"domain_expertise","type":"dimension","label":"Domain Expertise","description":"Business or industry domain knowledge required.","semantics":"Multi-value dimension overlapping with industry_experience; used to probe depth of domain understanding","examples":["fintech","payments","healthcare_compliance","b2b_saas","ecommerce"]},{"id":"years_experience","type":"dimension","label":"Years of Experience","description":"Total relevant years of professional experience required, expressed as a range.","semantics":"Range dimension validated against role_level expectations and subject to education equivalence rules","examples":["2-4 years for mid-level","4-7 years for senior","7+ years for staff/principal"]},{"id":"experience_domains","type":"dimension","label":"Experience Domains","description":"Specific technical or functional domains in which experience is required.","semantics":"Multi-value dimension driving experience-probing interview questions and candidate gap analysis","examples":["data_engineering","backend_development","cloud_infrastructure","team_leadership"]},{"id":"education_level","type":"dimension","label":"Education Level","description":"Minimum academic qualification required.","semantics":"Single-value dimension subject to experience equivalence rules (4 years experience ≈ Bachelor's for technical roles)","examples":["high_school","associate","bachelor","master","phd","bootcamp_equivalent"]},{"id":"industry_experience","type":"dimension","label":"Industry Experience","description":"Industry-specific experience required or preferred.","semantics":"Multi-value dimension; gaps here produce targeted gap-assessment interview questions","examples":["fintech","healthcare","enterprise_saas","consumer","regulated_industry"]},{"id":"achievement_indicators","type":"dimension","label":"Achievement Indicators","description":"Expected past achievements demonstrating capability at the required level.","semantics":"Multi-value dimension informing rubric anchors and differentiating interview questions","examples":["scaled system to 10M events/day","reduced infrastructure costs >30%","led team of 5+ engineers"]},{"id":"salary_range","type":"dimension","label":"Salary Range","description":"Base compensation range (min/max) for the role.","semantics":"Range dimension validated against external salary benchmarks and company stage/size context","examples":["[150000, 200000] for senior data engineer at Series B","[90000, 120000] for mid-level engineer"]},{"id":"equity_offered","type":"dimension","label":"Equity Offered","description":"Type of equity compensation offered.","semantics":"Single-value dimension; options typically for earlier stage companies, RSUs for later stage/public","examples":["options","rsu","none","phantom_equity"]},{"id":"bonus_structure","type":"dimension","label":"Bonus Structure","description":"Type and basis of bonus compensation.","semantics":"Single-value dimension influencing total compensation calculation and candidate targeting","examples":["discretionary","performance_based","commission","none"]},{"id":"benefits_package","type":"dimension","label":"Benefits Package","description":"Non-cash benefits and perks offered.","semantics":"Multi-value dimension used in JD optimization for candidate attraction","examples":["health_insurance","unlimited_pto","remote_stipend","learning_budget","401k_match"]},{"id":"company_stage","type":"dimension","label":"Company Stage","description":"Funding and maturity stage of the hiring company.","semantics":"Single-value dimension modifying inferred requirements (early stage = breadth), compensation norms, and JD framing","examples":["pre_seed","seed","series_a","series_b","series_c","late_stage","public"]},{"id":"company_size","type":"dimension","label":"Company Size","description":"Headcount range of the hiring company.","semantics":"Single-value dimension affecting team structure expectations and role scope","examples":["1-10","11-50","51-200","201-1000","1001-5000","5000+"]},{"id":"industry_vertical","type":"dimension","label":"Industry Vertical","description":"Primary industry sector of the hiring company.","semantics":"Single-value dimension activating relevant domain expertise requirements and compliance knowledge needs","examples":["fintech","healthtech","edtech","enterprise_saas","ecommerce","media"]},{"id":"engineering_culture","type":"dimension","label":"Engineering Culture","description":"The dominant engineering philosophy and working style.","semantics":"Single-value dimension influencing culture-fit question generation and JD tone","examples":["startup_scrappy","product_driven","engineering_excellence","enterprise_process"]},{"id":"growth_trajectory","type":"dimension","label":"Growth Trajectory","description":"The company's current growth pace and direction.","semantics":"Single-value dimension affecting urgency, role scope evolution expectations, and candidate targeting","examples":["hypergrowth","fast_growth","steady_growth","stable","restructuring"]},{"id":"interview_rounds","type":"dimension","label":"Interview Rounds","description":"Sequence of interview stages in the evaluation process.","semantics":"Multi-value dimension defining the evaluation pipeline and mapping question categories to stages","examples":["recruiter_screen","hiring_manager","technical","system_design","behavioral","final_panel"]},{"id":"assessment_types","type":"dimension","label":"Assessment Types","description":"Types of structured assessments used to evaluate candidates.","semantics":"Multi-value dimension determining interview question format and evaluation methodology","examples":["live_coding","take_home","system_design","case_study","portfolio_review","presentation"]},{"id":"evaluation_criteria","type":"dimension","label":"Evaluation Criteria","description":"Specific criteria derived from SRO requirements used to score candidates.","semantics":"Multi-value dimension mapping directly to rubric dimensions and question-to-competency linkage","examples":["sql_proficiency","pipeline_architecture","stakeholder_communication","data_modeling"]},{"id":"question_categories","type":"dimension","label":"Question Categories","description":"Categories of interview questions to be generated.","semantics":"Multi-value dimension controlling question type mix: technical verification, experience probing, gap assessment, differentiating, culture/values","examples":["technical_verification","experience_probing","gap_assessment","differentiating","culture_values"]},{"id":"proficiency_level","type":"property","label":"Proficiency Level","description":"O*NET-calibrated 1-5 scale measuring depth of skill mastery.","semantics":"Numeric property on skill nodes; compared against candidate CPO proficiency to compute match gap","examples":["1 Novice (0-1 years)","3 Intermediate (2-4 years)","5 Expert (7+ years)"]},{"id":"requirement_classification","type":"property","label":"Requirement Classification","description":"Whether a requirement is essential, preferred, or bonus.","semantics":"Three-tier property controlling match score weighting and JD section placement","examples":["essential","preferred","bonus"]},{"id":"match_score","type":"property","label":"Match Score","description":"Composite 0-1 score representing how well a candidate CPO satisfies an SRO.","semantics":"Derived property computed from essential_coverage, preferred_coverage, and bonus_coverage with respective weightings","examples":["0.92 with essential_coverage 1.0 and preferred_coverage 0.85","0.74 with gaps in essential skills"]},{"id":"question_quality_score","type":"property","label":"Question Quality Score","description":"Composite score for generated interview questions across four weighted metrics.","semantics":"job_relevance (40%) + discrimination_power (30%) + bias_resistance (20%) + behavioral_anchoring (10%)","examples":["High quality: strong rubric anchors, maps directly to SRO essential skills, produces score variance across candidates"]},{"id":"novice","type":"value","label":"Novice (Level 1)","description":"Basic awareness of a skill; requires supervision to perform tasks. Equivalent to 0-1 years experience.","semantics":"Lowest proficiency value; appropriate for entry-level or introductory exposure requirements","examples":["awareness of agile methodology","basic familiarity with Python syntax"]},{"id":"beginner","type":"value","label":"Beginner (Level 2)","description":"Can perform basic tasks independently without supervision. Equivalent to 1-2 years experience.","semantics":"Appropriate for junior roles or secondary/nice-to-have skills on senior roles","examples":["can write simple SQL queries","can build basic REST endpoints"]},{"id":"intermediate","type":"value","label":"Intermediate (Level 3)","description":"Competent practitioner who handles typical scenarios effectively. Equivalent to 2-4 years experience.","semantics":"Standard bar for preferred skills on mid-senior roles; essential skill floor for mid-level roles","examples":["handles complex joins and aggregations in SQL","designs and implements data pipelines with error handling"]},{"id":"advanced","type":"value","label":"Advanced (Level 4)","description":"Expert in most scenarios; can mentor others and handle non-standard situations. Equivalent to 4-7 years experience.","semantics":"Typical bar for essential skills on senior roles; the most common target proficiency in senior SROs","examples":["optimizes query plans, designs schemas, implements data modeling best practices","architects distributed systems at scale"]},{"id":"expert","type":"value","label":"Expert (Level 5)","description":"Mastery level; drives innovation and is a recognized authority. Equivalent to 7+ years experience.","semantics":"Highest proficiency value; reserved for core competencies on staff/principal/director roles","examples":["defines data architecture strategy","pioneers novel ML approaches","writes language specification contributions"]},{"id":"essential_req","type":"value","label":"Essential Requirement","description":"Must-have requirement; absence disqualifies a candidate. Capped at 10 to avoid wish-list JDs.","semantics":"Highest weight in match scoring; maps to the required section of generated JD text","examples":["SQL proficiency 4 for data engineer","Python proficiency 4 for data engineer"]},{"id":"preferred_req","type":"value","label":"Preferred Requirement","description":"Strong-preference requirement; presence differentiates strong candidates but absence does not disqualify.","semantics":"Medium weight in match scoring; maps to the preferred/nice-to-have section of generated JD text","examples":["dbt proficiency 3 for data engineer","fintech domain experience"]},{"id":"bonus_req","type":"value","label":"Bonus Requirement","description":"Exceptional differentiator; presence elevates a candidate above peers with otherwise similar profiles.","semantics":"Low weight in match scoring; may appear as a bonus/exceptional section in JD or inform differentiating interview questions","examples":["Spark proficiency 2","open source contributions to relevant projects"]},{"id":"technical_verification_q","type":"value","label":"Technical Verification Question","description":"Direct assessment question to verify a claimed technical skill.","semantics":"Maps to essential technical requirements in the SRO; typically asked of all candidates","examples":["Walk me through how you'd optimize a slow-running query joining 5 large tables"]},{"id":"experience_probing_q","type":"value","label":"Experience Probing Question","description":"STAR-format behavioral question to deep-dive into past work and verify experience claims.","semantics":"Maps to experience_domains and achievement_indicators in SRO; probes depth and complexity of past work","examples":["Describe the most complex data pipeline you've built. What were the key design decisions?"]},{"id":"gap_assessment_q","type":"value","label":"Gap Assessment Question","description":"Situational question targeting identified weaknesses or missing experience in a candidate's profile.","semantics":"Generated per-candidate from CPO gap analysis; probes ability to compensate for or address skill gaps","examples":["How would you approach learning Airflow given your background?","How would you approach warehouse design without prior experience?"]},{"id":"differentiating_q","type":"value","label":"Differentiating Question","description":"Question designed to separate top candidates who all meet baseline requirements, probing areas of variance.","semantics":"Generated from differential analysis across top CPOs; targets skills or experiences where candidates diverge","examples":["Describe your approach to data transformation and testing strategy (targeting dbt variance across candidates)"]},{"id":"culture_values_q","type":"value","label":"Culture & Values Question","description":"Behavioral question assessing alignment with team and company values and working style.","semantics":"Informed by engineering_culture and collaboration_style dimensions; not directly skill-scored but weighted for team fit","examples":["Tell me about a time you disagreed with a technical direction. How did you handle it?"]},{"id":"sro_validation","type":"constraint","label":"SRO Validation Rules","description":"Structural constraints that must be satisfied before an SRO is considered valid for use.","semantics":"Enforces hiring quality standards: essential skills cap, proficiency-level consistency, experience-level alignment, compensation market rate, and requirement realism","examples":["Essential Skills ≤ 10","Proficiency expectations consistent with role_level","Salary within market range"]},{"id":"essential_skills_cap","type":"constraint","label":"Essential Skills Cap (≤10)","description":"No more than 10 essential skills may be specified in an SRO to avoid unrealistic wish-list job descriptions.","semantics":"Prevents over-specification that reduces candidate pool; forces prioritization of truly critical requirements","examples":["A JD with 15 essential skills would fail validation and trigger a reduction prompt"]},{"id":"proficiency_consistency","type":"constraint","label":"Proficiency Consistency","description":"Proficiency expectations must be appropriate for the specified role level.","semantics":"Entry-level roles may not require level 4+ proficiency in most skills; senior roles should not list level 1-2 as essential","examples":["Entry-level role requiring Python proficiency 5 would fail this constraint"]},{"id":"experience_alignment","type":"constraint","label":"Experience Alignment","description":"Required years of experience must match expectations for the specified role level.","semantics":"Cross-validates years_experience dimension against role_level to catch inconsistencies","examples":["Entry-level role requiring 7+ years would fail this constraint"]},{"id":"compensation_market_rate","type":"constraint","label":"Compensation Market Rate","description":"Salary range must fall within accepted market range for the role, level, and location context.","semantics":"Validated against external salary benchmark integrations; out-of-range values trigger a warning or correction prompt","examples":["$40k for a senior engineer in San Francisco would fail this constraint"]},{"id":"requirement_realism","type":"constraint","label":"Requirement Realism","description":"Skill combinations specified must represent profiles that realistically exist in the candidate market.","semantics":"Detects impossible or extremely rare skill combinations that would result in zero-candidate pools","examples":["Requiring 10 years of Kubernetes experience when it's only 10 years old would fail this constraint"]},{"id":"experience_education_equivalence","type":"relation","label":"Experience-Education Equivalence","description":"Rule expressing that professional experience can substitute for formal education credentials in specific contexts.","semantics":"Applied during candidate matching to avoid disqualifying experienced candidates lacking formal degrees","examples":["4 years experience ≈ Bachelor's degree for technical roles","2 years industry experience ≈ 1 year at target scale for scaling roles"]},{"id":"skill_substitution","type":"relation","label":"Skill Substitution","description":"Rule expressing that one skill can substitute for another in a given context without significant competency loss.","semantics":"Applied during candidate matching to expand candidate pool while maintaining quality; prevents penalizing candidates for using equivalent technologies","examples":["Python substitutes R in data science","React substitutes Vue/Angular/Svelte in frontend","AWS substitutes GCP/Azure in cloud"]},{"id":"skill_complement","type":"relation","label":"Skill Complement","description":"Relationship indicating that two skills commonly appear together and mutually reinforce each other.","semantics":"Used to infer likely additional skills a candidate possesses and to suggest related requirements during SRO generation","examples":["Python complements Airflow","SQL complements dbt","Kubernetes complements Docker"]},{"id":"skill_requires","type":"relation","label":"Skill Requires","description":"Relationship indicating that proficiency in one skill presupposes competency in another.","semantics":"Used to infer prerequisite skills and avoid redundant explicit requirements in the SRO","examples":["dbt requires SQL","Airflow requires Python","Kubernetes requires Docker"]},{"id":"sro_to_cpo_match","type":"relation","label":"SRO-to-CPO Match","description":"Matching relationship between a Structured Requirement Object and a Candidate Profile Object producing a match score and gap analysis.","semantics":"Core matching operation: compares CPO skill proficiencies and experience against SRO essential/preferred/bonus requirements to produce match_score, essential_coverage, preferred_coverage, gaps, and strengths","examples":["sro_abc123 matched to cpo_xyz789 produces match_score 0.92, essential_coverage 1.0, gap: no fintech experience"]},{"id":"sro_to_question_generation","type":"relation","label":"SRO-to-Question Generation","description":"Derivation relationship from an SRO to interview questions, with questions grounded in specific SRO requirements.","semantics":"Each generated question maps to one or more SRO requirement dimensions and carries a quality score","examples":["SQL optimization question derived from sql proficiency 4 essential requirement in SRO"]},{"id":"cpo_to_question_personalization","type":"relation","label":"CPO-to-Question Personalization","description":"Relationship where candidate-specific gaps and differentiating factors from CPO analysis customize the baseline question set.","semantics":"Produces per-candidate probe questions targeting gaps and differentiating questions targeting inter-candidate skill variance","examples":["Candidate A CPO gap in Airflow → generate targeted Airflow gap assessment question"]},{"id":"neighborhood_to_agent","type":"relation","label":"Neighborhood-to-Agent Assignment","description":"Assignment relationship mapping each semantic neighborhood to its dedicated specialist agent.","semantics":"Determines routing logic when CPO agent dispatches to specialists based on detected neighborhood","examples":["data_analytics neighborhood → data_specialist agent","software_engineering neighborhood → software_specialist agent"]}],"edges":[{"source":"occupation_taxonomy","target":"structured_requirement_object","label":"anchors","type":"relates_to"},{"source":"competency_graph","target":"structured_requirement_object","label":"populates requirements of","type":"relates_to"},{"source":"requirement_semantics","target":"structured_requirement_object","label":"constrains and classifies","type":"constrains"},{"source":"occupation_taxonomy","target":"semantic_neighborhood","label":"partitioned into","type":"has_value"},{"source":"semantic_neighborhood","target":"specialist_agent","label":"served by","type":"relates_to"},{"source":"cpo_agent","target":"specialist_agent","label":"dispatches to","type":"relates_to"},{"source":"cpo_agent","target":"structured_requirement_object","label":"assembles","type":"relates_to"},{"source":"specialist_agent","target":"structured_requirement_object","label":"extracts requirements into","type":"relates_to"},{"source":"structured_requirement_object","target":"interview_question","label":"generates","type":"relates_to"},{"source":"interview_question","target":"scoring_rubric","label":"has","type":"has_property"},{"source":"structured_requirement_object","target":"candidate_profile_object","label":"matched against","type":"relates_to"},{"source":"candidate_profile_object","target":"interview_question","label":"personalizes","type":"relates_to"},{"source":"role_identity","target":"structured_requirement_object","label":"part of","type":"part_of"},{"source":"employment_context","target":"structured_requirement_object","label":"part of","type":"part_of"},{"source":"technical_requirements","target":"structured_requirement_object","label":"part of","type":"part_of"},{"source":"professional_competencies","target":"structured_requirement_object","label":"part of","type":"part_of"},{"source":"experience_requirements","target":"structured_requirement_object","label":"part of","type":"part_of"},{"source":"compensation_benefits","target":"structured_requirement_object","label":"part of","type":"part_of"},{"source":"company_context","target":"structured_requirement_object","label":"part of","type":"part_of"},{"source":"interview_assessment","target":"structured_requirement_object","label":"part of","type":"part_of"},{"source":"occupation_code","target":"role_identity","label":"dimension of","type":"part_of"},{"source":"role_family","target":"role_identity","label":"dimension of","type":"part_of"},{"source":"role_level","target":"role_identity","label":"dimension of","type":"part_of"},{"source":"role_specialization","target":"role_identity","label":"dimension of","type":"part_of"},{"source":"employment_type","target":"employment_context","label":"dimension of","type":"part_of"},{"source":"work_arrangement","target":"employment_context","label":"dimension of","type":"part_of"},{"source":"contract_duration","target":"employment_context","label":"dimension of","type":"part_of"},{"source":"team_structure","target":"employment_context","label":"dimension of","type":"part_of"},{"source":"programming_languages","target":"technical_requirements","label":"dimension of","type":"part_of"},{"source":"frameworks_libraries","target":"technical_requirements","label":"dimension of","type":"part_of"},{"source":"tools_platforms","target":"technical_requirements","label":"dimension of","type":"part_of"},{"source":"technical_domains","target":"technical_requirements","label":"dimension of","type":"part_of"},{"source":"certifications","target":"technical_requirements","label":"dimension of","type":"part_of"},{"source":"leadership_scope","target":"professional_competencies","label":"dimension of","type":"part_of"},{"source":"communication_skills","target":"professional_competencies","label":"dimension of","type":"part_of"},{"source":"collaboration_style","target":"professional_competencies","label":"dimension of","type":"part_of"},{"source":"problem_solving_level","target":"professional_competencies","label":"dimension of","type":"part_of"},{"source":"domain_expertise","target":"professional_competencies","label":"dimension of","type":"part_of"},{"source":"years_experience","target":"experience_requirements","label":"dimension of","type":"part_of"},{"source":"experience_domains","target":"experience_requirements","label":"dimension of","type":"part_of"},{"source":"education_level","target":"experience_requirements","label":"dimension of","type":"part_of"},{"source":"industry_experience","target":"experience_requirements","label":"dimension of","type":"part_of"},{"source":"achievement_indicators","target":"experience_requirements","label":"dimension of","type":"part_of"},{"source":"salary_range","target":"compensation_benefits","label":"dimension of","type":"part_of"},{"source":"equity_offered","target":"compensation_benefits","label":"dimension of","type":"part_of"},{"source":"bonus_structure","target":"compensation_benefits","label":"dimension of","type":"part_of"},{"source":"benefits_package","target":"compensation_benefits","label":"dimension of","type":"part_of"},{"source":"company_stage","target":"company_context","label":"dimension of","type":"part_of"},{"source":"company_size","target":"company_context","label":"dimension of","type":"part_of"},{"source":"industry_vertical","target":"company_context","label":"dimension of","type":"part_of"},{"source":"engineering_culture","target":"company_context","label":"dimension of","type":"part_of"},{"source":"growth_trajectory","target":"company_context","label":"dimension of","type":"part_of"},{"source":"interview_rounds","target":"interview_assessment","label":"dimension of","type":"part_of"},{"source":"assessment_types","target":"interview_assessment","label":"dimension of","type":"part_of"},{"source":"evaluation_criteria","target":"interview_assessment","label":"dimension of","type":"part_of"},{"source":"question_categories","target":"interview_assessment","label":"dimension of","type":"part_of"},{"source":"proficiency_level","target":"technical_requirements","label":"qualifies skills in","type":"has_property"},{"source":"proficiency_level","target":"candidate_profile_object","label":"characterizes skills in","type":"has_property"},{"source":"requirement_classification","target":"technical_requirements","label":"classifies requirements in","type":"has_property"},{"source":"requirement_classification","target":"experience_requirements","label":"classifies requirements in","type":"has_property"},{"source":"match_score","target":"candidate_profile_object","label":"property of","type":"has_property"},{"source":"question_quality_score","target":"interview_question","label":"property of","type":"has_property"},{"source":"novice","target":"proficiency_level","label":"value of","type":"has_value"},{"source":"beginner","target":"proficiency_level","label":"value of","type":"has_value"},{"source":"intermediate","target":"proficiency_level","label":"value of","type":"has_value"},{"source":"advanced","target":"proficiency_level","label":"value of","type":"has_value"},{"source":"expert","target":"proficiency_level","label":"value of","type":"has_value"},{"source":"essential_req","target":"requirement_classification","label":"value of","type":"has_value"},{"source":"preferred_req","target":"requirement_classification","label":"value of","type":"has_value"},{"source":"bonus_req","target":"requirement_classification","label":"value of","type":"has_value"},{"source":"technical_verification_q","target":"question_categories","label":"value of","type":"has_value"},{"source":"experience_probing_q","target":"question_categories","label":"value of","type":"has_value"},{"source":"gap_assessment_q","target":"question_categories","label":"value of","type":"has_value"},{"source":"differentiating_q","target":"question_categories","label":"value of","type":"has_value"},{"source":"culture_values_q","target":"question_categories","label":"value of","type":"has_value"},{"source":"sro_validation","target":"structured_requirement_object","label":"constrains","type":"constrains"},{"source":"essential_skills_cap","target":"sro_validation","label":"part of","type":"part_of"},{"source":"proficiency_consistency","target":"sro_validation","label":"part of","type":"part_of"},{"source":"experience_alignment","target":"sro_validation","label":"part of","type":"part_of"},{"source":"compensation_market_rate","target":"sro_validation","label":"part of","type":"part_of"},{"source":"requirement_realism","target":"sro_validation","label":"part of","type":"part_of"},{"source":"experience_education_equivalence","target":"requirement_semantics","label":"part of","type":"part_of"},{"source":"skill_substitution","target":"competency_graph","label":"part of","type":"part_of"},{"source":"skill_complement","target":"competency_graph","label":"part of","type":"part_of"},{"source":"skill_requires","target":"competency_graph","label":"part of","type":"part_of"},{"source":"sro_to_cpo_match","target":"structured_requirement_object","label":"operates on","type":"relates_to"},{"source":"sro_to_cpo_match","target":"candidate_profile_object","label":"operates on","type":"relates_to"},{"source":"sro_to_question_generation","target":"structured_requirement_object","label":"derives from","type":"relates_to"},{"source":"sro_to_question_generation","target":"interview_question","label":"produces","type":"relates_to"},{"source":"cpo_to_question_personalization","target":"candidate_profile_object","label":"derives from","type":"relates_to"},{"source":"cpo_to_question_personalization","target":"interview_question","label":"customizes","type":"relates_to"},{"source":"neighborhood_to_agent","target":"semantic_neighborhood","label":"maps from","type":"relates_to"},{"source":"neighborhood_to_agent","target":"specialist_agent","label":"maps to","type":"relates_to"},{"source":"role_level","target":"proficiency_consistency","label":"constrains via","type":"constrains"},{"source":"role_level","target":"experience_alignment","label":"constrains via","type":"constrains"},{"source":"company_context","target":"requirement_semantics","label":"provides contextual modifiers to","type":"relates_to"},{"source":"occupation_taxonomy","target":"competency_graph","label":"references","type":"relates_to"},{"source":"competency_graph","target":"requirement_semantics","label":"scoped by","type":"relates_to"}]},"pipeline":{"classes":[{"id":"occupation_taxonomy","label":"Occupation Taxonomy","description":"Layer 1: O*NET-SOC based classification of 923 occupations extended for modern tech and gig roles, organized into semantic neighborhoods via a Domain → Function → Specialization hierarchy.","parent":null,"properties":[],"relations":[{"type":"relates_to","target":"Structured Requirement Object (SRO)","label":"anchors"},{"type":"relates_to","target":"Competency Graph","label":"references"}],"examples":["15-1252.00 Software Developers","15-2000s Data Scientists","27-1000s UX Designers"]},{"id":"competency_graph","label":"Competency Graph","description":"Layer 2: Graph of skills (hard and soft), tools/technologies, knowledge areas, and certifications with semantic relationships including requires, substitutes, and complements.","parent":null,"properties":[],"relations":[{"type":"relates_to","target":"Structured Requirement Object (SRO)","label":"populates requirements of"},{"type":"relates_to","target":"Requirement Semantics","label":"scoped by"}],"examples":["Python requires_substitute R in data science context","AWS complements Kubernetes","React substitutes Vue for frontend"]},{"id":"requirement_semantics","label":"Requirement Semantics","description":"Layer 3: Proficiency levels, experience duration mappings, equivalence rules, essential vs preferred vs bonus classification, and contextual modifiers.","parent":null,"properties":[],"relations":[],"examples":["4 years experience ≈ Bachelor's degree for technical roles","AWS certification ≈ 2 years AWS production experience"]},{"id":"structured_requirement_object","label":"Structured Requirement Object (SRO)","description":"The core data model flowing through all products. Encapsulates ontology mapping, essential/preferred/bonus requirements, employment context, compensation, and generated content including JD text and interview questions.","parent":null,"properties":[],"relations":[{"type":"relates_to","target":"Interview Question","label":"generates"},{"type":"relates_to","target":"Candidate Profile Object (CPO)","label":"matched against"}],"examples":["sro_abc123: Senior Data Engineer at Series B fintech startup"]},{"id":"candidate_profile_object","label":"Candidate Profile Object (CPO)","description":"Structured representation of a candidate including ontology mapping, skills with proficiency levels, work experience, education, and match scoring against an SRO.","parent":null,"properties":[],"relations":[{"type":"relates_to","target":"Interview Question","label":"personalizes"}],"examples":["cpo_xyz789: Mara Tovelin, Senior Data Engineer, match_score: 0.92"]},{"id":"semantic_neighborhood","label":"Semantic Neighborhood","description":"A coherent cluster of related occupations and skills within the taxonomy, each served by a dedicated specialist agent.","parent":null,"properties":[],"relations":[{"type":"relates_to","target":"Specialist Agent","label":"served by"}],"examples":["software_engineering","data_analytics","design_creative","product_management"]},{"id":"interview_question","label":"Interview Question","description":"A generated interview question associated with a category, assessed competencies, and a 1-5 scoring rubric.","parent":null,"properties":[{"id":"scoring_rubric","label":"Scoring Rubric","description":"A structured 1-5 scale definition anchoring observable candidate behaviors or knowledge to each score level for a given interview question.","examples":["Score 1: Cannot explain basic optimization techniques","Score 3: Explains indexes, joins, basic optimization","Score 5: Deep expertise in query plans, partitioning, advanced optimization"]}],"relations":[],"examples":["Walk me through how you'd optimize a slow-running query that joins 5 large tables","Describe the most complex data pipeline you've built"]},{"id":"scoring_rubric","label":"Scoring Rubric","description":"A structured 1-5 scale definition anchoring observable candidate behaviors or knowledge to each score level for a given interview question.","parent":null,"properties":[],"relations":[],"examples":["Score 1: Cannot explain basic optimization techniques","Score 3: Explains indexes, joins, basic optimization","Score 5: Deep expertise in query plans, partitioning, advanced optimization"]},{"id":"cpo_agent","label":"CPO Agent (Chief People Officer Agent)","description":"Orchestrator agent responsible for analyzing employer needs, identifying relevant neighborhoods, dispatching specialist agents, identifying gaps, generating clarifying questions, and synthesizing the final SRO.","parent":null,"properties":[],"relations":[{"type":"relates_to","target":"Specialist Agent","label":"dispatches to"},{"type":"relates_to","target":"Structured Requirement Object (SRO)","label":"assembles"}],"examples":["Receives 'We need a senior backend engineer for payment processing' and dispatches software_specialist"]},{"id":"specialist_agent","label":"Specialist Agent","description":"Domain-specific agent that extracts detailed requirements within its semantic neighborhood (e.g., software, data, design, product, marketing, finance, HR, sales).","parent":null,"properties":[],"relations":[{"type":"relates_to","target":"Structured Requirement Object (SRO)","label":"extracts requirements into"}],"examples":["software_specialist infers distributed systems requirements from 'payment processing'","data_specialist distinguishes ML vs BI requirements"]},{"id":"role_identity","label":"Role Identity","description":"Category 1: Defines what role is being hired for via occupation code, role family, role level, and role specialization.","parent":null,"properties":[],"relations":[{"type":"part_of","target":"Structured Requirement Object (SRO)","label":"part of"}],"examples":["Senior Data Engineer: occupation_code 15-1252.00, role_family data, role_level senior, role_specialization data_engineering"]},{"id":"employment_context","label":"Employment Context","description":"Category 2: Employment terms and conditions including type, work arrangement, contract duration, and team structure.","parent":null,"properties":[],"relations":[{"type":"part_of","target":"Structured Requirement Object (SRO)","label":"part of"}],"examples":["full_time remote permanent individual contributor","contract hybrid project-based cross-functional"]},{"id":"technical_requirements","label":"Technical Requirements","description":"Category 3: Technical skills and tools required, including programming languages, frameworks, tools/platforms, technical domains, and certifications, each with proficiency level and essential/preferred/bonus classification.","parent":null,"properties":[],"relations":[{"type":"part_of","target":"Structured Requirement Object (SRO)","label":"part of"}],"examples":["Python proficiency 4 essential, dbt proficiency 3 preferred, Snowflake essential"]},{"id":"professional_competencies","label":"Professional Competencies","description":"Category 4: Professional and soft skills including leadership scope, communication skills, collaboration style, problem-solving level, and domain expertise.","parent":null,"properties":[],"relations":[{"type":"part_of","target":"Structured Requirement Object (SRO)","label":"part of"}],"examples":["leadership_scope: team lead","problem_solving_level: ambiguous open-ended","communication_skills: stakeholder, written, verbal"]},{"id":"experience_requirements","label":"Experience Requirements","description":"Category 5: Required experience including years, experience domains, education level, industry experience, and achievement indicators.","parent":null,"properties":[],"relations":[{"type":"part_of","target":"Structured Requirement Object (SRO)","label":"part of"}],"examples":["4+ years data engineering","BS Computer Science or equivalent","fintech industry experience preferred"]},{"id":"compensation_benefits","label":"Compensation & Benefits","description":"Category 6: Compensation structure including salary range, equity, bonus structure, and benefits package.","parent":null,"properties":[],"relations":[{"type":"part_of","target":"Structured Requirement Object (SRO)","label":"part of"}],"examples":["salary_range [150000, 200000], equity options, performance bonus","health PTO remote_stipend"]},{"id":"company_context","label":"Company Context","description":"Category 7: Hiring company context including stage, size, industry vertical, engineering culture, and growth trajectory.","parent":null,"properties":[],"relations":[{"type":"part_of","target":"Structured Requirement Object (SRO)","label":"part of"},{"type":"relates_to","target":"Requirement Semantics","label":"provides contextual modifiers to"}],"examples":["Series B fintech, 50-200 employees, hypergrowth, startup engineering culture"]},{"id":"interview_assessment","label":"Interview & Assessment","description":"Category 8: Evaluation framework including interview rounds, assessment types, evaluation criteria, question categories, and scoring rubrics.","parent":null,"properties":[],"relations":[{"type":"part_of","target":"Structured Requirement Object (SRO)","label":"part of"}],"examples":["phone screen → technical → system design → behavioral → final","live coding, case study, take-home"]}],"dimensions":[{"id":"occupation_code","label":"Occupation Code","description":"O*NET-SOC classification code uniquely identifying the target occupation.","values":[]},{"id":"role_family","label":"Role Family","description":"Functional area grouping for the role.","values":[]},{"id":"role_level","label":"Role Level","description":"Seniority level of the role.","values":[]},{"id":"role_specialization","label":"Role Specialization","description":"Specific technical or functional focus within the role family.","values":[]},{"id":"employment_type","label":"Employment Type","description":"The nature of the employment engagement.","values":[]},{"id":"work_arrangement","label":"Work Arrangement","description":"Physical location and presence expectations.","values":[]},{"id":"contract_duration","label":"Contract Duration","description":"Expected tenure or engagement period.","values":[]},{"id":"team_structure","label":"Team Structure","description":"How the role fits within and interacts with team organization.","values":[]},{"id":"programming_languages","label":"Programming Languages","description":"Required programming languages each with proficiency level and essential/preferred/bonus classification.","values":[]},{"id":"frameworks_libraries","label":"Frameworks & Libraries","description":"Required software frameworks and libraries with proficiency and classification.","values":[]},{"id":"tools_platforms","label":"Tools & Platforms","description":"Required tools and cloud platforms with classification.","values":[]},{"id":"technical_domains","label":"Technical Domains","description":"Areas of technical domain expertise required.","values":[]},{"id":"certifications","label":"Certifications","description":"Required or preferred professional certifications and credentials.","values":[]},{"id":"leadership_scope","label":"Leadership Scope","description":"The extent of leadership and people management expected.","values":[]},{"id":"communication_skills","label":"Communication Skills","description":"Types and levels of communication required.","values":[]},{"id":"collaboration_style","label":"Collaboration Style","description":"Expected mode and intensity of cross-functional collaboration.","values":[]},{"id":"problem_solving_level","label":"Problem Solving Level","description":"Complexity and ambiguity of problems the role is expected to solve.","values":[]},{"id":"domain_expertise","label":"Domain Expertise","description":"Business or industry domain knowledge required.","values":[]},{"id":"years_experience","label":"Years of Experience","description":"Total relevant years of professional experience required, expressed as a range.","values":[]},{"id":"experience_domains","label":"Experience Domains","description":"Specific technical or functional domains in which experience is required.","values":[]},{"id":"education_level","label":"Education Level","description":"Minimum academic qualification required.","values":[]},{"id":"industry_experience","label":"Industry Experience","description":"Industry-specific experience required or preferred.","values":[]},{"id":"achievement_indicators","label":"Achievement Indicators","description":"Expected past achievements demonstrating capability at the required level.","values":[]},{"id":"salary_range","label":"Salary Range","description":"Base compensation range (min/max) for the role.","values":[]},{"id":"equity_offered","label":"Equity Offered","description":"Type of equity compensation offered.","values":[]},{"id":"bonus_structure","label":"Bonus Structure","description":"Type and basis of bonus compensation.","values":[]},{"id":"benefits_package","label":"Benefits Package","description":"Non-cash benefits and perks offered.","values":[]},{"id":"company_stage","label":"Company Stage","description":"Funding and maturity stage of the hiring company.","values":[]},{"id":"company_size","label":"Company Size","description":"Headcount range of the hiring company.","values":[]},{"id":"industry_vertical","label":"Industry Vertical","description":"Primary industry sector of the hiring company.","values":[]},{"id":"engineering_culture","label":"Engineering Culture","description":"The dominant engineering philosophy and working style.","values":[]},{"id":"growth_trajectory","label":"Growth Trajectory","description":"The company's current growth pace and direction.","values":[]},{"id":"interview_rounds","label":"Interview Rounds","description":"Sequence of interview stages in the evaluation process.","values":[]},{"id":"assessment_types","label":"Assessment Types","description":"Types of structured assessments used to evaluate candidates.","values":[]},{"id":"evaluation_criteria","label":"Evaluation Criteria","description":"Specific criteria derived from SRO requirements used to score candidates.","values":[]},{"id":"question_categories","label":"Question Categories","description":"Categories of interview questions to be generated.","values":[]}],"constraints":[{"id":"sro_validation","label":"SRO Validation Rules","description":"Structural constraints that must be satisfied before an SRO is considered valid for use.","appliesTo":["Structured Requirement Object (SRO)"]},{"id":"essential_skills_cap","label":"Essential Skills Cap (≤10)","description":"No more than 10 essential skills may be specified in an SRO to avoid unrealistic wish-list job descriptions.","appliesTo":[]},{"id":"proficiency_consistency","label":"Proficiency Consistency","description":"Proficiency expectations must be appropriate for the specified role level.","appliesTo":[]},{"id":"experience_alignment","label":"Experience Alignment","description":"Required years of experience must match expectations for the specified role level.","appliesTo":[]},{"id":"compensation_market_rate","label":"Compensation Market Rate","description":"Salary range must fall within accepted market range for the role, level, and location context.","appliesTo":[]},{"id":"requirement_realism","label":"Requirement Realism","description":"Skill combinations specified must represent profiles that realistically exist in the candidate market.","appliesTo":[]}],"promptReady":"# Hiring Ontology v1.0\n\nA comprehensive semantic framework for the complete hiring workflow including job description generation and optimization, interview question generation, and candidate matching, built on a three-layer architecture aligned with O*NET-SOC occupational classification.\n\n**Domain:** hiring\n\n## Classes\n\n### Occupation Taxonomy\nLayer 1: O*NET-SOC based classification of 923 occupations extended for modern tech and gig roles, organized into semantic neighborhoods via a Domain → Function → Specialization hierarchy.\n\n**Relations:**\n- anchors → Structured Requirement Object (SRO)\n- references → Competency Graph\n\n**Examples:**\n- 15-1252.00 Software Developers\n- 15-2000s Data Scientists\n- 27-1000s UX Designers\n\n### Competency Graph\nLayer 2: Graph of skills (hard and soft), tools/technologies, knowledge areas, and certifications with semantic relationships including requires, substitutes, and complements.\n\n**Relations:**\n- populates requirements of → Structured Requirement Object (SRO)\n- scoped by → Requirement Semantics\n\n**Examples:**\n- Python requires_substitute R in data science context\n- AWS complements Kubernetes\n- React substitutes Vue for frontend\n\n### Requirement Semantics\nLayer 3: Proficiency levels, experience duration mappings, equivalence rules, essential vs preferred vs bonus classification, and contextual modifiers.\n\n**Examples:**\n- 4 years experience ≈ Bachelor's degree for technical roles\n- AWS certification ≈ 2 years AWS production experience\n\n### Structured Requirement Object (SRO)\nThe core data model flowing through all products. Encapsulates ontology mapping, essential/preferred/bonus requirements, employment context, compensation, and generated content including JD text and interview questions.\n\n**Relations:**\n- generates → Interview Question\n- matched against → Candidate Profile Object (CPO)\n\n**Examples:**\n- sro_abc123: Senior Data Engineer at Series B fintech startup\n\n### Candidate Profile Object (CPO)\nStructured representation of a candidate including ontology mapping, skills with proficiency levels, work experience, education, and match scoring against an SRO.\n\n**Relations:**\n- personalizes → Interview Question\n\n**Examples:**\n- cpo_xyz789: Mara Tovelin, Senior Data Engineer, match_score: 0.92\n\n### Semantic Neighborhood\nA coherent cluster of related occupations and skills within the taxonomy, each served by a dedicated specialist agent.\n\n**Relations:**\n- served by → Specialist Agent\n\n**Examples:**\n- software_engineering\n- data_analytics\n- design_creative\n- product_management\n\n### Interview Question\nA generated interview question associated with a category, assessed competencies, and a 1-5 scoring rubric.\n\n**Properties:**\n- Scoring Rubric: A structured 1-5 scale definition anchoring observable candidate behaviors or knowledge to each score level for a given interview question.\n  Examples: Score 1: Cannot explain basic optimization techniques, Score 3: Explains indexes, joins, basic optimization, Score 5: Deep expertise in query plans, partitioning, advanced optimization\n\n**Examples:**\n- Walk me through how you'd optimize a slow-running query that joins 5 large tables\n- Describe the most complex data pipeline you've built\n\n### Scoring Rubric\nA structured 1-5 scale definition anchoring observable candidate behaviors or knowledge to each score level for a given interview question.\n\n**Examples:**\n- Score 1: Cannot explain basic optimization techniques\n- Score 3: Explains indexes, joins, basic optimization\n- Score 5: Deep expertise in query plans, partitioning, advanced optimization\n\n### CPO Agent (Chief People Officer Agent)\nOrchestrator agent responsible for analyzing employer needs, identifying relevant neighborhoods, dispatching specialist agents, identifying gaps, generating clarifying questions, and synthesizing the final SRO.\n\n**Relations:**\n- dispatches to → Specialist Agent\n- assembles → Structured Requirement Object (SRO)\n\n**Examples:**\n- Receives 'We need a senior backend engineer for payment processing' and dispatches software_specialist\n\n### Specialist Agent\nDomain-specific agent that extracts detailed requirements within its semantic neighborhood (e.g., software, data, design, product, marketing, finance, HR, sales).\n\n**Relations:**\n- extracts requirements into → Structured Requirement Object (SRO)\n\n**Examples:**\n- software_specialist infers distributed systems requirements from 'payment processing'\n- data_specialist distinguishes ML vs BI requirements\n\n### Role Identity\nCategory 1: Defines what role is being hired for via occupation code, role family, role level, and role specialization.\n\n**Relations:**\n- part of → Structured Requirement Object (SRO)\n\n**Examples:**\n- Senior Data Engineer: occupation_code 15-1252.00, role_family data, role_level senior, role_specialization data_engineering\n\n### Employment Context\nCategory 2: Employment terms and conditions including type, work arrangement, contract duration, and team structure.\n\n**Relations:**\n- part of → Structured Requirement Object (SRO)\n\n**Examples:**\n- full_time remote permanent individual contributor\n- contract hybrid project-based cross-functional\n\n### Technical Requirements\nCategory 3: Technical skills and tools required, including programming languages, frameworks, tools/platforms, technical domains, and certifications, each with proficiency level and essential/preferred/bonus classification.\n\n**Relations:**\n- part of → Structured Requirement Object (SRO)\n\n**Examples:**\n- Python proficiency 4 essential, dbt proficiency 3 preferred, Snowflake essential\n\n### Professional Competencies\nCategory 4: Professional and soft skills including leadership scope, communication skills, collaboration style, problem-solving level, and domain expertise.\n\n**Relations:**\n- part of → Structured Requirement Object (SRO)\n\n**Examples:**\n- leadership_scope: team lead\n- problem_solving_level: ambiguous open-ended\n- communication_skills: stakeholder, written, verbal\n\n### Experience Requirements\nCategory 5: Required experience including years, experience domains, education level, industry experience, and achievement indicators.\n\n**Relations:**\n- part of → Structured Requirement Object (SRO)\n\n**Examples:**\n- 4+ years data engineering\n- BS Computer Science or equivalent\n- fintech industry experience preferred\n\n### Compensation & Benefits\nCategory 6: Compensation structure including salary range, equity, bonus structure, and benefits package.\n\n**Relations:**\n- part of → Structured Requirement Object (SRO)\n\n**Examples:**\n- salary_range [150000, 200000], equity options, performance bonus\n- health PTO remote_stipend\n\n### Company Context\nCategory 7: Hiring company context including stage, size, industry vertical, engineering culture, and growth trajectory.\n\n**Relations:**\n- part of → Structured Requirement Object (SRO)\n- provides contextual modifiers to → Requirement Semantics\n\n**Examples:**\n- Series B fintech, 50-200 employees, hypergrowth, startup engineering culture\n\n### Interview & Assessment\nCategory 8: Evaluation framework including interview rounds, assessment types, evaluation criteria, question categories, and scoring rubrics.\n\n**Relations:**\n- part of → Structured Requirement Object (SRO)\n\n**Examples:**\n- phone screen → technical → system design → behavioral → final\n- live coding, case study, take-home\n\n## Dimensions\n\n### Occupation Code\nO*NET-SOC classification code uniquely identifying the target occupation.\n\n### Role Family\nFunctional area grouping for the role.\n\n### Role Level\nSeniority level of the role.\n\n### Role Specialization\nSpecific technical or functional focus within the role family.\n\n### Employment Type\nThe nature of the employment engagement.\n\n### Work Arrangement\nPhysical location and presence expectations.\n\n### Contract Duration\nExpected tenure or engagement period.\n\n### Team Structure\nHow the role fits within and interacts with team organization.\n\n### Programming Languages\nRequired programming languages each with proficiency level and essential/preferred/bonus classification.\n\n### Frameworks & Libraries\nRequired software frameworks and libraries with proficiency and classification.\n\n### Tools & Platforms\nRequired tools and cloud platforms with classification.\n\n### Technical Domains\nAreas of technical domain expertise required.\n\n### Certifications\nRequired or preferred professional certifications and credentials.\n\n### Leadership Scope\nThe extent of leadership and people management expected.\n\n### Communication Skills\nTypes and levels of communication required.\n\n### Collaboration Style\nExpected mode and intensity of cross-functional collaboration.\n\n### Problem Solving Level\nComplexity and ambiguity of problems the role is expected to solve.\n\n### Domain Expertise\nBusiness or industry domain knowledge required.\n\n### Years of Experience\nTotal relevant years of professional experience required, expressed as a range.\n\n### Experience Domains\nSpecific technical or functional domains in which experience is required.\n\n### Education Level\nMinimum academic qualification required.\n\n### Industry Experience\nIndustry-specific experience required or preferred.\n\n### Achievement Indicators\nExpected past achievements demonstrating capability at the required level.\n\n### Salary Range\nBase compensation range (min/max) for the role.\n\n### Equity Offered\nType of equity compensation offered.\n\n### Bonus Structure\nType and basis of bonus compensation.\n\n### Benefits Package\nNon-cash benefits and perks offered.\n\n### Company Stage\nFunding and maturity stage of the hiring company.\n\n### Company Size\nHeadcount range of the hiring company.\n\n### Industry Vertical\nPrimary industry sector of the hiring company.\n\n### Engineering Culture\nThe dominant engineering philosophy and working style.\n\n### Growth Trajectory\nThe company's current growth pace and direction.\n\n### Interview Rounds\nSequence of interview stages in the evaluation process.\n\n### Assessment Types\nTypes of structured assessments used to evaluate candidates.\n\n### Evaluation Criteria\nSpecific criteria derived from SRO requirements used to score candidates.\n\n### Question Categories\nCategories of interview questions to be generated.\n\n## Constraints\n\n- **SRO Validation Rules** (Structured Requirement Object (SRO)): Structural constraints that must be satisfied before an SRO is considered valid for use.\n- **Essential Skills Cap (≤10)**: No more than 10 essential skills may be specified in an SRO to avoid unrealistic wish-list job descriptions.\n- **Proficiency Consistency**: Proficiency expectations must be appropriate for the specified role level.\n- **Experience Alignment**: Required years of experience must match expectations for the specified role level.\n- **Compensation Market Rate**: Salary range must fall within accepted market range for the role, level, and location context.\n- **Requirement Realism**: Skill combinations specified must represent profiles that realistically exist in the candidate market."}}