Pipeline run
6594c555-9599-42ff-b607-46fe9dcd68e2
Client output enrichment
v2 Skill cluster · Nature of work · AI index · Tech stack maturity · Evidence · KRA descriptionvocab breakdown (legacy)
Signals
Post-classification
1 POST /skills/extract-from-jd
2 POST /skills/extract-details
3 POST /skills/final-role-output
Frontend Developer
→Angular Frontend Developer
sub-role · 0.85 CASE Dslug: frontend-engineer · id: 7 · source: db · sub-role slug: angular-frontend-developer
LLM2 picked angular-frontend-developer (confidence 0.85)
Resolution:
in_db
— role exists in library; skill↔dim and role↔dim links saved when applicable.
Job description
Are you a front-end developer with Angular skills ? Are you acquainted with the terms such as spring boot, hibernate, and restful web services? Do you have experience working on these technologies in an agile environment ? Virtue Analytics is currently looking for a dynamic candidate with an entrepreneurial mindset to take up the above responsibility. - The Angular developer position is part of the core Virtue team. This position is responsible for conducting research, identifying effective ways of building responsive web applications. The role is the part of the technology team developing a cutting-edge product pioneering to revolutionize university recruitment decisions. Utilizing feedback from back-end developers and leveraging the emerging technology to secure, scale, and refine the product UI. The role requires working closely with - the US delivery team and converting the prototypes to mature products. Required Experience and Skills : - 2+ years of relevant development experience. - Experience with Angular (5,7,8) or React - Experience with security principles and frameworks - Strong communication skills along with the ability to work in a highly collaborative environment. - Virtue Analytics is a SaaS platform; easy to use and available via the cloud. We help universities in exceeding their net tuition revenue goals by mediating their student acquisition, enrolment, and retention cost. At the same time, we assist the university in monitoring the student's learning process leading to their on-time graduation. Our team consists of technology enthusiast data scientists, data engineers, and researchers with elite educational and professional backgrounds. - The team has comprehensive experience in leveraging the data and building intelligent digital solutions to long-enduring challenges of informed decision-making
Skills from this JD
Each row merges API 1 extraction, API 2 library match / v3 orchestration (dimensions + locked dims), and API 3 persistence tags.
Aliases — catalog
- Angular (CANONICAL) primary
- Angular 1 (VERSION)
- Angular 1.x (VERSION)
- Angular 10 (VERSION)
- Angular 11 (VERSION)
- Angular 12 (VERSION)
- Angular 13 (VERSION)
- Angular 14 (VERSION)
- Angular 15 (VERSION)
- Angular 16 (VERSION)
- Angular 17 (VERSION)
- Angular 2 (VERSION)
- Angular 2+ (VERSION)
- Angular 4 (VERSION)
- Angular 5 (VERSION)
- Angular 6 (VERSION)
- Angular 7 (VERSION)
- Angular 8 (VERSION)
- Angular 9 (VERSION)
- AngularJS (VERSION)
- angular 1 (VERSION)
- angular 1.x (VERSION)
- angular 10 (VERSION)
- angular 11 (VERSION)
- angular 12 (VERSION)
- angular 13 (VERSION)
- angular 14 (VERSION)
- angular 15 (VERSION)
- angular 16 (VERSION)
- angular 17 (VERSION)
- angular 18 (VERSION)
- angular 19 (VERSION)
- angular 2 (VERSION)
- angular 2+ (VERSION)
- angular 2.x (VERSION)
- angular 3 (VERSION)
- angular 4 (VERSION)
- angular 5 (VERSION)
- angular 6 (VERSION)
- angular 7 (VERSION)
- angular 8 (VERSION)
- angular 9 (VERSION)
- angular17 (VERSION)
- angular2 (VERSION)
- angularjs (VERSION)
- angularjs 1.x (VERSION)
- ng (VERSION)
- ng1 (VERSION)
- ng2 (VERSION)
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Framework
- Sub-category
- Frontend Framework
- Vendor
- License
- mit
- Year introduced
- 2010
- Confidence
- 0.98
- Version strategy
- SEPARATE_ENTITY
- Version tag
- 2+
Maturity reasoning: Angular remains widely listed in frontend job descriptions and enterprise stacks; Google continues maintaining Angular, and it is a common hiring-pipeline skill alongside React/Vue rather than a sunset technology.
Skill profile (library / DB)
- Skill nature
- FRAMEWORK
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 5
- Sub-category id
- 1072
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Angular Component Model and Templates Catalog dimension db id 303
Library dimension (catalog)
Roles linked in library: Angular Frontend Developer
-
Application Frameworks & Libraries Catalog dimension db id 451
Library dimension (catalog)
Roles linked in library: Sitecore Dev
-
Frameworks & Libraries Catalog dimension db id 360
Library dimension (catalog)
Roles linked in library: Drupal Dev, Engineering Manager
-
UI Frameworks and Rendering Catalog dimension db id 115
Library dimension (catalog)
Roles linked in library: Frontend Developer, Fullstack Developer, Fullstack Developer, Hybrid Mobile Developer, Ionic Developer, Web Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Angular Component Model and Templates
angular-component-model-and-templates
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Application Frameworks & Libraries
application-frameworks-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Frameworks & Libraries
frameworks-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
UI Frameworks and Rendering
ui-frameworks-and-rendering
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Aliases — catalog
- React (CANONICAL) primary
- React 0.13 (VERSION)
- React 0.14 (VERSION)
- React 15 (VERSION)
- React 15.x (VERSION)
- React 16 (VERSION)
- React 16.x (VERSION)
- React 17 (VERSION)
- React 17.x (VERSION)
- React 18 (VERSION)
- React 18.x (VERSION)
- React 19 (VERSION)
- React v15 (VERSION)
- React v16 (VERSION)
- React v17 (VERSION)
- React v18 (VERSION)
- React v19 (VERSION)
- ReactJS 18 (VERSION)
- react 15 (VERSION)
- react 16 (VERSION)
- react 17 (VERSION)
- react 18 (VERSION)
- react 19 (VERSION)
- react15 (VERSION)
- react16 (VERSION)
- react17 (VERSION)
- react18 (VERSION)
- react19 (VERSION)
- reactjs 18 (VERSION)
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Framework
- Sub-category
- Frontend Framework
- Vendor
- Meta
- License
- mit
- Year introduced
- 2013
- Confidence
- 0.98
- Version strategy
- SEPARATE_ENTITY
- Version tag
- 18
Maturity reasoning: React appears in high-volume frontend job postings across startups and enterprises and remains a default hiring-pipeline skill, with strong GitHub/npm usage and ecosystem activity.
Skill profile (library / DB)
- Skill nature
- FRAMEWORK
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 5
- Sub-category id
- 1072
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Application Frameworks & Libraries Catalog dimension db id 451
Library dimension (catalog)
Roles linked in library: Sitecore Dev
-
Frameworks & Libraries Catalog dimension db id 360
Library dimension (catalog)
Roles linked in library: Drupal Dev, Engineering Manager
-
Frontend Frameworks and Libraries Catalog dimension db id 434
Library dimension (catalog)
Roles linked in library: Shopify Dev
-
JavaScript for WordPress Catalog dimension db id 329
Library dimension (catalog)
Roles linked in library: WordPress Dev
-
React Component Architecture Catalog dimension db id 302
Library dimension (catalog)
Roles linked in library: React Frontend Developer
-
UI Frameworks and Rendering Catalog dimension db id 115
Library dimension (catalog)
Roles linked in library: Frontend Developer, Fullstack Developer, Fullstack Developer, Hybrid Mobile Developer, Ionic Developer, Web Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Application Frameworks & Libraries
application-frameworks-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Frameworks & Libraries
frameworks-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Frontend Frameworks and Libraries
frontend-frameworks-and-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
JavaScript for WordPress
javascript-for-wordpress
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
React Component Architecture
react-component-architecture
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
UI Frameworks and Rendering
ui-frameworks-and-rendering
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
All API 3 persistence rows
Same grid as the skill-extractor “Persistence items” table: one row per (skill × dimension) work item.
| Skill | Tag | Dimension | Skill↔dim | Role↔dim | Outcome | Notes |
|---|---|---|---|---|---|---|
| Angular | in_db |
Angular Component Model and Templates
angular-component-model-and-templates
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Angular | in_db |
Application Frameworks & Libraries
application-frameworks-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Angular | in_db |
Frameworks & Libraries
frameworks-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Angular | in_db |
UI Frameworks and Rendering
ui-frameworks-and-rendering
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| React | in_db |
Application Frameworks & Libraries
application-frameworks-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| React | in_db |
Frameworks & Libraries
frameworks-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| React | in_db |
Frontend Frameworks and Libraries
frontend-frameworks-and-libraries
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| React | in_db |
JavaScript for WordPress
javascript-for-wordpress
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| React | in_db |
React Component Architecture
react-component-architecture
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| React | in_db |
UI Frameworks and Rendering
ui-frameworks-and-rendering
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Library artifacts (this run)
nano JD Parser — gpt-4.1-nano click to toggle
Show raw JSON
{
"JD_type": "pass",
"about_company": {
"source_marker": {
"first_5_words": "Virtue Analytics is a SaaS",
"last_5_words": "informed decision-making."
},
"text": "Virtue Analytics is a SaaS platform; easy to use and available via the cloud. We help universities in exceeding their net tuition revenue goals by mediating their student acquisition, enrolment, and retention cost. At the same time, we assist the university in monitoring the student\u0027s learning process leading to their on-time graduation. Our team consists of technology enthusiast data scientists, data engineers, and researchers with elite educational and professional backgrounds. The team has comprehensive experience in leveraging the data and building intelligent digital solutions to long-enduring challenges of informed decision-making.",
"word_count": 84
},
"certifications": [],
"company_name": "Virtue Analytics",
"ctc": null,
"domain": {
"primary": {
"aliases": [
"SaaS",
"Cloud Services"
],
"domain": "Software \u0026 SaaS Products"
},
"secondary": null
},
"education": [],
"experience": {
"max": null,
"min": 2,
"raw": "2+ years of relevant development experience."
},
"job_locations": [],
"role": "Angular Developer",
"role_aliases": [
"Frontend Developer",
"Web Developer",
"Angular Engineer"
],
"role_archetype": "Engineering",
"roles_and_responsibilities": [
{
"bullet_count": 0,
"heading": "Role Overview",
"heading_was_present": false,
"source_marker": {
"first_5_words": "The Angular developer position is",
"last_5_words": "to mature products."
},
"text": "The Angular developer position is part of the core Virtue team. This position is responsible for conducting research, identifying effective ways of building responsive web applications. The role is the part of the technology team developing a cutting-edge product pioneering to revolutionize university recruitment decisions. Utilizing feedback from back-end developers and leveraging the emerging technology to secure, scale, and refine the product UI. The role requires working closely with - the US delivery team and converting the prototypes to mature products.",
"word_count": 83
},
{
"bullet_count": 4,
"heading": "Required Experience and Skills",
"heading_was_present": true,
"source_marker": {
"first_5_words": "- 2+ years of relevant",
"last_5_words": "highly collaborative environment."
},
"text": "- 2+ years of relevant development experience.\n\n- Experience with Angular (5,7,8) or React\n\n- Experience with security principles and frameworks\n\n- Strong communication skills along with the ability to work in a highly collaborative environment.",
"word_count": 41
}
],
"urls": []
}
API 1 — extract-from-jd click to toggle
{
"final_skills": [
{
"is_primary": true,
"skill_name": "Angular"
},
{
"is_primary": true,
"skill_name": "React"
}
],
"jd_role": {
"display_name": "Angular Developer",
"rationale": null,
"role_aliases": [
"Frontend Developer",
"Web Developer",
"Angular Engineer"
],
"role_archetype": "Engineering",
"slug": ""
},
"nano_parsed": {
"JD_type": "pass",
"about_company": {
"source_marker": {
"first_5_words": "Virtue Analytics is a SaaS",
"last_5_words": "informed decision-making."
},
"text": "Virtue Analytics is a SaaS platform; easy to use and available via the cloud. We help universities in exceeding their net tuition revenue goals by mediating their student acquisition, enrolment, and retention cost. At the same time, we assist the university in monitoring the student\u0027s learning process leading to their on-time graduation. Our team consists of technology enthusiast data scientists, data engineers, and researchers with elite educational and professional backgrounds. The team has comprehensive experience in leveraging the data and building intelligent digital solutions to long-enduring challenges of informed decision-making.",
"word_count": 84
},
"certifications": [],
"company_name": "Virtue Analytics",
"ctc": null,
"domain": {
"primary": {
"aliases": [
"SaaS",
"Cloud Services"
],
"domain": "Software \u0026 SaaS Products"
},
"secondary": null
},
"education": [],
"experience": {
"max": null,
"min": 2,
"raw": "2+ years of relevant development experience."
},
"job_locations": [],
"role": "Angular Developer",
"role_aliases": [
"Frontend Developer",
"Web Developer",
"Angular Engineer"
],
"role_archetype": "Engineering",
"roles_and_responsibilities": [
{
"bullet_count": 0,
"heading": "Role Overview",
"heading_was_present": false,
"source_marker": {
"first_5_words": "The Angular developer position is",
"last_5_words": "to mature products."
},
"text": "The Angular developer position is part of the core Virtue team. This position is responsible for conducting research, identifying effective ways of building responsive web applications. The role is the part of the technology team developing a cutting-edge product pioneering to revolutionize university recruitment decisions. Utilizing feedback from back-end developers and leveraging the emerging technology to secure, scale, and refine the product UI. The role requires working closely with - the US delivery team and converting the prototypes to mature products.",
"word_count": 83
},
{
"bullet_count": 4,
"heading": "Required Experience and Skills",
"heading_was_present": true,
"source_marker": {
"first_5_words": "- 2+ years of relevant",
"last_5_words": "highly collaborative environment."
},
"text": "- 2+ years of relevant development experience.\n\n- Experience with Angular (5,7,8) or React\n\n- Experience with security principles and frameworks\n\n- Strong communication skills along with the ability to work in a highly collaborative environment.",
"word_count": 41
}
],
"urls": []
},
"rejected": false,
"rejection_reason": null,
"run_id": "6594c555-9599-42ff-b607-46fe9dcd68e2",
"stage3_signals": {
"alias_found": true,
"alias_match_roles": [
{
"display_name": "Frontend Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 7,
"score": 1.0,
"slug": "frontend-engineer",
"total_count": null
},
{
"display_name": "Web Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 25,
"score": 1.0,
"slug": "web-developer",
"total_count": null
},
{
"display_name": "Angular Frontend Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 90,
"score": 1.0,
"slug": "angular-frontend-developer",
"total_count": null
},
{
"display_name": "Frontend Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 439,
"score": 1.0,
"slug": "frontend-developer",
"total_count": null
}
],
"kra_match_roles": [
{
"display_name": "Fullstack Developer",
"kra_matches": [
{
"kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
"sentence": "Utilizing feedback from back-end developers and leveraging the emerging technology to secure, scale, and refine the product UI.",
"similarity": 0.6217
},
{
"kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
"sentence": "The role requires working closely with - the US delivery team and converting the prototypes to mature products.",
"similarity": 0.578
},
{
"kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
"sentence": "This position is responsible for conducting research, identifying effective ways of building responsive web applications.",
"similarity": 0.4648
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 15,
"score": 0.5548,
"slug": "full-stack-engineer",
"total_count": null
},
{
"display_name": "Flutter Developer",
"kra_matches": [
{
"kra_text": "collaborate with design, product, and backend teams",
"sentence": "Utilizing feedback from back-end developers and leveraging the emerging technology to secure, scale, and refine the product UI.",
"similarity": 0.596
},
{
"kra_text": "translate product and design requirements",
"sentence": "The role requires working closely with - the US delivery team and converting the prototypes to mature products.",
"similarity": 0.5111
},
{
"kra_text": "collaborate with design, product, and backend teams",
"sentence": "Strong communication skills along with the ability to work in a highly collaborative environment.",
"similarity": 0.4357
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 74,
"score": 0.5142,
"slug": "flutter-developer",
"total_count": null
},
{
"display_name": "Frontend Developer",
"kra_matches": [
{
"kra_text": "Collaborates with UX designers to refine interaction details, animations, responsive breakpoints, and micro-interaction behavior.",
"sentence": "Utilizing feedback from back-end developers and leveraging the emerging technology to secure, scale, and refine the product UI.",
"similarity": 0.5731
},
{
"kra_text": "Builds responsive user interfaces and interactive web components using React, Vue, or Angular with TypeScript, HTML5, and modern CSS for browser-based applications.",
"sentence": "This position is responsible for conducting research, identifying effective ways of building responsive web applications.",
"similarity": 0.53
},
{
"kra_text": "Collaborates with UX designers to refine interaction details, animations, responsive breakpoints, and micro-interaction behavior.",
"sentence": "The role requires working closely with - the US delivery team and converting the prototypes to mature products.",
"similarity": 0.4295
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 7,
"score": 0.5109,
"slug": "frontend-engineer",
"total_count": null
},
{
"display_name": "React Frontend Developer",
"kra_matches": [
{
"kra_text": "connect UI to backend data and actions",
"sentence": "Utilizing feedback from back-end developers and leveraging the emerging technology to secure, scale, and refine the product UI.",
"similarity": 0.5297
},
{
"kra_text": "translate product and design requirements",
"sentence": "The role requires working closely with - the US delivery team and converting the prototypes to mature products.",
"similarity": 0.5111
},
{
"kra_text": "support responsive layouts and browser compatibility",
"sentence": "This position is responsible for conducting research, identifying effective ways of building responsive web applications.",
"similarity": 0.487
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 89,
"score": 0.5092,
"slug": "react-frontend-developer",
"total_count": null
},
{
"display_name": "Angular Frontend Developer",
"kra_matches": [
{
"kra_text": "collaboration with design and QA",
"sentence": "Utilizing feedback from back-end developers and leveraging the emerging technology to secure, scale, and refine the product UI.",
"similarity": 0.522
},
{
"kra_text": "Angular component development",
"sentence": "The Angular developer position is part of the core Virtue team.",
"similarity": 0.4729
},
{
"kra_text": "collaboration with design and QA",
"sentence": "The role requires working closely with - the US delivery team and converting the prototypes to mature products.",
"similarity": 0.4675
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 90,
"score": 0.4875,
"slug": "angular-frontend-developer",
"total_count": null
}
],
"skill_match_roles": [
{
"display_name": "Fullstack Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Angular",
"React"
],
"role_id": 15,
"score": 1.0,
"slug": "full-stack-engineer",
"total_count": 2
},
{
"display_name": "Frontend Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Angular",
"React"
],
"role_id": 7,
"score": 1.0,
"slug": "frontend-engineer",
"total_count": 2
},
{
"display_name": "Web Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Angular",
"React"
],
"role_id": 25,
"score": 1.0,
"slug": "web-developer",
"total_count": 2
},
{
"display_name": "Hybrid Mobile Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Angular",
"React"
],
"role_id": 11,
"score": 1.0,
"slug": "hybrid-mobile-developer",
"total_count": 2
},
{
"display_name": "Engineering Manager",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Angular",
"React"
],
"role_id": 121,
"score": 1.0,
"slug": "engineering-manager",
"total_count": 2
}
]
},
"stage4_decision": {
"alias_collision_detected": true,
"case": "D",
"chosen_role": {
"display_name": "Frontend Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 7,
"score": 1.0,
"slug": "frontend-engineer",
"total_count": null
},
"confidence": 0.85,
"is_new_role": false,
"llm2_fired": true,
"llm2_reasoning": "The JD specifically calls for an Angular developer role focused on building responsive web apps with Angular, matching the Angular Frontend Developer\u2019s KRAs and skills.",
"matched_dimensions": [],
"matched_kras": [],
"matched_skills": [],
"new_role_display_name": null,
"new_role_slug": null,
"queued": false,
"reasoning": "LLM2 picked angular-frontend-developer (confidence 0.85)",
"sub_role": {
"confidence": 0.85,
"display_name": "Angular Frontend Developer",
"reasoning": "hoisted from chosen leaf (case=D)",
"role_id": 90,
"slug": "angular-frontend-developer"
}
},
"stage5_updates": {
"centroid_n_after": 296,
"centroid_updated": true,
"collision_log_id": 684,
"new_kra_attached": null,
"new_skills_attached": [],
"queue_entry_id": null,
"v3_pipeline_triggered": false,
"v3_role_slug": null,
"v3_run_id": null
}
}
API 2 — extract-details
{
"alias_matches": [
{
"alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
"alias_persisted": false,
"existing_alias_id": 1067,
"existing_alias_text": "Angular",
"input_term": "Angular",
"matched_canonical": {
"category_id": 5,
"display_name": "Angular",
"id": 612,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "angular",
"sub_category_id": 1072,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "alias"
},
{
"alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
"alias_persisted": false,
"existing_alias_id": 1047,
"existing_alias_text": "React",
"input_term": "React",
"matched_canonical": {
"category_id": 5,
"display_name": "React",
"id": 610,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "react",
"sub_category_id": 1072,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "alias"
}
],
"candidate_roles": [
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
},
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
},
{
"display_name": "Drupal Dev",
"id": 228,
"rationale": null,
"role_archetype": "Engineering",
"slug": "drupal-dev",
"source": "db"
},
{
"display_name": "Engineering Manager",
"id": 121,
"rationale": null,
"role_archetype": null,
"slug": "engineering-manager",
"source": "db"
},
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
},
{
"display_name": "Shopify Dev",
"id": 230,
"rationale": null,
"role_archetype": "Engineering",
"slug": "shopify-dev",
"source": "db"
},
{
"display_name": "WordPress Dev",
"id": 227,
"rationale": null,
"role_archetype": "Engineering",
"slug": "wordpress-dev",
"source": "db"
},
{
"display_name": "React Frontend Developer",
"id": 89,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-frontend-developer",
"source": "db"
}
],
"chosen_role": {
"display_name": "Frontend Developer",
"id": 7,
"rationale": "LLM2 picked angular-frontend-developer (confidence 0.85)",
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Angular Component Model and Templates",
"id": 303,
"rationale": "Core Angular framework surface for building reusable UI, composing views, and wiring component behavior. This is the main application substrate for browser features in this role.",
"slug": "angular-component-model-and-templates",
"source": "db"
},
"input_skill": "Angular",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Application Frameworks \u0026 Libraries",
"id": 451,
"rationale": "Covers the primary software frameworks and libraries often used alongside Sitecore for building and enhancing site experiences.",
"slug": "application-frameworks-libraries",
"source": "db"
},
"input_skill": "Angular",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frameworks \u0026 Libraries",
"id": 360,
"rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
"slug": "frameworks-libraries",
"source": "db"
},
"input_skill": "Angular",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Drupal Dev",
"id": 228,
"rationale": null,
"role_archetype": "Engineering",
"slug": "drupal-dev",
"source": "db"
},
{
"display_name": "Engineering Manager",
"id": 121,
"rationale": null,
"role_archetype": null,
"slug": "engineering-manager",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UI Frameworks and Rendering",
"id": 115,
"rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
"slug": "ui-frameworks-and-rendering",
"source": "db"
},
"input_skill": "Angular",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Application Frameworks \u0026 Libraries",
"id": 451,
"rationale": "Covers the primary software frameworks and libraries often used alongside Sitecore for building and enhancing site experiences.",
"slug": "application-frameworks-libraries",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frameworks \u0026 Libraries",
"id": 360,
"rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
"slug": "frameworks-libraries",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Drupal Dev",
"id": 228,
"rationale": null,
"role_archetype": "Engineering",
"slug": "drupal-dev",
"source": "db"
},
{
"display_name": "Engineering Manager",
"id": 121,
"rationale": null,
"role_archetype": null,
"slug": "engineering-manager",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frontend Frameworks and Libraries",
"id": 434,
"rationale": "Utilizing modern JavaScript frameworks and Shopify libraries to build dynamic and interactive storefronts.",
"slug": "frontend-frameworks-and-libraries",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Shopify Dev",
"id": 230,
"rationale": null,
"role_archetype": "Engineering",
"slug": "shopify-dev",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "JavaScript for WordPress",
"id": 329,
"rationale": "Client-side scripting used to enhance WordPress themes, blocks, and admin/editor interactions. This includes modern JavaScript patterns as they apply to WordPress-specific behavior rather than standalone frontend applications.",
"slug": "javascript-for-wordpress",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "WordPress Dev",
"id": 227,
"rationale": null,
"role_archetype": "Engineering",
"slug": "wordpress-dev",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Component Architecture",
"id": 302,
"rationale": "Building reusable React components, composing props and children, and managing rendering behavior across feature screens. This is the primary framework cluster for a React frontend developer.",
"slug": "react-component-architecture",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "React Frontend Developer",
"id": 89,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-frontend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UI Frameworks and Rendering",
"id": 115,
"rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
"slug": "ui-frameworks-and-rendering",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
}
]
}
],
"input_final_skills": [
"Angular",
"React"
],
"input_llm_skills": [
"Angular",
"React"
],
"new_aliases_persisted": 0,
"run_id": "6594c555-9599-42ff-b607-46fe9dcd68e2",
"skills_detail": [
{
"aliases_in_db": [
{
"alias_text": "Angular",
"alias_type": "CANONICAL",
"id": 1067,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 1",
"alias_type": "VERSION",
"id": 1068,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 1.x",
"alias_type": "VERSION",
"id": 1086,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 10",
"alias_type": "VERSION",
"id": 1077,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 11",
"alias_type": "VERSION",
"id": 1078,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 12",
"alias_type": "VERSION",
"id": 1079,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 13",
"alias_type": "VERSION",
"id": 1080,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 14",
"alias_type": "VERSION",
"id": 1081,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 15",
"alias_type": "VERSION",
"id": 1082,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 16",
"alias_type": "VERSION",
"id": 1083,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 17",
"alias_type": "VERSION",
"id": 1084,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 2",
"alias_type": "VERSION",
"id": 1069,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 2+",
"alias_type": "VERSION",
"id": 1085,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 4",
"alias_type": "VERSION",
"id": 1070,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 5",
"alias_type": "VERSION",
"id": 1071,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 6",
"alias_type": "VERSION",
"id": 1072,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 7",
"alias_type": "VERSION",
"id": 1073,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 8",
"alias_type": "VERSION",
"id": 1074,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 9",
"alias_type": "VERSION",
"id": 1075,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "AngularJS",
"alias_type": "VERSION",
"id": 1076,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 1",
"alias_type": "VERSION",
"id": 3205,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 1.x",
"alias_type": "VERSION",
"id": 3208,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 10",
"alias_type": "VERSION",
"id": 2098,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 11",
"alias_type": "VERSION",
"id": 2099,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 12",
"alias_type": "VERSION",
"id": 2100,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 13",
"alias_type": "VERSION",
"id": 2101,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 14",
"alias_type": "VERSION",
"id": 2102,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 15",
"alias_type": "VERSION",
"id": 2103,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 16",
"alias_type": "VERSION",
"id": 2104,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 17",
"alias_type": "VERSION",
"id": 2105,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 18",
"alias_type": "VERSION",
"id": 4019,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 19",
"alias_type": "VERSION",
"id": 4020,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 2",
"alias_type": "VERSION",
"id": 2089,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 2+",
"alias_type": "VERSION",
"id": 2106,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 2.x",
"alias_type": "VERSION",
"id": 3209,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 3",
"alias_type": "VERSION",
"id": 2090,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 4",
"alias_type": "VERSION",
"id": 2091,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 5",
"alias_type": "VERSION",
"id": 2092,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 6",
"alias_type": "VERSION",
"id": 2093,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 7",
"alias_type": "VERSION",
"id": 2094,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 8",
"alias_type": "VERSION",
"id": 2095,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 9",
"alias_type": "VERSION",
"id": 2096,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular17",
"alias_type": "VERSION",
"id": 2097,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular2",
"alias_type": "VERSION",
"id": 3204,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angularjs",
"alias_type": "VERSION",
"id": 3207,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angularjs 1.x",
"alias_type": "VERSION",
"id": 6556,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "ng",
"alias_type": "VERSION",
"id": 2088,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "ng1",
"alias_type": "VERSION",
"id": 3202,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "ng2",
"alias_type": "VERSION",
"id": 3203,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 5,
"display_name": "Angular",
"id": 612,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "angular",
"sub_category_id": 1072,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Angular Component Model and Templates",
"id": 303,
"rationale": "Core Angular framework surface for building reusable UI, composing views, and wiring component behavior. This is the main application substrate for browser features in this role.",
"slug": "angular-component-model-and-templates",
"source": "db"
},
"input_skill": "Angular",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Application Frameworks \u0026 Libraries",
"id": 451,
"rationale": "Covers the primary software frameworks and libraries often used alongside Sitecore for building and enhancing site experiences.",
"slug": "application-frameworks-libraries",
"source": "db"
},
"input_skill": "Angular",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frameworks \u0026 Libraries",
"id": 360,
"rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
"slug": "frameworks-libraries",
"source": "db"
},
"input_skill": "Angular",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Drupal Dev",
"id": 228,
"rationale": null,
"role_archetype": "Engineering",
"slug": "drupal-dev",
"source": "db"
},
{
"display_name": "Engineering Manager",
"id": 121,
"rationale": null,
"role_archetype": null,
"slug": "engineering-manager",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UI Frameworks and Rendering",
"id": 115,
"rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
"slug": "ui-frameworks-and-rendering",
"source": "db"
},
"input_skill": "Angular",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
}
]
}
],
"input_skill": "Angular",
"matched_via": "alias",
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": null,
"source_tag": "db",
"was_in_llm_skills": true
},
{
"aliases_in_db": [
{
"alias_text": "React",
"alias_type": "CANONICAL",
"id": 1047,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 0.13",
"alias_type": "VERSION",
"id": 1052,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 0.14",
"alias_type": "VERSION",
"id": 1053,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 15",
"alias_type": "VERSION",
"id": 1048,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 15.x",
"alias_type": "VERSION",
"id": 1054,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 16",
"alias_type": "VERSION",
"id": 1049,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 16.x",
"alias_type": "VERSION",
"id": 1055,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 17",
"alias_type": "VERSION",
"id": 1050,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 17.x",
"alias_type": "VERSION",
"id": 1056,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 18",
"alias_type": "VERSION",
"id": 1051,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 18.x",
"alias_type": "VERSION",
"id": 1057,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React 19",
"alias_type": "VERSION",
"id": 2068,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React v15",
"alias_type": "VERSION",
"id": 3185,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React v16",
"alias_type": "VERSION",
"id": 3186,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React v17",
"alias_type": "VERSION",
"id": 3187,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React v18",
"alias_type": "VERSION",
"id": 3188,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "React v19",
"alias_type": "VERSION",
"id": 6510,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "ReactJS 18",
"alias_type": "VERSION",
"id": 2074,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react 15",
"alias_type": "VERSION",
"id": 2069,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react 16",
"alias_type": "VERSION",
"id": 2070,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react 17",
"alias_type": "VERSION",
"id": 2071,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react 18",
"alias_type": "VERSION",
"id": 2072,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react 19",
"alias_type": "VERSION",
"id": 2073,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react15",
"alias_type": "VERSION",
"id": 3177,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react16",
"alias_type": "VERSION",
"id": 3178,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react17",
"alias_type": "VERSION",
"id": 3179,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react18",
"alias_type": "VERSION",
"id": 3180,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "react19",
"alias_type": "VERSION",
"id": 6500,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "reactjs 18",
"alias_type": "VERSION",
"id": 2075,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 5,
"display_name": "React",
"id": 610,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "react",
"sub_category_id": 1072,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Application Frameworks \u0026 Libraries",
"id": 451,
"rationale": "Covers the primary software frameworks and libraries often used alongside Sitecore for building and enhancing site experiences.",
"slug": "application-frameworks-libraries",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frameworks \u0026 Libraries",
"id": 360,
"rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
"slug": "frameworks-libraries",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Drupal Dev",
"id": 228,
"rationale": null,
"role_archetype": "Engineering",
"slug": "drupal-dev",
"source": "db"
},
{
"display_name": "Engineering Manager",
"id": 121,
"rationale": null,
"role_archetype": null,
"slug": "engineering-manager",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frontend Frameworks and Libraries",
"id": 434,
"rationale": "Utilizing modern JavaScript frameworks and Shopify libraries to build dynamic and interactive storefronts.",
"slug": "frontend-frameworks-and-libraries",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Shopify Dev",
"id": 230,
"rationale": null,
"role_archetype": "Engineering",
"slug": "shopify-dev",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "JavaScript for WordPress",
"id": 329,
"rationale": "Client-side scripting used to enhance WordPress themes, blocks, and admin/editor interactions. This includes modern JavaScript patterns as they apply to WordPress-specific behavior rather than standalone frontend applications.",
"slug": "javascript-for-wordpress",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "WordPress Dev",
"id": 227,
"rationale": null,
"role_archetype": "Engineering",
"slug": "wordpress-dev",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Component Architecture",
"id": 302,
"rationale": "Building reusable React components, composing props and children, and managing rendering behavior across feature screens. This is the primary framework cluster for a React frontend developer.",
"slug": "react-component-architecture",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "React Frontend Developer",
"id": 89,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-frontend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UI Frameworks and Rendering",
"id": 115,
"rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
"slug": "ui-frameworks-and-rendering",
"source": "db"
},
"input_skill": "React",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
}
]
}
],
"input_skill": "React",
"matched_via": "alias",
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": null,
"source_tag": "db",
"was_in_llm_skills": true
}
],
"unmatched_skills": []
}
API 3 — final-role-output
{
"chosen_role": {
"display_name": "Frontend Developer",
"id": 7,
"rationale": "LLM2 picked angular-frontend-developer (confidence 0.85)",
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
"chosen_role_resolution": "in_db",
"final_input_skills": [
{
"skill": "Angular",
"tag": "in_db"
},
{
"skill": "React",
"tag": "in_db"
}
],
"llm_cost_api1_usd": null,
"llm_cost_api2_usd": null,
"llm_cost_api3_usd": null,
"llm_cost_total_usd": null,
"persistence": {
"items": [
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Angular Component Model and Templates",
"id": 303,
"rationale": "Core Angular framework surface for building reusable UI, composing views, and wiring component behavior. This is the main application substrate for browser features in this role.",
"slug": "angular-component-model-and-templates",
"source": "db"
},
"dimension_id": 303,
"input_skill": "Angular",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 612,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Application Frameworks \u0026 Libraries",
"id": 451,
"rationale": "Covers the primary software frameworks and libraries often used alongside Sitecore for building and enhancing site experiences.",
"slug": "application-frameworks-libraries",
"source": "db"
},
"dimension_id": 451,
"input_skill": "Angular",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 612,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frameworks \u0026 Libraries",
"id": 360,
"rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
"slug": "frameworks-libraries",
"source": "db"
},
"dimension_id": 360,
"input_skill": "Angular",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Drupal Dev",
"id": 228,
"rationale": null,
"role_archetype": "Engineering",
"slug": "drupal-dev",
"source": "db"
},
{
"display_name": "Engineering Manager",
"id": 121,
"rationale": null,
"role_archetype": null,
"slug": "engineering-manager",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 612,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UI Frameworks and Rendering",
"id": 115,
"rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
"slug": "ui-frameworks-and-rendering",
"source": "db"
},
"dimension_id": 115,
"input_skill": "Angular",
"llm_role": null,
"matched_chosen_role": true,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
"role_dimension_saved": true,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 612,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Application Frameworks \u0026 Libraries",
"id": 451,
"rationale": "Covers the primary software frameworks and libraries often used alongside Sitecore for building and enhancing site experiences.",
"slug": "application-frameworks-libraries",
"source": "db"
},
"dimension_id": 451,
"input_skill": "React",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 610,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frameworks \u0026 Libraries",
"id": 360,
"rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
"slug": "frameworks-libraries",
"source": "db"
},
"dimension_id": 360,
"input_skill": "React",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Drupal Dev",
"id": 228,
"rationale": null,
"role_archetype": "Engineering",
"slug": "drupal-dev",
"source": "db"
},
{
"display_name": "Engineering Manager",
"id": 121,
"rationale": null,
"role_archetype": null,
"slug": "engineering-manager",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 610,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Frontend Frameworks and Libraries",
"id": 434,
"rationale": "Utilizing modern JavaScript frameworks and Shopify libraries to build dynamic and interactive storefronts.",
"slug": "frontend-frameworks-and-libraries",
"source": "db"
},
"dimension_id": 434,
"input_skill": "React",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Shopify Dev",
"id": 230,
"rationale": null,
"role_archetype": "Engineering",
"slug": "shopify-dev",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 610,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "JavaScript for WordPress",
"id": 329,
"rationale": "Client-side scripting used to enhance WordPress themes, blocks, and admin/editor interactions. This includes modern JavaScript patterns as they apply to WordPress-specific behavior rather than standalone frontend applications.",
"slug": "javascript-for-wordpress",
"source": "db"
},
"dimension_id": 329,
"input_skill": "React",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "WordPress Dev",
"id": 227,
"rationale": null,
"role_archetype": "Engineering",
"slug": "wordpress-dev",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 610,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Component Architecture",
"id": 302,
"rationale": "Building reusable React components, composing props and children, and managing rendering behavior across feature screens. This is the primary framework cluster for a React frontend developer.",
"slug": "react-component-architecture",
"source": "db"
},
"dimension_id": 302,
"input_skill": "React",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "React Frontend Developer",
"id": 89,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-frontend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 610,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 7,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UI Frameworks and Rendering",
"id": 115,
"rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
"slug": "ui-frameworks-and-rendering",
"source": "db"
},
"dimension_id": 115,
"input_skill": "React",
"llm_role": null,
"matched_chosen_role": true,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
"role_dimension_saved": true,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 610,
"skill_tag": "in_db",
"skipped_reason": null
}
],
"new_skills_created": 0,
"role_dimension_saved": 0,
"skill_dimension_saved": 0,
"skipped": 0
},
"planner_output": null,
"run_id": "6594c555-9599-42ff-b607-46fe9dcd68e2"
}
LLM Calls
Every model call made for this run, in pipeline order. Click a card to see the model's response.