Spaces:
Sleeping
Sleeping
| # Per-role framework-level skill augmentation. | |
| # Sourced from research/06-dataset-sourcing.md §3 — based on a scan of current LinkedIn / Rozee.pk | |
| # job postings on 2026-04-19. These are skills O*NET v30.2 doesn't list at this granularity but | |
| # every modern job posting requires. | |
| # | |
| # Each entry adds a new RoleSkill. If the named skill_name already exists in the Skill table | |
| # (added via O*NET pull), parse_onet_dump.py upgrades the existing RoleSkill rather than | |
| # creating a duplicate. is_mandatory and required_level here override O*NET defaults. | |
| # | |
| # Keep this list TIGHT — only add skills O*NET genuinely missed. Do not duplicate Hot+InDemand | |
| # entries that the O*NET pull already produces (Python, SQL, Docker, etc. all come from O*NET). | |
| augmentation: | |
| "Data Scientist": | |
| - { skill: "Pandas", category: "Data", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "NumPy", category: "Data", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Scikit-learn", category: "ML", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Jupyter Notebook", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Matplotlib", category: "Data", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Seaborn", category: "Data", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| # Added 2026-04-19 after reviewer audit (concept-level skills missing — frameworks alone don't measure understanding) | |
| - { skill: "Statistical Hypothesis Testing", category: "Stats", required_level: "INTERMEDIATE", is_mandatory: true, weight: 0.9 } | |
| - { skill: "Feature Engineering", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.7 } | |
| # Round 3 (reviewer 2): DSA optional for DS — interviews increasingly include LeetCode-style rounds even for DS | |
| - { skill: "Data Structures & Algorithms", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| # Round 4: Docker for MLOps overlap (real PK DS postings) | |
| - { skill: "Docker", category: "Infra", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.6 } | |
| "Data Analyst": | |
| # Round 3: dropped "Microsoft Excel Advanced" — reviewer 2 flagged it as double-count with Microsoft Excel. | |
| # The gap-analysis engine's required_level field already handles this (set Excel level=ADVANCED in curation override). | |
| - { skill: "Tableau", category: "BI", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.9 } | |
| - { skill: "Microsoft Power BI", category: "BI", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.9 } | |
| - { skill: "Pandas", category: "Data", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Statistical Hypothesis Testing", category: "Stats", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.7 } | |
| # Round 3 additions (reviewer 2): Data Visualization concept missing | |
| - { skill: "Data Visualization", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| # Round 4: DAX + Power Query for DA users on Power BI (mirrored from BI Analyst) | |
| - { skill: "DAX", category: "Language", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Power Query / M Language", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| "Machine Learning Engineer": | |
| - { skill: "PyTorch", category: "ML", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "TensorFlow", category: "ML", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.9 } | |
| - { skill: "Scikit-learn", category: "ML", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "MLflow", category: "MLOps", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.8 } | |
| - { skill: "Docker", category: "Infra", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Kubernetes", category: "Infra", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.8 } | |
| - { skill: "ONNX", category: "MLOps", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| - { skill: "FastAPI", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| # Added 2026-04-19 during curation pass — needed for ML Engineer baseline | |
| - { skill: "Pandas", category: "Data", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "NumPy", category: "Data", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| # Round 3 additions (reviewer 2): DSA mandatory for ML Eng (interview-critical), OOP, Agile | |
| - { skill: "Data Structures & Algorithms", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Object-Oriented Programming", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Agile / Scrum", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| "Backend Developer": | |
| - { skill: "Django", category: "Framework", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "FastAPI", category: "Framework", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.8 } | |
| - { skill: "Flask", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.3 } # demoted by reviewer (in decline) | |
| - { skill: "PostgreSQL", category: "Database", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Redis", category: "Database", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "REST API Design", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "JWT / OAuth", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| # Added 2026-04-19 after reviewer audit (testing was missing entirely; Pakistani Java enterprise market is real) | |
| - { skill: "pytest", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Celery", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| - { skill: "nginx", category: "Infra", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| - { skill: "Pydantic", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| # Java kept as low-priority optional for Pakistani enterprise (Systems Limited, NetSol) | |
| - { skill: "Java", category: "Language", required_level: "BEGINNER", is_mandatory: false, weight: 0.4 } | |
| # Round 3 additions (reviewer 2): DSA, OOP, Agile, CI/CD, .NET for Pakistani enterprise, Unit Testing concept | |
| - { skill: "Data Structures & Algorithms", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Object-Oriented Programming", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Agile / Scrum", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| - { skill: "CI/CD Pipelines", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "GitHub Actions", category: "CI/CD", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| - { skill: ".NET / C#", category: "Language", required_level: "BEGINNER", is_mandatory: false, weight: 0.4 } | |
| - { skill: "Unit Testing", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| # Round 4: Laravel/PHP for Pakistani SME backend market (Glassdoor PK Backend listings) | |
| - { skill: "Laravel", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.4 } | |
| - { skill: "PHP", category: "Language", required_level: "BEGINNER", is_mandatory: false, weight: 0.4 } | |
| "Frontend Developer": | |
| - { skill: "React", category: "Framework", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Vue.js", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "TypeScript", category: "Language", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Tailwind CSS", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Vite", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "TanStack Query", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.4 } | |
| - { skill: "Next.js", category: "Framework", required_level: "INTERMEDIATE", is_mandatory: true, weight: 0.9 } | |
| # Added 2026-04-19 during curation — frontend devs consume APIs daily | |
| - { skill: "REST API Design", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| # Round 4 (job-board evidence): Redux explicitly cited in MERN postings | |
| - { skill: "Redux", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| # Added 2026-04-19 after reviewer audit (testing entirely missing; Docker for local dev; a11y now baseline) | |
| - { skill: "Vitest", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } # State of JS 2024: top satisfaction | |
| - { skill: "Playwright", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } # E2E baseline | |
| - { skill: "Docker", category: "Infra", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } # for docker-compose backend deps in local dev | |
| - { skill: "Web Accessibility (a11y)", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| - { skill: "Responsive Design", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| # Round 3 additions (reviewer 2): DSA (lower weight for FE than BE), Agile | |
| - { skill: "Data Structures & Algorithms", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Agile / Scrum", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| "Full Stack Developer": | |
| # Inherits union of Backend + Frontend via SOC composite. Add extras that are full-stack-specific. | |
| # Note: reviewer correctly flagged Docker Compose as redundant with Docker — folded into Docker (single mandatory). | |
| - { skill: "REST API Design", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "TypeScript", category: "Language", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Next.js", category: "Framework", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.8 } | |
| # Added 2026-04-19 during curation — frontend essentials missing from composite | |
| - { skill: "Tailwind CSS", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Vite", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| # Added 2026-04-19 after reviewer audit | |
| - { skill: "Vitest", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "JWT / OAuth", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Linux", category: "Infra", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.6 } # aligned to ML Eng per reviewer 2 | |
| # Round 3: Prisma dropped — Python client archived 2025-04, community-only, not appropriate for Python/Django stack | |
| # Round 3 additions (reviewer 2): DSA, OOP, Agile, CI/CD, GitHub Actions, Laravel/PHP | |
| - { skill: "Data Structures & Algorithms", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Object-Oriented Programming", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Agile / Scrum", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| - { skill: "CI/CD Pipelines", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "GitHub Actions", category: "CI/CD", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| - { skill: "Laravel", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.3 } | |
| # Round 4: Django for Python+React Full Stack stack | |
| - { skill: "Django", category: "Framework", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.8 } | |
| - { skill: "PHP", category: "Language", required_level: "BEGINNER", is_mandatory: false, weight: 0.3 } | |
| "Data Engineer": | |
| - { skill: "Apache Airflow", category: "Data", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "dbt", category: "Data", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Apache Spark", category: "Data", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Apache Kafka", category: "Data", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Snowflake", category: "Cloud", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.9 } | |
| - { skill: "Google BigQuery", category: "Cloud", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.9 } | |
| - { skill: "Docker", category: "Infra", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| # Added 2026-04-19 after reviewer audit (lakehouse formats baseline; Databricks platform skill; data modeling concept) | |
| - { skill: "Delta Lake", category: "Data", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| # Round 3: Apache Iceberg demoted (picking both lakehouse formats overkill for entry-level; Delta Lake primary) | |
| - { skill: "Apache Iceberg", category: "Data", required_level: "BEGINNER", is_mandatory: false, weight: 0.3 } | |
| - { skill: "Databricks", category: "Cloud", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Data Modeling", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.7 } # renamed — dropped Kimball parenthetical | |
| - { skill: "Parquet", category: "Data", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| # Round 3 additions (reviewer 2): ETL/ELT concept, DSA for technical pipeline work | |
| - { skill: "ETL / ELT", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Data Structures & Algorithms", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| # Round 4: Git for DE (not in primary SOC 15-1243.01 Hot+InDemand list) | |
| - { skill: "Git", category: "Tools", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| "DevOps Engineer": | |
| - { skill: "Docker", category: "Infra", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Kubernetes", category: "Infra", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Terraform", category: "IaC", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Ansible", category: "IaC", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Jenkins", category: "CI/CD", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.8 } | |
| - { skill: "GitHub Actions", category: "CI/CD", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.9 } | |
| - { skill: "AWS", category: "Cloud", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Microsoft Azure", category: "Cloud", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Google Cloud Platform", category: "Cloud", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Linux Administration", category: "Infra", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Bash Scripting", category: "Language", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Prometheus", category: "Monitoring", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Grafana", category: "Monitoring", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| # Added 2026-04-19 after reviewer audit (GitOps + Helm now baseline per KodeKloud 2025) | |
| - { skill: "ArgoCD", category: "CI/CD", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Helm", category: "Infra", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| # Round 3 additions (reviewer 2): CI/CD concept distinct from tools; networking fundamentals | |
| - { skill: "CI/CD Pipelines", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Computer Networking Fundamentals", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.7 } | |
| "AI Engineer (GenAI / LLM)": | |
| - { skill: "HuggingFace Transformers", category: "ML", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "LangChain", category: "Framework", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "LlamaIndex", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.4 } # demoted by reviewer (overlaps LangChain) | |
| - { skill: "OpenAI API", category: "API", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Anthropic Claude API", category: "API", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "pgvector", category: "Database", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "Pinecone", category: "Database", required_level: "BEGINNER", is_mandatory: false, weight: 0.4 } # demoted by reviewer (open-source alternatives winning) | |
| # Round 4: renamed to canonical "RAG" (job-posting term) | |
| - { skill: "RAG", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Prompt Engineering", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Sentence Transformers", category: "ML", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "FastAPI", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| # Added 2026-04-19 after independent reviewer + verification (LangGraph v1.1.8 released 2 days ago, 29.6k stars) | |
| # Round 3: LangGraph demoted to optional 0.7 — Indeed search shows ~1 posting mentioning it, only at senior level as "preferred" | |
| - { skill: "LangGraph", category: "Framework", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| - { skill: "LLM Evaluations", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.7 } | |
| - { skill: "LLM Observability", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| # Round 3: renamed from "Fine-tuning (LoRA/PEFT)" — cleaner canonical name for resume parser | |
| - { skill: "LLM Fine-tuning", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| # Round 3 additions (reviewer 2): OOP, DSA (AI eng also hits Leetcode interviews) | |
| - { skill: "Object-Oriented Programming", category: "Concept", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Data Structures & Algorithms", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| "Business Intelligence Analyst": | |
| - { skill: "Microsoft Power BI", category: "BI", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Tableau", category: "BI", required_level: "INTERMEDIATE", is_mandatory: false, weight: 0.9 } | |
| - { skill: "Looker", category: "BI", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "dbt", category: "Data", required_level: "BEGINNER", is_mandatory: false, weight: 0.7 } | |
| # Round 3: dropped "Microsoft Excel Advanced" — double-count with Microsoft Excel; use required_level=ADVANCED via curation override instead | |
| - { skill: "Star Schema Modeling", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| # Added 2026-04-19 after reviewer audit + verification (DataCamp/Coursera/iMocha all cite DAX as core) | |
| - { skill: "DAX", category: "Language", required_level: "INTERMEDIATE", is_mandatory: true, weight: 1.0 } | |
| - { skill: "Power Query / M Language", category: "Tools", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |
| - { skill: "Data Storytelling", category: "Concept", required_level: "BEGINNER", is_mandatory: false, weight: 0.5 } | |
| # Round 3 additions (reviewer 2): Snowflake as DWH to query (not operate); BI consumes DWHs | |
| - { skill: "Snowflake", category: "Cloud", required_level: "BEGINNER", is_mandatory: false, weight: 0.6 } | |