SuperAPI AI Directory

jd-analyzer

Data & analytics

View repository

Updated 10-15 22:15

About this skill

JD Analyzer Skill

Trigger Conditions

When the user needs to:

  • Analyze a job description (JD)
  • Extract key skills and requirements
  • Assess the match between a resume and a JD
  • Identify skill gaps
  • Prepare for an interview for a specific company

Analysis Dimensions

1. Basic Information

  • Job title and level
  • Team and department
  • Work location
  • Job type (full-time/part-time/internship)

2. Skills Analysis

Programming Languages

  • Required languages (Required)
  • Preferred languages (Preferred)
  • Frameworks and libraries
  • Tools and platforms

System Design

  • Distributed systems
  • Microservices architecture
  • Database design
  • Scalability requirements
  • Performance optimization

Domain Knowledge

  • Industry-specific knowledge
  • Business domain understanding
  • Professional terminology

3. Soft Skills

  • Communication skills
  • Leadership
  • Team collaboration
  • Problem solving
  • Adaptability

4. Qualification Requirements

  • Educational background (degree, major)
  • Years of work experience
  • Experience in a specific field
  • Certifications or certificates

5. Scope of Responsibilities

  • Main job duties
  • Project types
  • Scope of impact
  • Decision-making authority

6. Bonus Points

  • Preferred skills
  • Additional certifications or experience
  • Special contributions or achievements

Workflow

Step 1: Extract Raw Information

Extract from the JD text:

  • All skill keywords
  • Experience requirements
  • Education requirements
  • Responsibility descriptions

Step 2: Structured Analysis

Classify the extracted information into:

{
  "structured_analysis": {
    "required_skills": [...],
    "preferred_skills": [...],
    "responsibilities": [...],
    "minimum_qualifications": [...],
    "preferred_qualifications": [...]
  }
}

Step 3: Skill Matching

Compare with the user's base resume (data/resume/base.json):

{
  "skill_match_analysis": {
    "matched_skills": [
      {"skill": "Python", "proficiency": "expert"}
    ],
    "partial_match_skills": [
      {"skill": "Java", "proficiency": "intermediate", "required": "advanced"}
    ],
    "missing_skills": [
      {"skill": "C++", "action": "需要学习基础"}
    ]
  }
}

Step 4: Generate Recommendations

Based on the match analysis, provide:

  • Skills that need to be supplemented
  • Experience that should be highlighted
  • Key points for interview preparation
  • Resume optimization suggestions

Skill Extraction Patterns

Programming Language Identification

Identify the following patterns:

  • "Proficiency in/with X"
  • "Experience with/using X"
  • "Strong knowledge of X"
  • "X developer"
  • "X, Y, or Z"

Experience Level Assessment

  • Entry: 0-2 years
  • Mid: 2-5 years
  • Senior: 5+ years
  • Staff/Principal: 8+ years

System Design Keywords

  • "Distributed systems"
  • "Microservices architecture"
  • "Scalable systems"
  • "High-availability"
  • "Large-scale systems"
  • "Cloud-native"

Soft Skill Identification

  • "Excellent communication"
  • "Leadership experience"
  • "Team player"
  • "Problem-solving skills"
  • "Self-motivated"

Output Format

Company Information File Update

Update data/companies/{company}.json 's job_descriptions section:

{
  "job_descriptions": {
    "pos_001": {
      "title": "Software Engineer III",
      "description_source": "...",
      "scraped_at": "2025-01-09T00:00:00Z",
      "raw_text": "完整JD文本...",

      "structured_analysis": {
        "required_skills": ["Python", "Distributed Systems"],
        "preferred_skills": ["Kubernetes", "ML"],
        "responsibilities": ["设计并开发软件"],
        "minimum_qualifications": ["计算机学位", "3年经验"],
        "preferred_qualifications": ["硕士", "5年经验"]
      },

      "skill_match_analysis": {
        "matched_skills": [...],
        "partial_match_skills": [...],
        "missing_skills": [...]
      }
    }
  }
}

Usage Examples

Scenario 1: When Adding a New Company

The user provides JD text, automatically:

  1. Extract all skills and requirements
  2. Analyze the match with the user's resume
  3. Generate a structured analysis report
  4. Save to the company information file

Scenario 2: Before Resume Optimization

Provide for the resume optimizer:

  • Key skills list
  • Priority ranking
  • Match score
  • Optimization suggestions

Scenario 3: During interview preparation

Generate interview preparation focus points:

  • Technical topics list
  • Possible question types
  • Areas requiring in-depth research

Matching rules

Exact match

  • User has direct experience using it
  • Actually applied in projects
  • Can discuss in depth

Partial match

  • Understands related technologies
  • Has experience with similar technologies
  • Can learn quickly

Missing

  • No experience at all
  • Needs to learn from scratch
  • Suggested learning path

Weight calculation

Used for match scoring:

  • Required skills: weight 2.0
  • Preferred skills: weight 1.0
  • Bonus items: weight 0.5
匹配度 = Σ(匹配等级 × 权重) / Σ(最大权重)

Notes

  1. Context understanding: Consider the overall context of the JD, not isolated keywords
  2. Skill categorization: Group skills with different names but the same essence
  3. Company characteristics: Identify the company's technology culture (e.g., Google values scalability)
  4. Implicit requirements: Identify expectations not explicitly stated in the JD
  5. Dynamic updates: Re-evaluate the match score as the user's skills improve

Advanced analysis features (new in Phase 2)

Company culture analysis

Culture indicator identification

Work culture keywords:

{
  "culture_indicators": {
    "pace": {
      "fast": ["fast-paced", "move fast", "rapid iteration", "agile", "startup environment"],
      "balanced": ["work-life balance", "sustainable pace", "flexible hours"],
      "intense": ["high-pressure", "demanding", "deadline-driven"]
    },
    "collaboration": {
      "collaborative": ["team player", "cross-functional", "collaborate", "pair programming"],
      "independent": ["self-starter", "independent", "autonomous", "own initiatives"],
      "leadership": ["lead", "mentor", "guide", "influence", "drive decisions"]
    },
    "innovation": {
      "innovative": ["innovative", "cutting-edge", "pioneer", "breakthrough", "novel"],
      "stable": ["stable", "proven", "established", "reliable", "mature"],
      "scalable": ["scale", "growth", "expand", "multiply", "massive impact"]
    },
    "values": {
      "customer_obsessed": ["customer obsessed", "customer first", "user-centric"],
      "data_driven": ["data-driven", "analytics", "metrics", "experimentation"],
      "ownership": ["ownership", "end-to-end", "responsibility", "accountability"],
      "excellence": ["high standards", "excellence", "quality", "best practices"]
    }
  }
}

Culture match analysis

{
  "culture_analysis": {
    "company_culture_type": "Innovative & Fast-paced",
    "key_culture_traits": [
      "Data-driven decision making",
      "Fast iteration and experimentation",
      "Collaborative cross-functional work",
      "High ownership and accountability"
    ],
    "culture_indicators_found": [
      {"trait": "fast-paced", "evidence": "fast-paced environment", "frequency": 3},
      {"trait": "data-driven", "evidence": "data-driven approach", "frequency": 5},
      {"trait": "collaborative", "evidence": "cross-functional teams", "frequency": 2}
    ],
    "fit_assessment": {
      "score": 85,
      "strengths": ["匹配快速迭代环境", "有跨团队协作经验"],
      "considerations": ["需要适应高压环境", "强调数据驱动决策"]
    }
  }
}

Salary range detection

Salary information extraction

Recognition patterns:

# 基础薪资
"(\$?\d{2,3}k?[-–to]\$?\d{2,3}k?)\s*(per year|annually|/year|annual)"

# 股票/股权
"(stock|equity|RSU|option|grant).*?(\$?\d{2,3}k?)"

# 奖金
"(bonus|signing|target).*?(\$?\d{1,2}k?|\d{1,2}%)"

# 总薪酬
"(total compensation|TC|OTE).*?(\$?\d{2,3}k?)"

Salary structure analysis:

{
  "salary_analysis": {
    "base_salary": {
      "range": "$150,000 - $200,000",
      "currency": "USD",
      "period": "yearly",
      "confidence": "high"
    },
    "equity": {
      "mentioned": true,
      "estimated_range": "$50,000 - $100,000/year",
      "type": "RSU",
      "vesting": "4 years"
    },
    "bonus": {
      "mentioned": true,
      "percentage": "20%",
      "estimated_value": "$30,000 - $40,000"
    },
    "total_compensation": {
      "estimated_range": "$230,000 - $340,000",
      "breakdown": ["Base: $150k-$200k", "Bonus: $30k-$40k", "Equity: $50k-$100k"]
    },
    "market_comparison": {
      "percentile": "75th",
      "comparison": "Above market average"
    }
  }
}

Regional salary adjustment

{
  "location_adjustments": {
    "SF Bay Area": 1.0,
    "New York": 0.95,
    "Seattle": 0.90,
    "Austin": 0.80,
    "Remote (US)": 0.85,
    "Beijing": 0.60,
    "Shanghai": 0.62
  }
}

Enhanced skill extraction patterns

AI/ML skill identification

{
  "ai_ml_skills": {
    "machine_learning": ["Machine Learning", "ML", "Deep Learning", "Neural Networks"],
    "frameworks": ["TensorFlow", "PyTorch", "Keras", "Scikit-learn", "MXNet"],
    "nlp": ["NLP", "Natural Language Processing", "Transformers", "BERT", "GPT"],
    "computer_vision": ["Computer Vision", "CV", "Image Processing", "CNN"],
    "mlops": ["MLOps", "ML Engineering", "Model Deployment", "Feature Engineering"]
  }
}

Cloud platform skills

{
  "cloud_skills": {
    "aws": ["AWS", "Amazon Web Services", "EC2", "S3", "Lambda", "RDS", "DynamoDB"],
    "gcp": ["GCP", "Google Cloud", "GKE", "BigQuery", "Cloud Functions"],
    "azure": ["Azure", "Microsoft Azure", "AKS", "Azure Functions"],
    "cloud_native": ["Kubernetes", "K8s", "Docker", "Helm", "Istio", "Service Mesh"]
  }
}

Data skills

{
  "data_skills": {
    "databases": ["SQL", "NoSQL", "PostgreSQL", "MySQL", "MongoDB", "Redis", "Cassandra"],
    "data_engineering": ["ETL", "Data Pipeline", "Spark", "Kafka", "Airflow", "Hadoop"],
    "analytics": ["Data Analysis", "Analytics", "Visualization", "Tableau", "Power BI"],
    "big_data": ["Big Data", "Distributed Computing", "Data Lakes", "Data Warehousing"]
  }
}

Multilingual JD support

Language detection

{
  "language_detection": {
    "detected_language": "zh-CN",
    "confidence": 0.95,
    "supported_languages": ["en", "zh-CN", "zh-TW", "ja", "ko"],
    "translation_needed": false
  }
}

Bilingual JD processing

{
  "bilingual_jd": {
    "primary_language": "en",
    "secondary_language": "zh-CN",
    "merge_strategy": "primary_first",
    "skill_extraction": {
      "from_primary": true,
      "from_secondary": true,
      "merge_duplicates": true
    }
  }
}

Cross-language skill mapping

{
  "skill_translation": {
    "machine_learning": {
      "en": "Machine Learning",
      "zh": "机器学习",
      "ja": "機械学習",
      "ko": "기계 학습"
    },
    "distributed_systems": {
      "en": "Distributed Systems",
      "zh": "分布式系统",
      "ja": "分散システム",
      "ko": "분산 시스템"
    }
  }
}

Intelligent skill grouping

Related skill clustering

{
  "skill_clusters": {
    "backend_development": {
      "skills": ["Python", "Java", "Go", "APIs", "Microservices"],
      "weight": 2.0,
      "priority": "high"
    },
    "data_processing": {
      "skills": ["SQL", "ETL", "Kafka", "Spark"],
      "weight": 1.5,
      "priority": "medium"
    },
    "frontend": {
      "skills": ["React", "JavaScript", "TypeScript", "HTML/CSS"],
      "weight": 1.0,
      "priority": "low"
    }
  }
}

Skill dependency analysis

{
  "skill_dependencies": {
    "Kubernetes": {
      "prerequisites": ["Docker", "Linux", "Networking"],
      "related": ["Helm", "Istio", "Prometheus"],
      "advanced": ["Cloud Native", "Service Mesh"]
    },
    "Machine Learning": {
      "prerequisites": ["Python", "Statistics", "Linear Algebra"],
      "related": ["Deep Learning", "MLOps", "Data Engineering"],
      "advanced": ["Neural Networks", "Computer Vision", "NLP"]
    }
  }
}

Implicit skill requirement identification

Infer skills based on responsibilities

{
  "inferred_skills": {
    "from_responsibility": "Design and build scalable web applications",
    "inferred_skills": [
      {"skill": "Web Development", "confidence": 0.95},
      {"skill": "API Design", "confidence": 0.90},
      {"skill": "Scalability", "confidence": 0.85},
      {"skill": "Performance Optimization", "confidence": 0.80}
    ],
    "reasoning": "Building scalable web apps requires these core skills"
  }
}

Infer experience based on project scale

{
  "scale_inference": {
    "indicators": ["millions of users", "petabytes of data", "high QPS"],
    "inferred_requirements": [
      {"skill": "Distributed Systems", "importance": "critical"},
      {"skill": "Scalability", "importance": "critical"},
      {"skill": "Performance Tuning", "importance": "high"},
      {"skill": "System Design", "importance": "high"}
    ]
  }
}

Market demand analysis

Skill trend analysis

{
  "market_analysis": {
    "skill_demand": {
      "Distributed Systems": {
        "demand_level": "high",
        "trend": "increasing",
        "market_saturation": "low"
      },
      "Kubernetes": {
        "demand_level": "very_high",
        "trend": "stable",
        "market_saturation": "medium"
      }
    },
    "competitiveness": {
      "score": 75,
      "interpretation": "Moderately competitive position",
      "recommendations": [
        "Strengthen distributed systems fundamentals",
        "Gain hands-on Kubernetes experience",
        "Build system design portfolio"
      ]
    }
  }
}

Enhanced output formats

Complete JD analysis report

{
  "jd_analysis_report": {
    "metadata": {
      "company": "Example Tech",
      "position": "Senior Software Engineer",
      "analysis_date": "2024-01-15T10:00:00Z",
      "jd_language": "en",
      "confidence_score": 0.92
    },

    "basic_info": {
      "title": "Senior Software Engineer",
      "level": "L4-L5",
      "department": "Cloud Infrastructure",
      "location": "Remote / SF",
      "employment_type": "Full-time"
    },

    "culture_analysis": {
      "culture_type": "Innovative & Data-driven",
      "key_traits": ["Fast-paced", "Collaborative", "Customer-obsessed"],
      "work_style": "Hybrid remote",
      "team_size": "5-10 engineers"
    },

    "compensation": {
      "base_salary": "$180k-$220k",
      "equity": "$80k-$120k/year",
      "bonus": "20% target",
      "total_range": "$280k-$360k",
      "market_position": "75th percentile"
    },

    "skills": {
      "required": [
        {"skill": "Python", "weight": 2.0, "proficiency": "advanced"},
        {"skill": "Distributed Systems", "weight": 2.0, "proficiency": "advanced"},
        {"skill": "Kubernetes", "weight": 2.0, "proficiency": "intermediate"}
      ],
      "preferred": [
        {"skill": "Go", "weight": 1.0, "proficiency": "intermediate"},
        {"skill": "ML Engineering", "weight": 1.0, "proficiency": "intermediate"}
      ]
    },

    "skill_match_analysis": {
      "overall_match": 85.5,
      "matched_skills": 7,
      "partial_match": 3,
      "missing_skills": 2,
      "gap_analysis": {
        "critical_gaps": ["Kubernetes depth"],
        "nice_to_have": ["Go proficiency"],
        "recommendations": ["Take Kubernetes course", "Build Go side project"]
      }
    },

    "readiness_assessment": {
      "technical_readiness": 80,
      "experience_match": 85,
      "culture_fit": 90,
      "overall_score": 85,
      "ready_to_apply": true,
      "prep_time_estimate": "2-3 weeks"
    }
  }
}

Analysis quality assurance

Verification checklist items:

  • All key skills identified
  • Salary information extracted (if present)
  • Culture indicators analyzed
  • Implicit skills inferred
  • Match score calculated accurately
  • Suggestions are actionable
  • Multilingual support is correct
  • Output format complies with Schema

Confidence score:

高置信度 (90%+): 清晰的技能描述,明确的要求
中置信度 (70-89%): 有一些歧义,需要推断
低置信度 (<70%): JD描述模糊,信息不完整