Pipeline run
c02f617e-22b1-4be7-b278-231e0664acc6
Client output enrichment
v2 Skill cluster · Nature of work · AI index · Tech stack maturity · Evidence · KRA descriptionvocab breakdown (legacy)
Signals
1 POST /skills/extract-from-jd
2 POST /skills/extract-details
3 POST /skills/final-role-output
Fullstack Developer
CASE Aslug: full-stack-engineer · id: 15 · source: db
Multi-alias tie (3 roles at 1.0) resolved by TIER_C_SKILL: Fullstack Developer
Resolution:
in_db
— role exists in library; skill↔dim and role↔dim links saved when applicable.
Job description
Position: Full Stack PHP Developer (Angular + Laravel) Location: Ahmedabad (Work from Office only) Experience: 3+ Years Skills: PHP, Laravel, Angular, Rest API, SQL - Working experience of Laravel 3+ with REST API and Angular 15+. - Must have knowledge about dependency manager, - Must have knowledge on writing optimized queries in MySQL 8+ - Must have experience of Laravel Seeders, Migration and factory files, Service Providers. - Should have Experience of creating schedules and artisan commands in Laravel - Should have worked on subscriber consumer pattern - Should have knowledge on OAuth2.0 implementation. Should have integrated atleast one SSO system - Must have knowledge on creating component and modules in Angular - Must have knowledge of Service integrations and Angular Material - Must have knowledge of Observables, RxJS, Angular Routes, Roles and permissions - Should have knowledge on best practices in Angular and Laravel Rest - Knowledge of Google Map integration is plus - Knowledge of working in multi tenant system is plus If you are interested help me with your resume at megha.sangani@anblicks.com
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
- Laravel (CANONICAL) primary
- Laravel 10 (VERSION)
- Laravel 11 (VERSION)
- Laravel 4 (VERSION)
- Laravel 5 (VERSION)
- Laravel 6 (VERSION)
- Laravel 7 (VERSION)
- Laravel 8 (VERSION)
- Laravel 9 (VERSION)
- laravel 10 (VERSION)
- laravel 11 (VERSION)
- laravel 4 (VERSION)
- laravel 5 (VERSION)
- laravel 6 (VERSION)
- laravel 7 (VERSION)
- laravel 8 (VERSION)
- laravel 9 (VERSION)
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Framework
- Sub-category
- Web Framework
- Vendor
- Taylor Otwell
- License
- mit
- Year introduced
- 2011
- Confidence
- 0.99
- Version strategy
- SEPARATE_ENTITY
- Version tag
- 11
Maturity reasoning: Laravel appears in many web developer job postings and has strong GitHub activity; it remains a common PHP framework in hiring pipelines, not a niche or sunset technology.
Skill profile (library / DB)
- Skill nature
- FRAMEWORK
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 5
- Sub-category id
- 35
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Web Application Frameworks Catalog dimension db id 2
Library dimension (catalog)
Roles linked in library: Backend Developer, Fullstack Developer, Fullstack Developer, Java Backend Developer, Node.js Backend Developer, PHP Backend Developer, Python Backend Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Web Application Frameworks
web-application-frameworks
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Aliases — catalog
- REST (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Concept
- Sub-category
- Api Architecture Style
- Year introduced
- 2000
- Confidence
- 0.88
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: REST is a default API architecture in many job descriptions and is widely supported by major vendors/frameworks; OpenAPI and RESTful endpoints remain standard in hiring pipelines.
Skill profile (library / DB)
- Skill nature
- CONCEPT
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 2
- Sub-category id
- 2122
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
API Design and Contracts Catalog dimension db id 3
Library dimension (catalog)
Roles linked in library: Backend Developer, Fullstack Developer
-
API Interface and Contract Design Catalog dimension db id 289
Library dimension (catalog)
Roles linked in library: .NET Backend Developer, Go Backend Developer, Kotlin Backend Developer, Node.js Backend Developer, PHP Backend Developer, Python Backend Developer, Ruby Backend Developer, Scala Backend Developer
-
Integration Protocols & Standards Catalog dimension db id 271
Library dimension (catalog)
Roles linked in library: Pega Developer
-
Standards & Protocols Compliance Catalog dimension db id 452
Library dimension (catalog)
Roles linked in library: Sitecore Dev
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
API Design and Contracts
api-design-and-contracts
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
|
API Interface and Contract Design
api-interface-and-contract-design
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Integration Protocols & Standards
integration-protocols-standards
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Standards & Protocols Compliance
standards-protocols-compliance
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
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
-
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) |
|
UI Frameworks and Rendering
ui-frameworks-and-rendering
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Aliases — catalog
- MySQL (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Datastore
- Sub-category
- Relational Database
- Vendor
- Oracle Corporation
- License
- gpl_v2
- Year introduced
- 1995
- Confidence
- 0.99
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: MySQL appears in a large share of backend/DB job descriptions and remains a standard managed offering across AWS RDS, Cloud SQL, and Azure Database, indicating broad hiring-pipeline demand.
Skill profile (library / DB)
- Skill nature
- TOOL
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 3
- Sub-category id
- 29
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Relational Data Modeling Catalog dimension db id 216
Library dimension (catalog)
Roles linked in library: Fullstack Developer, Fullstack Developer, PHP Backend Developer
-
Relational Database Design Catalog dimension db id 4
Library dimension (catalog)
Roles linked in library: .NET Backend Developer, Backend Developer, Kotlin Backend Developer, Node.js Backend Developer, Python Backend Developer, Ruby Backend Developer, Scala Backend Developer
-
Relational Database Usage Catalog dimension db id 371
Library dimension (catalog)
Roles linked in library: Go Backend Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Relational Data Modeling
relational-data-modeling
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
|
Relational Database Design
relational-database-design
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Relational Database Usage
relational-database-usage
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
Skill enrichment (orchestrator / LLM)
No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).
- Category
- Concepts
- Sub-category
- general
- Skill nature
- CONCEPT
- Volatility
- MEDIUM
- Typical lifespan
- MULTI_YEAR
- Version strategy
- UNVERSIONED
Skill enrichment (orchestrator / LLM)
No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).
- Category
- Development Tools
- Sub-category
- general
- Skill nature
- TOOL
- Volatility
- MEDIUM
- Typical lifespan
- MULTI_YEAR
- Version strategy
- UNVERSIONED
Aliases — catalog
- OAuth2 (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Protocol
- Sub-category
- Authorization Protocol
- License
- unknown
- Confidence
- 0.98
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: OAuth2 appears in many job descriptions for API auth, SSO, and identity integrations; it’s a standard market requirement across cloud and SaaS roles, not a niche protocol.
Skill profile (library / DB)
- Skill nature
- PROTOCOL
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 10
- Sub-category id
- 50
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Authentication and Session Handling Catalog dimension db id 86
Library dimension (catalog)
Roles linked in library: Android Developer, Frontend Developer, Fullstack Developer, Hybrid Mobile Developer, Ionic Developer, Native Mobile Developer, Web Developer, iOS Developer
-
Integration Protocols & Standards Catalog dimension db id 271
Library dimension (catalog)
Roles linked in library: Pega Developer
-
Security Architecture and Hardening Catalog dimension db id 75
Library dimension (catalog)
Roles linked in library: Cyber Security Engineer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Authentication and Session Handling
authentication-and-session-handling
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
|
Integration Protocols & Standards
integration-protocols-standards
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Security Architecture and Hardening
security-architecture-and-hardening
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
Aliases — catalog
- SSO federation (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Concept
- Sub-category
- Identity Federation Concept
- Confidence
- 0.90
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Common in enterprise JDs for Okta/Azure AD/SAML/OIDC integrations; widely required for SaaS and internal app access control.
Skill profile (library / DB)
- Skill nature
- CONCEPT
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 2
- Sub-category id
- 532
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Identity and Access Architecture Catalog dimension db id 137
Library dimension (catalog)
Roles linked in library: Cloud Architect, Cloud Security Engineer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Identity and Access Architecture
identity-and-access-architecture
|
— | — |
Skipped — no persistable v3 meta for new skill
skill_not_in_db_v3_proposed
|
Aliases — catalog
- Angular Material (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Framework
- Sub-category
- Ui Component Framework
- Vendor
- License
- apache_2
- Year introduced
- 2014
- Confidence
- 0.90
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Commonly listed in Angular front-end job descriptions and widely used in enterprise apps; Angular’s official Material component library remains actively maintained, with no vendor sunset signal.
Skill profile (library / DB)
- Skill nature
- FRAMEWORK
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 5
- Sub-category id
- 340
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Angular Material and UI Kits Catalog dimension db id 308
Library dimension (catalog)
Roles linked in library: Angular Frontend Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Angular Material and UI Kits
angular-material-and-ui-kits
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
Aliases — catalog
- observables (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Concept
- Sub-category
- Reactive Streams
- Confidence
- 0.93
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Observables are widely used in RxJS/Angular and appear in many frontend and backend JDs for reactive programming and async event streams, indicating broad hiring-pipeline familiarity.
Skill profile (library / DB)
- Skill nature
- CONCEPT
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 2
- Sub-category id
- 1975
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
RxJS and Reactive Programming Catalog dimension db id 306
Library dimension (catalog)
Roles linked in library: Angular Frontend Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
RxJS and Reactive Programming
rxjs-and-reactive-programming
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
Aliases — catalog
- RxJS (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Library
- Sub-category
- Reactive Programming Library
- Vendor
- Microsoft
- License
- mit
- Year introduced
- 2015
- Confidence
- 0.99
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: RxJS appears in many Angular/TypeScript job descriptions and remains a standard reactive library in frontend stacks; no vendor sunset or clear replacement has displaced it.
Skill profile (library / DB)
- Skill nature
- LIBRARY
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 7
- Sub-category id
- 2013
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
RxJS and Reactive Programming Catalog dimension db id 306
Library dimension (catalog)
Roles linked in library: Angular Frontend Developer
-
State Management Patterns Catalog dimension db id 116
Library dimension (catalog)
Roles linked in library: Angular Frontend Developer, Flutter Developer, Frontend Developer, Ionic Developer, React Frontend Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
RxJS and Reactive Programming
rxjs-and-reactive-programming
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
State Management Patterns
state-management-patterns
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
Aliases — catalog
- Angular Router (CANONICAL) primary
- 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 4 (VERSION)
- Angular 5 (VERSION)
- Angular 6 (VERSION)
- Angular 7 (VERSION)
- Angular 8 (VERSION)
- Angular 9 (VERSION)
- AngularJS Router (VERSION)
- angular 1 (VERSION)
- angular 1 router (VERSION)
- angular 1.x (VERSION)
- angular 10 (VERSION)
- angular 10 router (VERSION)
- angular 11 (VERSION)
- angular 11 router (VERSION)
- angular 12 (VERSION)
- angular 12 router (VERSION)
- angular 13 (VERSION)
- angular 13 router (VERSION)
- angular 14 (VERSION)
- angular 14 router (VERSION)
- angular 15 (VERSION)
- angular 15 router (VERSION)
- angular 16 (VERSION)
- angular 16 router (VERSION)
- angular 17 (VERSION)
- angular 17 router (VERSION)
- angular 18 (VERSION)
- angular 18 router (VERSION)
- angular 19 (VERSION)
- angular 2 (VERSION)
- angular 2 router (VERSION)
- angular 4 (VERSION)
- angular 4 router (VERSION)
- angular 5 (VERSION)
- angular 5 router (VERSION)
- angular 6 (VERSION)
- angular 6 router (VERSION)
- angular 7 (VERSION)
- angular 7 router (VERSION)
- angular 8 (VERSION)
- angular 8 router (VERSION)
- angular 9 (VERSION)
- angular 9 router (VERSION)
- angular router (VERSION)
- angular router (angular 2+) (VERSION)
- angular2 router (VERSION)
- angularjs (VERSION)
- angularjs-router (VERSION)
- ng1 (VERSION)
- ng2+ (VERSION)
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Library
- Sub-category
- Routing Library
- Vendor
- License
- mit
- Year introduced
- 2016
- Confidence
- 0.96
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Common in Angular job postings and official Angular docs treat it as the standard routing solution; no vendor sunset or replacement has been announced.
Skill profile (library / DB)
- Skill nature
- LIBRARY
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 7
- Sub-category id
- 489
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Angular Routing and Navigation Catalog dimension db id 304
Library dimension (catalog)
Roles linked in library: Angular Frontend Developer
-
Client Routing and Navigation Catalog dimension db id 119
Library dimension (catalog)
Roles linked in library: Frontend Developer, Web Developer
-
Screen Navigation and State Catalog dimension db id 83
Library dimension (catalog)
Roles linked in library: Android Developer, Flutter Developer, Fullstack Developer, Hybrid Mobile Developer, Ionic Developer, Native Mobile Developer, React Native Developer, iOS Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Angular Routing and Navigation
angular-routing-and-navigation
|
— | — |
Skipped — no persistable v3 meta for new skill
skill_not_in_db_v3_proposed
|
|
Client Routing and Navigation
client-routing-and-navigation
|
— | — |
Skipped — no persistable v3 meta for new skill
skill_not_in_db_v3_proposed
|
|
Screen Navigation and State
screen-navigation-and-state
|
— | — |
Skipped — no persistable v3 meta for new skill
skill_not_in_db_v3_proposed
|
Skill enrichment (orchestrator / LLM)
No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).
- Category
- Cloud Platforms
- Sub-category
- general
- Skill nature
- PLATFORM
- Volatility
- MEDIUM
- Typical lifespan
- MULTI_YEAR
- Version strategy
- UNVERSIONED
Skill enrichment (orchestrator / LLM)
No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).
- Category
- Concepts
- Sub-category
- general
- Skill nature
- CONCEPT
- Volatility
- MEDIUM
- Typical lifespan
- MULTI_YEAR
- Version strategy
- UNVERSIONED
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 |
|---|---|---|---|---|---|---|
| Laravel | in_db |
Web Application Frameworks
web-application-frameworks
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| REST | in_db |
API Design and Contracts
api-design-and-contracts
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| REST | in_db |
API Interface and Contract Design
api-interface-and-contract-design
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| REST | in_db |
Integration Protocols & Standards
integration-protocols-standards
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| REST | in_db |
Standards & Protocols Compliance
standards-protocols-compliance
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| 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 |
UI Frameworks and Rendering
ui-frameworks-and-rendering
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| MySQL | in_db |
Relational Data Modeling
relational-data-modeling
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| MySQL | in_db |
Relational Database Design
relational-database-design
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| MySQL | in_db |
Relational Database Usage
relational-database-usage
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| OAuth2 | in_db |
Authentication and Session Handling
authentication-and-session-handling
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| OAuth2 | in_db |
Integration Protocols & Standards
integration-protocols-standards
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| OAuth2 | in_db |
Security Architecture and Hardening
security-architecture-and-hardening
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| SSO | new |
Identity and Access Architecture
identity-and-access-architecture
|
— | — | Skipped — no persistable v3 meta for new skill | skill_not_in_db_v3_proposed |
| Angular Material | in_db |
Angular Material and UI Kits
angular-material-and-ui-kits
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Observables | in_db |
RxJS and Reactive Programming
rxjs-and-reactive-programming
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| RxJS | in_db |
RxJS and Reactive Programming
rxjs-and-reactive-programming
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| RxJS | in_db |
State Management Patterns
state-management-patterns
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Angular Routes | new |
Angular Routing and Navigation
angular-routing-and-navigation
|
— | — | Skipped — no persistable v3 meta for new skill | skill_not_in_db_v3_proposed |
| Angular Routes | new |
Client Routing and Navigation
client-routing-and-navigation
|
— | — | Skipped — no persistable v3 meta for new skill | skill_not_in_db_v3_proposed |
| Angular Routes | new |
Screen Navigation and State
screen-navigation-and-state
|
— | — | Skipped — no persistable v3 meta for new skill | skill_not_in_db_v3_proposed |
Library artifacts (this run)
| Kind | Detail | DB id |
|---|---|---|
| canonical_skill_proposed | Service Providers | type=Concepts subtype=general nature=CONCEPT lifespan=MULTI_YEAR | |
| canonical_skill_proposed | Artisan | type=Development Tools subtype=general nature=TOOL lifespan=MULTI_YEAR | |
| canonical_skill_proposed | Google Maps | type=Cloud Platforms subtype=general nature=PLATFORM lifespan=MULTI_YEAR | |
| canonical_skill_proposed | Multi-tenant Architecture | type=Concepts subtype=general nature=CONCEPT lifespan=MULTI_YEAR | |
| dimension_skill_link_proposed | SSO ↔ Identity and Access Architecture | |
| dimension_skill_link_proposed | Angular Routes ↔ Angular Routing and Navigation | |
| dimension_skill_link_proposed | Angular Routes ↔ Client Routing and Navigation | |
| dimension_skill_link_proposed | Angular Routes ↔ Screen Navigation and State | |
| role_dimension_link_proposed | Fullstack Developer ↔ Screen Navigation and State |
nano JD Parser — gpt-4.1-nano click to toggle
Show raw JSON
{
"JD_type": "pass",
"about_company": null,
"certifications": [],
"company_name": null,
"ctc": null,
"domain": {
"primary": {
"aliases": [],
"domain": "IT Services \u0026 Consulting"
},
"secondary": null
},
"education": [],
"experience": {
"max": null,
"min": 3,
"raw": "3+ Years"
},
"job_locations": [
{
"aliases": [],
"city": "Ahmedabad",
"country": "India",
"state": null,
"work_mode": "onsite"
}
],
"role": "Full Stack PHP Developer (Angular + Laravel)",
"role_aliases": [
"Full Stack Developer",
"PHP Developer",
"Software Engineer"
],
"role_archetype": "Engineering",
"roles_and_responsibilities": [
{
"bullet_count": 0,
"heading": "Skills",
"heading_was_present": true,
"source_marker": {
"first_5_words": "Working experience of Laravel 3+",
"last_5_words": "in multi tenant system is plus"
},
"text": "Working experience of Laravel 3+ with REST API and Angular 15+.\nMust have knowledge about dependency manager,\nMust have knowledge on writing optimized queries in MySQL 8+\nMust have experience of Laravel Seeders, Migration and factory files, Service Providers.\nShould have Experience of creating schedules and artisan commands in Laravel\nShould have worked on subscriber consumer pattern\nShould have knowledge on OAuth2.0 implementation. Should have integrated atleast one SSO system\nMust have knowledge on creating component and modules in Angular\nMust have knowledge of Service integrations and Angular Material\nMust have knowledge of Observables, RxJS, Angular Routes, Roles and permissions\nShould have knowledge on best practices in Angular and Laravel Rest\nKnowledge of Google Map integration is plus\nKnowledge of working in multi tenant system is plus",
"word_count": 155
}
],
"urls": []
}
API 1 — extract-from-jd click to toggle
{
"final_skills": [
{
"is_primary": true,
"skill_name": "Laravel"
},
{
"is_primary": true,
"skill_name": "REST"
},
{
"is_primary": true,
"skill_name": "Angular"
},
{
"is_primary": true,
"skill_name": "MySQL"
},
{
"is_primary": true,
"skill_name": "Service Providers"
},
{
"is_primary": true,
"skill_name": "Artisan"
},
{
"is_primary": true,
"skill_name": "OAuth2"
},
{
"is_primary": true,
"skill_name": "SSO"
},
{
"is_primary": true,
"skill_name": "Angular Material"
},
{
"is_primary": true,
"skill_name": "Observables"
},
{
"is_primary": true,
"skill_name": "RxJS"
},
{
"is_primary": true,
"skill_name": "Angular Routes"
},
{
"is_primary": false,
"skill_name": "Google Maps"
},
{
"is_primary": false,
"skill_name": "Multi-tenant Architecture"
}
],
"jd_role": {
"display_name": "Full Stack PHP Developer (Angular + Laravel)",
"rationale": null,
"role_aliases": [
"Full Stack Developer",
"PHP Developer",
"Software Engineer"
],
"role_archetype": "Engineering",
"slug": ""
},
"nano_parsed": {
"JD_type": "pass",
"about_company": null,
"certifications": [],
"company_name": null,
"ctc": null,
"domain": {
"primary": {
"aliases": [],
"domain": "IT Services \u0026 Consulting"
},
"secondary": null
},
"education": [],
"experience": {
"max": null,
"min": 3,
"raw": "3+ Years"
},
"job_locations": [
{
"aliases": [],
"city": "Ahmedabad",
"country": "India",
"state": null,
"work_mode": "onsite"
}
],
"role": "Full Stack PHP Developer (Angular + Laravel)",
"role_aliases": [
"Full Stack Developer",
"PHP Developer",
"Software Engineer"
],
"role_archetype": "Engineering",
"roles_and_responsibilities": [
{
"bullet_count": 0,
"heading": "Skills",
"heading_was_present": true,
"source_marker": {
"first_5_words": "Working experience of Laravel 3+",
"last_5_words": "in multi tenant system is plus"
},
"text": "Working experience of Laravel 3+ with REST API and Angular 15+.\nMust have knowledge about dependency manager,\nMust have knowledge on writing optimized queries in MySQL 8+\nMust have experience of Laravel Seeders, Migration and factory files, Service Providers.\nShould have Experience of creating schedules and artisan commands in Laravel\nShould have worked on subscriber consumer pattern\nShould have knowledge on OAuth2.0 implementation. Should have integrated atleast one SSO system\nMust have knowledge on creating component and modules in Angular\nMust have knowledge of Service integrations and Angular Material\nMust have knowledge of Observables, RxJS, Angular Routes, Roles and permissions\nShould have knowledge on best practices in Angular and Laravel Rest\nKnowledge of Google Map integration is plus\nKnowledge of working in multi tenant system is plus",
"word_count": 155
}
],
"urls": []
},
"rejected": false,
"rejection_reason": null,
"run_id": "c02f617e-22b1-4be7-b278-231e0664acc6",
"stage3_signals": {
"alias_found": true,
"alias_match_roles": [
{
"display_name": "Fullstack Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 15,
"score": 1.0,
"slug": "full-stack-engineer",
"total_count": null
},
{
"display_name": "Backend Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 1,
"score": 1.0,
"slug": "backend-engineer",
"total_count": null
},
{
"display_name": "PHP Backend Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 86,
"score": 1.0,
"slug": "php-backend-developer",
"total_count": null
}
],
"kra_match_roles": [
{
"display_name": "Angular Frontend Developer",
"kra_matches": [
{
"kra_text": "Angular component development",
"sentence": "Must have knowledge on creating component and modules in Angular",
"similarity": 0.6254
},
{
"kra_text": "Angular component development",
"sentence": "Must have knowledge of Service integrations and Angular Material",
"similarity": 0.5106
},
{
"kra_text": "Angular component development",
"sentence": "Should have knowledge on best practices in Angular and Laravel Rest",
"similarity": 0.5013
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 90,
"score": 0.5457,
"slug": "angular-frontend-developer",
"total_count": null
},
{
"display_name": "Java Backend Developer",
"kra_matches": [
{
"kra_text": "external system integration",
"sentence": "Should have integrated atleast one SSO system",
"similarity": 0.5584
},
{
"kra_text": "backend performance tuning",
"sentence": "Must have knowledge on writing optimized queries in MySQL 8+",
"similarity": 0.4446
},
{
"kra_text": "external system integration",
"sentence": "Must have knowledge of Service integrations and Angular Material",
"similarity": 0.4032
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 79,
"score": 0.4687,
"slug": "java-backend-developer",
"total_count": null
},
{
"display_name": "Python Backend Developer",
"kra_matches": [
{
"kra_text": "Build service and external integrations",
"sentence": "Must have knowledge of Service integrations and Angular Material",
"similarity": 0.4946
},
{
"kra_text": "Design backend endpoints and request handling",
"sentence": "Should have knowledge on best practices in Angular and Laravel Rest",
"similarity": 0.4716
},
{
"kra_text": "Design backend endpoints and request handling",
"sentence": "Working experience of Laravel 3+ with REST API and Angular 15+.",
"similarity": 0.4224
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 80,
"score": 0.4628,
"slug": "python-backend-developer",
"total_count": null
},
{
"display_name": "Node.js Backend Developer",
"kra_matches": [
{
"kra_text": "external system integration",
"sentence": "Should have integrated atleast one SSO system",
"similarity": 0.5584
},
{
"kra_text": "API design and request handling",
"sentence": "Working experience of Laravel 3+ with REST API and Angular 15+.",
"similarity": 0.4142
},
{
"kra_text": "external system integration",
"sentence": "Must have knowledge of Service integrations and Angular Material",
"similarity": 0.4032
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 82,
"score": 0.4586,
"slug": "node-backend-developer",
"total_count": null
},
{
"display_name": "Sitecore Dev",
"kra_matches": [
{
"kra_text": "integration with adjacent systems",
"sentence": "Should have integrated atleast one SSO system",
"similarity": 0.5407
},
{
"kra_text": "component and page implementation",
"sentence": "Must have knowledge on creating component and modules in Angular",
"similarity": 0.4583
},
{
"kra_text": "navigation and routing behavior",
"sentence": "Must have knowledge of Observables, RxJS, Angular Routes, Roles and permissions",
"similarity": 0.3722
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 233,
"score": 0.457,
"slug": "sitecore-dev",
"total_count": null
}
],
"skill_match_roles": [
{
"display_name": "Fullstack Developer",
"kra_matches": null,
"matched_count": 5,
"matched_skills": [
"Angular",
"Laravel",
"MySQL",
"OAuth2",
"REST"
],
"role_id": 15,
"score": 0.4167,
"slug": "full-stack-engineer",
"total_count": 12
},
{
"display_name": "Angular Frontend Developer",
"kra_matches": null,
"matched_count": 4,
"matched_skills": [
"Angular",
"Angular Material",
"RxJS",
"observables"
],
"role_id": 90,
"score": 0.3333,
"slug": "angular-frontend-developer",
"total_count": 12
},
{
"display_name": "Backend Developer",
"kra_matches": null,
"matched_count": 3,
"matched_skills": [
"Laravel",
"MySQL",
"REST"
],
"role_id": 1,
"score": 0.25,
"slug": "backend-engineer",
"total_count": 12
},
{
"display_name": "Frontend Developer",
"kra_matches": null,
"matched_count": 3,
"matched_skills": [
"Angular",
"OAuth2",
"RxJS"
],
"role_id": 7,
"score": 0.25,
"slug": "frontend-engineer",
"total_count": 12
},
{
"display_name": "Python Backend Developer",
"kra_matches": null,
"matched_count": 3,
"matched_skills": [
"Laravel",
"MySQL",
"REST"
],
"role_id": 80,
"score": 0.25,
"slug": "python-backend-developer",
"total_count": 12
}
]
},
"stage4_decision": {
"alias_collision_detected": true,
"case": "A",
"chosen_role": {
"display_name": "Fullstack Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 15,
"score": 1.0,
"slug": "full-stack-engineer",
"total_count": null
},
"confidence": 0.95,
"is_new_role": false,
"llm2_fired": false,
"llm2_reasoning": null,
"matched_dimensions": [],
"matched_kras": [],
"matched_skills": [],
"new_role_display_name": null,
"new_role_slug": null,
"queued": false,
"reasoning": "Multi-alias tie (3 roles at 1.0) resolved by TIER_C_SKILL: Fullstack Developer",
"sub_role": null
},
"stage5_updates": 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": 5429,
"existing_alias_text": "Laravel",
"input_term": "Laravel",
"matched_canonical": {
"category_id": 5,
"display_name": "Laravel",
"id": 3798,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "laravel",
"sub_category_id": 35,
"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": 106,
"existing_alias_text": "REST",
"input_term": "REST",
"matched_canonical": {
"category_id": 2,
"display_name": "REST",
"id": 11,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "rest",
"sub_category_id": 2122,
"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": 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": 134,
"existing_alias_text": "MySQL",
"input_term": "MySQL",
"matched_canonical": {
"category_id": 3,
"display_name": "MySQL",
"id": 17,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "TOOL",
"slug": "mysql",
"sub_category_id": 29,
"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": 2361,
"existing_alias_text": "OAuth2",
"input_term": "OAuth2",
"matched_canonical": {
"category_id": 10,
"display_name": "OAuth2",
"id": 1466,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "PROTOCOL",
"slug": "oauth2",
"sub_category_id": 50,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "alias"
},
{
"alias_persist_skipped_reason": "TODO: REMOVE AFTER TESTING \u2014 alias DB write disabled",
"alias_persisted": false,
"existing_alias_id": 1290,
"existing_alias_text": "SSO federation",
"input_term": "SSO",
"matched_canonical": {
"category_id": 2,
"display_name": "SSO federation",
"id": 745,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "sso-federation",
"sub_category_id": 532,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "embedding_alias"
},
{
"alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
"alias_persisted": false,
"existing_alias_id": 4088,
"existing_alias_text": "Angular Material",
"input_term": "Angular Material",
"matched_canonical": {
"category_id": 5,
"display_name": "Angular Material",
"id": 2667,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "angular-material",
"sub_category_id": 340,
"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": 4075,
"existing_alias_text": "observables",
"input_term": "Observables",
"matched_canonical": {
"category_id": 2,
"display_name": "observables",
"id": 2654,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "observables",
"sub_category_id": 1975,
"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": 4056,
"existing_alias_text": "RxJS",
"input_term": "RxJS",
"matched_canonical": {
"category_id": 7,
"display_name": "RxJS",
"id": 2635,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "LIBRARY",
"slug": "rxjs",
"sub_category_id": 2013,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "alias"
},
{
"alias_persist_skipped_reason": "TODO: REMOVE AFTER TESTING \u2014 alias DB write disabled",
"alias_persisted": false,
"existing_alias_id": 1121,
"existing_alias_text": "Angular Router",
"input_term": "Angular Routes",
"matched_canonical": {
"category_id": 7,
"display_name": "Angular Router",
"id": 637,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "LIBRARY",
"slug": "angular-router",
"sub_category_id": 489,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "embedding_alias"
}
],
"candidate_roles": [
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-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": "Java Backend Developer",
"id": 79,
"rationale": null,
"role_archetype": "Engineering",
"slug": "java-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
},
{
"display_name": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
},
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
},
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
},
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"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": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
},
{
"display_name": "Cyber Security Engineer",
"id": 5,
"rationale": null,
"role_archetype": null,
"slug": "cybersecurity-engineer",
"source": "db"
},
{
"display_name": "Cloud Architect",
"id": 9,
"rationale": null,
"role_archetype": null,
"slug": "cloud-architect",
"source": "db"
},
{
"display_name": "Cloud Security Engineer",
"id": 23,
"rationale": null,
"role_archetype": null,
"slug": "cloud-security-engineer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "React Frontend Developer",
"id": 89,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-frontend-developer",
"source": "db"
},
{
"display_name": "React Native Developer",
"id": 73,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-native-developer",
"source": "db"
}
],
"chosen_role": {
"display_name": "Fullstack Developer",
"id": 15,
"rationale": "Multi-alias tie (3 roles at 1.0) resolved by TIER_C_SKILL: Fullstack Developer",
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Web Application Frameworks",
"id": 2,
"rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
"slug": "web-application-frameworks",
"source": "db"
},
"input_skill": "Laravel",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-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": "Java Backend Developer",
"id": 79,
"rationale": null,
"role_archetype": "Engineering",
"slug": "java-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "API Design and Contracts",
"id": 3,
"rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
"slug": "api-design-and-contracts",
"source": "db"
},
"input_skill": "REST",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "API Interface and Contract Design",
"id": 289,
"rationale": "Designing backend service interfaces and contracts that other systems consume, including endpoint and operation shape, request/response payloads, schema and validation, pagination, filtering, idempotency, versioning, status codes, and backward compatibility across REST, GraphQL, gRPC, and OpenAPI-based APIs.",
"slug": "api-interface-and-contract-design",
"source": "db"
},
"input_skill": "REST",
"llm_role": null,
"roles_from_db": [
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Integration Protocols \u0026 Standards",
"id": 271,
"rationale": "Standards and protocols for integrating Pega applications.",
"slug": "integration-protocols-standards",
"source": "db"
},
"input_skill": "REST",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Standards \u0026 Protocols Compliance",
"id": 452,
"rationale": "Encompasses key web and data standards, protocols, and compliance requirements relevant to Sitecore implementations.",
"slug": "standards-protocols-compliance",
"source": "db"
},
"input_skill": "REST",
"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": "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": "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": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"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": "Relational Data Modeling",
"id": 216,
"rationale": "Modeling and tuning relational persistence for backend features. PHP backend developers need this to shape schemas, indexes, transactions, and query-aware data structures that support application behavior.",
"slug": "relational-data-modeling",
"source": "db"
},
"input_skill": "MySQL",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Relational Database Design",
"id": 4,
"rationale": "Modeling and operating relational persistence for backend services. Includes schema design, normalization, indexing, transactions, and query tuning for operational data stores.",
"slug": "relational-database-design",
"source": "db"
},
"input_skill": "MySQL",
"llm_role": null,
"roles_from_db": [
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-engineer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Relational Database Usage",
"id": 371,
"rationale": "Working effectively with operational relational databases from Go backend services. This includes schema-aware querying, indexing awareness, transactions, and understanding how service code interacts with PostgreSQL or similar systems.",
"slug": "relational-database-usage",
"source": "db"
},
"input_skill": "MySQL",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Authentication and Session Handling",
"id": 86,
"rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
"slug": "authentication-and-session-handling",
"source": "db"
},
"input_skill": "OAuth2",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"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": "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": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Integration Protocols \u0026 Standards",
"id": 271,
"rationale": "Standards and protocols for integrating Pega applications.",
"slug": "integration-protocols-standards",
"source": "db"
},
"input_skill": "OAuth2",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Security Architecture and Hardening",
"id": 75,
"rationale": "Design and implementation of secure baselines, control patterns, and environment hardening across systems. This cluster is central to the role because it turns policy and risk analysis into concrete technical safeguards.",
"slug": "security-architecture-and-hardening",
"source": "db"
},
"input_skill": "OAuth2",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Cyber Security Engineer",
"id": 5,
"rationale": null,
"role_archetype": null,
"slug": "cybersecurity-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Identity and Access Architecture",
"id": 137,
"rationale": "Cloud identity patterns for authentication, authorization, federation, and privileged access boundaries. This is central to cloud governance because it defines who can administer and consume platform resources.",
"slug": "identity-and-access-architecture",
"source": "db"
},
"input_skill": "SSO",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Cloud Architect",
"id": 9,
"rationale": null,
"role_archetype": null,
"slug": "cloud-architect",
"source": "db"
},
{
"display_name": "Cloud Security Engineer",
"id": 23,
"rationale": null,
"role_archetype": null,
"slug": "cloud-security-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Angular Material and UI Kits",
"id": 308,
"rationale": "Reusable UI component libraries and design-system implementations used to accelerate Angular feature delivery. This cluster is coherent because Angular developers often assemble screens from standardized controls and patterns.",
"slug": "angular-material-and-ui-kits",
"source": "db"
},
"input_skill": "Angular Material",
"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": "RxJS and Reactive Programming",
"id": 306,
"rationale": "Reactive composition patterns used to model asynchronous UI behavior, event streams, and data flows in Angular. This is a distinct cluster because Angular heavily relies on observables for component and service coordination.",
"slug": "rxjs-and-reactive-programming",
"source": "db"
},
"input_skill": "Observables",
"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": "RxJS and Reactive Programming",
"id": 306,
"rationale": "Reactive composition patterns used to model asynchronous UI behavior, event streams, and data flows in Angular. This is a distinct cluster because Angular heavily relies on observables for component and service coordination.",
"slug": "rxjs-and-reactive-programming",
"source": "db"
},
"input_skill": "RxJS",
"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": "State Management Patterns",
"id": 116,
"rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
"slug": "state-management-patterns",
"source": "db"
},
"input_skill": "RxJS",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "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": "Angular Routing and Navigation",
"id": 304,
"rationale": "Browser-side navigation, route configuration, nested outlets, guards, resolvers, and URL-driven application flow. This cluster is coherent because Angular developers own how users move through feature areas and deep links.",
"slug": "angular-routing-and-navigation",
"source": "db"
},
"input_skill": "Angular Routes",
"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": "Client Routing and Navigation",
"id": 119,
"rationale": "Browser-side navigation, route matching, nested views, and URL-driven application flow. This cluster is coherent because frontend engineers own how users move through the app and how state maps to routes.",
"slug": "client-routing-and-navigation",
"source": "db"
},
"input_skill": "Angular Routes",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"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": "Screen Navigation and State",
"id": 83,
"rationale": "Patterns for moving users through app flows and keeping client state consistent across screens, refreshes, and app transitions. This is central to feature work because iOS engineers own the in-app request flow and UI logic.",
"slug": "screen-navigation-and-state",
"source": "db"
},
"input_skill": "Angular Routes",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"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": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "React Native Developer",
"id": 73,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-native-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
]
}
],
"input_final_skills": [
"Laravel",
"REST",
"Angular",
"MySQL",
"Service Providers",
"Artisan",
"OAuth2",
"SSO",
"Angular Material",
"Observables",
"RxJS",
"Angular Routes",
"Google Maps",
"Multi-tenant Architecture"
],
"input_llm_skills": [
"Laravel",
"REST",
"Angular",
"MySQL",
"Service Providers",
"Artisan",
"OAuth2",
"SSO",
"Angular Material",
"Observables",
"RxJS",
"Angular Routes",
"Google Maps",
"Multi-tenant Architecture"
],
"new_aliases_persisted": 0,
"run_id": "c02f617e-22b1-4be7-b278-231e0664acc6",
"skills_detail": [
{
"aliases_in_db": [
{
"alias_text": "Laravel",
"alias_type": "CANONICAL",
"id": 5429,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Laravel 10",
"alias_type": "VERSION",
"id": 5442,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Laravel 11",
"alias_type": "VERSION",
"id": 5443,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Laravel 4",
"alias_type": "VERSION",
"id": 5430,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Laravel 5",
"alias_type": "VERSION",
"id": 5431,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Laravel 6",
"alias_type": "VERSION",
"id": 5432,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Laravel 7",
"alias_type": "VERSION",
"id": 5433,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Laravel 8",
"alias_type": "VERSION",
"id": 5434,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Laravel 9",
"alias_type": "VERSION",
"id": 5435,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "laravel 10",
"alias_type": "VERSION",
"id": 5444,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "laravel 11",
"alias_type": "VERSION",
"id": 5445,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "laravel 4",
"alias_type": "VERSION",
"id": 5436,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "laravel 5",
"alias_type": "VERSION",
"id": 5437,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "laravel 6",
"alias_type": "VERSION",
"id": 5438,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "laravel 7",
"alias_type": "VERSION",
"id": 5439,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "laravel 8",
"alias_type": "VERSION",
"id": 5440,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "laravel 9",
"alias_type": "VERSION",
"id": 5441,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 5,
"display_name": "Laravel",
"id": 3798,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "laravel",
"sub_category_id": 35,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Web Application Frameworks",
"id": 2,
"rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
"slug": "web-application-frameworks",
"source": "db"
},
"input_skill": "Laravel",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-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": "Java Backend Developer",
"id": 79,
"rationale": null,
"role_archetype": "Engineering",
"slug": "java-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
}
]
}
],
"input_skill": "Laravel",
"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": "REST",
"alias_type": "CANONICAL",
"id": 106,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 2,
"display_name": "REST",
"id": 11,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "rest",
"sub_category_id": 2122,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "API Design and Contracts",
"id": 3,
"rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
"slug": "api-design-and-contracts",
"source": "db"
},
"input_skill": "REST",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "API Interface and Contract Design",
"id": 289,
"rationale": "Designing backend service interfaces and contracts that other systems consume, including endpoint and operation shape, request/response payloads, schema and validation, pagination, filtering, idempotency, versioning, status codes, and backward compatibility across REST, GraphQL, gRPC, and OpenAPI-based APIs.",
"slug": "api-interface-and-contract-design",
"source": "db"
},
"input_skill": "REST",
"llm_role": null,
"roles_from_db": [
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Integration Protocols \u0026 Standards",
"id": 271,
"rationale": "Standards and protocols for integrating Pega applications.",
"slug": "integration-protocols-standards",
"source": "db"
},
"input_skill": "REST",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Standards \u0026 Protocols Compliance",
"id": 452,
"rationale": "Encompasses key web and data standards, protocols, and compliance requirements relevant to Sitecore implementations.",
"slug": "standards-protocols-compliance",
"source": "db"
},
"input_skill": "REST",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Sitecore Dev",
"id": 233,
"rationale": null,
"role_archetype": "Engineering",
"slug": "sitecore-dev",
"source": "db"
}
]
}
],
"input_skill": "REST",
"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": "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": "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": "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": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"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": "MySQL",
"alias_type": "CANONICAL",
"id": 134,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 3,
"display_name": "MySQL",
"id": 17,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "TOOL",
"slug": "mysql",
"sub_category_id": 29,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Relational Data Modeling",
"id": 216,
"rationale": "Modeling and tuning relational persistence for backend features. PHP backend developers need this to shape schemas, indexes, transactions, and query-aware data structures that support application behavior.",
"slug": "relational-data-modeling",
"source": "db"
},
"input_skill": "MySQL",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Relational Database Design",
"id": 4,
"rationale": "Modeling and operating relational persistence for backend services. Includes schema design, normalization, indexing, transactions, and query tuning for operational data stores.",
"slug": "relational-database-design",
"source": "db"
},
"input_skill": "MySQL",
"llm_role": null,
"roles_from_db": [
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-engineer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Relational Database Usage",
"id": 371,
"rationale": "Working effectively with operational relational databases from Go backend services. This includes schema-aware querying, indexing awareness, transactions, and understanding how service code interacts with PostgreSQL or similar systems.",
"slug": "relational-database-usage",
"source": "db"
},
"input_skill": "MySQL",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
}
]
}
],
"input_skill": "MySQL",
"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": [],
"canonical": null,
"dimensions": [],
"input_skill": "Service Providers",
"matched_via": null,
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": {
"derived": {
"category": "Concepts",
"skill_nature": "CONCEPT",
"sub_category": "general",
"typical_lifespan": "MULTI_YEAR",
"version_strategy": "UNVERSIONED",
"volatility": "MEDIUM"
},
"enrichment": null,
"keep_log": [],
"locked_dimensions": [],
"merge_log": [],
"placed": null,
"relationships": null,
"skill_id": "service-providers",
"split_log": [],
"typed": null,
"warnings": []
},
"source_tag": "llm",
"was_in_llm_skills": true
},
{
"aliases_in_db": [],
"canonical": null,
"dimensions": [],
"input_skill": "Artisan",
"matched_via": null,
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": {
"derived": {
"category": "Development Tools",
"skill_nature": "TOOL",
"sub_category": "general",
"typical_lifespan": "MULTI_YEAR",
"version_strategy": "UNVERSIONED",
"volatility": "MEDIUM"
},
"enrichment": null,
"keep_log": [],
"locked_dimensions": [],
"merge_log": [],
"placed": null,
"relationships": null,
"skill_id": "artisan",
"split_log": [],
"typed": null,
"warnings": []
},
"source_tag": "llm",
"was_in_llm_skills": true
},
{
"aliases_in_db": [
{
"alias_text": "OAuth2",
"alias_type": "CANONICAL",
"id": 2361,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 10,
"display_name": "OAuth2",
"id": 1466,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "PROTOCOL",
"slug": "oauth2",
"sub_category_id": 50,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Authentication and Session Handling",
"id": 86,
"rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
"slug": "authentication-and-session-handling",
"source": "db"
},
"input_skill": "OAuth2",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"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": "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": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Integration Protocols \u0026 Standards",
"id": 271,
"rationale": "Standards and protocols for integrating Pega applications.",
"slug": "integration-protocols-standards",
"source": "db"
},
"input_skill": "OAuth2",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Security Architecture and Hardening",
"id": 75,
"rationale": "Design and implementation of secure baselines, control patterns, and environment hardening across systems. This cluster is central to the role because it turns policy and risk analysis into concrete technical safeguards.",
"slug": "security-architecture-and-hardening",
"source": "db"
},
"input_skill": "OAuth2",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Cyber Security Engineer",
"id": 5,
"rationale": null,
"role_archetype": null,
"slug": "cybersecurity-engineer",
"source": "db"
}
]
}
],
"input_skill": "OAuth2",
"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": "SSO federation",
"alias_type": "CANONICAL",
"id": 1290,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 2,
"display_name": "SSO federation",
"id": 745,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "sso-federation",
"sub_category_id": 532,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Identity and Access Architecture",
"id": 137,
"rationale": "Cloud identity patterns for authentication, authorization, federation, and privileged access boundaries. This is central to cloud governance because it defines who can administer and consume platform resources.",
"slug": "identity-and-access-architecture",
"source": "db"
},
"input_skill": "SSO",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Cloud Architect",
"id": 9,
"rationale": null,
"role_archetype": null,
"slug": "cloud-architect",
"source": "db"
},
{
"display_name": "Cloud Security Engineer",
"id": 23,
"rationale": null,
"role_archetype": null,
"slug": "cloud-security-engineer",
"source": "db"
}
]
}
],
"input_skill": "SSO",
"matched_via": "embedding_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": "Angular Material",
"alias_type": "CANONICAL",
"id": 4088,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 5,
"display_name": "Angular Material",
"id": 2667,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "angular-material",
"sub_category_id": 340,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Angular Material and UI Kits",
"id": 308,
"rationale": "Reusable UI component libraries and design-system implementations used to accelerate Angular feature delivery. This cluster is coherent because Angular developers often assemble screens from standardized controls and patterns.",
"slug": "angular-material-and-ui-kits",
"source": "db"
},
"input_skill": "Angular Material",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
}
]
}
],
"input_skill": "Angular Material",
"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": "observables",
"alias_type": "CANONICAL",
"id": 4075,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 2,
"display_name": "observables",
"id": 2654,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "observables",
"sub_category_id": 1975,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "RxJS and Reactive Programming",
"id": 306,
"rationale": "Reactive composition patterns used to model asynchronous UI behavior, event streams, and data flows in Angular. This is a distinct cluster because Angular heavily relies on observables for component and service coordination.",
"slug": "rxjs-and-reactive-programming",
"source": "db"
},
"input_skill": "Observables",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
}
]
}
],
"input_skill": "Observables",
"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": "RxJS",
"alias_type": "CANONICAL",
"id": 4056,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 7,
"display_name": "RxJS",
"id": 2635,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "LIBRARY",
"slug": "rxjs",
"sub_category_id": 2013,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "RxJS and Reactive Programming",
"id": 306,
"rationale": "Reactive composition patterns used to model asynchronous UI behavior, event streams, and data flows in Angular. This is a distinct cluster because Angular heavily relies on observables for component and service coordination.",
"slug": "rxjs-and-reactive-programming",
"source": "db"
},
"input_skill": "RxJS",
"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": "State Management Patterns",
"id": 116,
"rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
"slug": "state-management-patterns",
"source": "db"
},
"input_skill": "RxJS",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Angular Frontend Developer",
"id": 90,
"rationale": null,
"role_archetype": "Engineering",
"slug": "angular-frontend-developer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "db"
},
{
"display_name": "React Frontend Developer",
"id": 89,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-frontend-developer",
"source": "db"
}
]
}
],
"input_skill": "RxJS",
"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": "Angular Router",
"alias_type": "CANONICAL",
"id": 1121,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 10",
"alias_type": "VERSION",
"id": 1129,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 11",
"alias_type": "VERSION",
"id": 1130,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 12",
"alias_type": "VERSION",
"id": 1131,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 13",
"alias_type": "VERSION",
"id": 1132,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 14",
"alias_type": "VERSION",
"id": 1133,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 15",
"alias_type": "VERSION",
"id": 1134,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 16",
"alias_type": "VERSION",
"id": 1135,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 17",
"alias_type": "VERSION",
"id": 1136,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 2",
"alias_type": "VERSION",
"id": 1122,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 4",
"alias_type": "VERSION",
"id": 1123,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 5",
"alias_type": "VERSION",
"id": 1124,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 6",
"alias_type": "VERSION",
"id": 1125,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 7",
"alias_type": "VERSION",
"id": 1126,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 8",
"alias_type": "VERSION",
"id": 1127,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Angular 9",
"alias_type": "VERSION",
"id": 1128,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "AngularJS Router",
"alias_type": "VERSION",
"id": 1137,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 1",
"alias_type": "VERSION",
"id": 3274,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 1 router",
"alias_type": "VERSION",
"id": 4031,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 1.x",
"alias_type": "VERSION",
"id": 3293,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 10",
"alias_type": "VERSION",
"id": 3283,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 10 router",
"alias_type": "VERSION",
"id": 4040,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 11",
"alias_type": "VERSION",
"id": 3284,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 11 router",
"alias_type": "VERSION",
"id": 4041,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 12",
"alias_type": "VERSION",
"id": 3285,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 12 router",
"alias_type": "VERSION",
"id": 4042,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 13",
"alias_type": "VERSION",
"id": 3286,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 13 router",
"alias_type": "VERSION",
"id": 4043,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 14",
"alias_type": "VERSION",
"id": 3287,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 14 router",
"alias_type": "VERSION",
"id": 4044,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 15",
"alias_type": "VERSION",
"id": 3288,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 15 router",
"alias_type": "VERSION",
"id": 4045,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 16",
"alias_type": "VERSION",
"id": 3289,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 16 router",
"alias_type": "VERSION",
"id": 4046,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 17",
"alias_type": "VERSION",
"id": 3290,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 17 router",
"alias_type": "VERSION",
"id": 4047,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 18",
"alias_type": "VERSION",
"id": 3291,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 18 router",
"alias_type": "VERSION",
"id": 4048,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 19",
"alias_type": "VERSION",
"id": 3292,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 2",
"alias_type": "VERSION",
"id": 3275,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 2 router",
"alias_type": "VERSION",
"id": 4032,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 4",
"alias_type": "VERSION",
"id": 3276,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 4 router",
"alias_type": "VERSION",
"id": 4033,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 5",
"alias_type": "VERSION",
"id": 3277,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 5 router",
"alias_type": "VERSION",
"id": 4034,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 6",
"alias_type": "VERSION",
"id": 3278,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 6 router",
"alias_type": "VERSION",
"id": 4035,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 7",
"alias_type": "VERSION",
"id": 3279,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 7 router",
"alias_type": "VERSION",
"id": 4036,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 8",
"alias_type": "VERSION",
"id": 3280,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 8 router",
"alias_type": "VERSION",
"id": 4037,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 9",
"alias_type": "VERSION",
"id": 3281,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular 9 router",
"alias_type": "VERSION",
"id": 4038,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular router",
"alias_type": "VERSION",
"id": 4029,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular router (angular 2+)",
"alias_type": "VERSION",
"id": 3294,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angular2 router",
"alias_type": "VERSION",
"id": 4030,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angularjs",
"alias_type": "VERSION",
"id": 3282,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "angularjs-router",
"alias_type": "VERSION",
"id": 4039,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "ng1",
"alias_type": "VERSION",
"id": 3272,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "ng2+",
"alias_type": "VERSION",
"id": 3273,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 7,
"display_name": "Angular Router",
"id": 637,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "LIBRARY",
"slug": "angular-router",
"sub_category_id": 489,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Angular Routing and Navigation",
"id": 304,
"rationale": "Browser-side navigation, route configuration, nested outlets, guards, resolvers, and URL-driven application flow. This cluster is coherent because Angular developers own how users move through feature areas and deep links.",
"slug": "angular-routing-and-navigation",
"source": "db"
},
"input_skill": "Angular Routes",
"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": "Client Routing and Navigation",
"id": 119,
"rationale": "Browser-side navigation, route matching, nested views, and URL-driven application flow. This cluster is coherent because frontend engineers own how users move through the app and how state maps to routes.",
"slug": "client-routing-and-navigation",
"source": "db"
},
"input_skill": "Angular Routes",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"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": "Screen Navigation and State",
"id": 83,
"rationale": "Patterns for moving users through app flows and keeping client state consistent across screens, refreshes, and app transitions. This is central to feature work because iOS engineers own the in-app request flow and UI logic.",
"slug": "screen-navigation-and-state",
"source": "db"
},
"input_skill": "Angular Routes",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"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": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "React Native Developer",
"id": 73,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-native-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
]
}
],
"input_skill": "Angular Routes",
"matched_via": "embedding_alias",
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": null,
"source_tag": "db",
"was_in_llm_skills": true
},
{
"aliases_in_db": [],
"canonical": null,
"dimensions": [],
"input_skill": "Google Maps",
"matched_via": null,
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": {
"derived": {
"category": "Cloud Platforms",
"skill_nature": "PLATFORM",
"sub_category": "general",
"typical_lifespan": "MULTI_YEAR",
"version_strategy": "UNVERSIONED",
"volatility": "MEDIUM"
},
"enrichment": null,
"keep_log": [],
"locked_dimensions": [],
"merge_log": [],
"placed": null,
"relationships": null,
"skill_id": "google-maps",
"split_log": [],
"typed": null,
"warnings": []
},
"source_tag": "llm",
"was_in_llm_skills": true
},
{
"aliases_in_db": [],
"canonical": null,
"dimensions": [],
"input_skill": "Multi-tenant Architecture",
"matched_via": null,
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": {
"derived": {
"category": "Concepts",
"skill_nature": "CONCEPT",
"sub_category": "general",
"typical_lifespan": "MULTI_YEAR",
"version_strategy": "UNVERSIONED",
"volatility": "MEDIUM"
},
"enrichment": null,
"keep_log": [],
"locked_dimensions": [],
"merge_log": [],
"placed": null,
"relationships": null,
"skill_id": "multi-tenant-architecture",
"split_log": [],
"typed": null,
"warnings": []
},
"source_tag": "llm",
"was_in_llm_skills": true
}
],
"unmatched_skills": [
"Service Providers",
"Artisan",
"Google Maps",
"Multi-tenant Architecture"
]
}
API 3 — final-role-output
{
"chosen_role": {
"display_name": "Fullstack Developer",
"id": 15,
"rationale": "Multi-alias tie (3 roles at 1.0) resolved by TIER_C_SKILL: Fullstack Developer",
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
"chosen_role_resolution": "in_db",
"final_input_skills": [
{
"skill": "Laravel",
"tag": "in_db"
},
{
"skill": "REST",
"tag": "in_db"
},
{
"skill": "Angular",
"tag": "in_db"
},
{
"skill": "MySQL",
"tag": "in_db"
},
{
"skill": "Service Providers",
"tag": "new"
},
{
"skill": "Artisan",
"tag": "new"
},
{
"skill": "OAuth2",
"tag": "in_db"
},
{
"skill": "SSO",
"tag": "in_db"
},
{
"skill": "Angular Material",
"tag": "in_db"
},
{
"skill": "Observables",
"tag": "in_db"
},
{
"skill": "RxJS",
"tag": "in_db"
},
{
"skill": "Angular Routes",
"tag": "in_db"
},
{
"skill": "Google Maps",
"tag": "new"
},
{
"skill": "Multi-tenant Architecture",
"tag": "new"
}
],
"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": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Web Application Frameworks",
"id": 2,
"rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
"slug": "web-application-frameworks",
"source": "db"
},
"dimension_id": 2,
"input_skill": "Laravel",
"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": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-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": "Java Backend Developer",
"id": 79,
"rationale": null,
"role_archetype": "Engineering",
"slug": "java-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 3798,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "API Design and Contracts",
"id": 3,
"rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
"slug": "api-design-and-contracts",
"source": "db"
},
"dimension_id": 3,
"input_skill": "REST",
"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": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 11,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "API Interface and Contract Design",
"id": 289,
"rationale": "Designing backend service interfaces and contracts that other systems consume, including endpoint and operation shape, request/response payloads, schema and validation, pagination, filtering, idempotency, versioning, status codes, and backward compatibility across REST, GraphQL, gRPC, and OpenAPI-based APIs.",
"slug": "api-interface-and-contract-design",
"source": "db"
},
"dimension_id": 289,
"input_skill": "REST",
"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": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 11,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Integration Protocols \u0026 Standards",
"id": 271,
"rationale": "Standards and protocols for integrating Pega applications.",
"slug": "integration-protocols-standards",
"source": "db"
},
"dimension_id": 271,
"input_skill": "REST",
"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": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 11,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Standards \u0026 Protocols Compliance",
"id": 452,
"rationale": "Encompasses key web and data standards, protocols, and compliance requirements relevant to Sitecore implementations.",
"slug": "standards-protocols-compliance",
"source": "db"
},
"dimension_id": 452,
"input_skill": "REST",
"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": 11,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"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": 15,
"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": 15,
"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": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"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": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Relational Data Modeling",
"id": 216,
"rationale": "Modeling and tuning relational persistence for backend features. PHP backend developers need this to shape schemas, indexes, transactions, and query-aware data structures that support application behavior.",
"slug": "relational-data-modeling",
"source": "db"
},
"dimension_id": 216,
"input_skill": "MySQL",
"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": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 17,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Relational Database Design",
"id": 4,
"rationale": "Modeling and operating relational persistence for backend services. Includes schema design, normalization, indexing, transactions, and query tuning for operational data stores.",
"slug": "relational-database-design",
"source": "db"
},
"dimension_id": 4,
"input_skill": "MySQL",
"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": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-engineer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 17,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Relational Database Usage",
"id": 371,
"rationale": "Working effectively with operational relational databases from Go backend services. This includes schema-aware querying, indexing awareness, transactions, and understanding how service code interacts with PostgreSQL or similar systems.",
"slug": "relational-database-usage",
"source": "db"
},
"dimension_id": 371,
"input_skill": "MySQL",
"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": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 17,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Authentication and Session Handling",
"id": 86,
"rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
"slug": "authentication-and-session-handling",
"source": "db"
},
"dimension_id": 86,
"input_skill": "OAuth2",
"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": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"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": "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": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1466,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Integration Protocols \u0026 Standards",
"id": 271,
"rationale": "Standards and protocols for integrating Pega applications.",
"slug": "integration-protocols-standards",
"source": "db"
},
"dimension_id": 271,
"input_skill": "OAuth2",
"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": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1466,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Security Architecture and Hardening",
"id": 75,
"rationale": "Design and implementation of secure baselines, control patterns, and environment hardening across systems. This cluster is central to the role because it turns policy and risk analysis into concrete technical safeguards.",
"slug": "security-architecture-and-hardening",
"source": "db"
},
"dimension_id": 75,
"input_skill": "OAuth2",
"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": "Cyber Security Engineer",
"id": 5,
"rationale": null,
"role_archetype": null,
"slug": "cybersecurity-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1466,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Identity and Access Architecture",
"id": 137,
"rationale": "Cloud identity patterns for authentication, authorization, federation, and privileged access boundaries. This is central to cloud governance because it defines who can administer and consume platform resources.",
"slug": "identity-and-access-architecture",
"source": "db"
},
"dimension_id": 137,
"input_skill": "SSO",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Skipped \u2014 no persistable v3 meta for new skill",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Cloud Architect",
"id": 9,
"rationale": null,
"role_archetype": null,
"slug": "cloud-architect",
"source": "db"
},
{
"display_name": "Cloud Security Engineer",
"id": 23,
"rationale": null,
"role_archetype": null,
"slug": "cloud-security-engineer",
"source": "db"
}
],
"skill_dimension_saved": false,
"skill_id": null,
"skill_tag": "new",
"skipped_reason": "skill_not_in_db_v3_proposed"
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Angular Material and UI Kits",
"id": 308,
"rationale": "Reusable UI component libraries and design-system implementations used to accelerate Angular feature delivery. This cluster is coherent because Angular developers often assemble screens from standardized controls and patterns.",
"slug": "angular-material-and-ui-kits",
"source": "db"
},
"dimension_id": 308,
"input_skill": "Angular Material",
"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": 2667,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "RxJS and Reactive Programming",
"id": 306,
"rationale": "Reactive composition patterns used to model asynchronous UI behavior, event streams, and data flows in Angular. This is a distinct cluster because Angular heavily relies on observables for component and service coordination.",
"slug": "rxjs-and-reactive-programming",
"source": "db"
},
"dimension_id": 306,
"input_skill": "Observables",
"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": 2654,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "RxJS and Reactive Programming",
"id": 306,
"rationale": "Reactive composition patterns used to model asynchronous UI behavior, event streams, and data flows in Angular. This is a distinct cluster because Angular heavily relies on observables for component and service coordination.",
"slug": "rxjs-and-reactive-programming",
"source": "db"
},
"dimension_id": 306,
"input_skill": "RxJS",
"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": 2635,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "State Management Patterns",
"id": 116,
"rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
"slug": "state-management-patterns",
"source": "db"
},
"dimension_id": 116,
"input_skill": "RxJS",
"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"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Ionic Developer",
"id": 434,
"rationale": null,
"role_archetype": null,
"slug": "ionic-developer",
"source": "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": 2635,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Angular Routing and Navigation",
"id": 304,
"rationale": "Browser-side navigation, route configuration, nested outlets, guards, resolvers, and URL-driven application flow. This cluster is coherent because Angular developers own how users move through feature areas and deep links.",
"slug": "angular-routing-and-navigation",
"source": "db"
},
"dimension_id": 304,
"input_skill": "Angular Routes",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Skipped \u2014 no persistable v3 meta for new skill",
"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": false,
"skill_id": null,
"skill_tag": "new",
"skipped_reason": "skill_not_in_db_v3_proposed"
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Client Routing and Navigation",
"id": 119,
"rationale": "Browser-side navigation, route matching, nested views, and URL-driven application flow. This cluster is coherent because frontend engineers own how users move through the app and how state maps to routes.",
"slug": "client-routing-and-navigation",
"source": "db"
},
"dimension_id": 119,
"input_skill": "Angular Routes",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Skipped \u2014 no persistable v3 meta for new skill",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Frontend Developer",
"id": 7,
"rationale": null,
"role_archetype": null,
"slug": "frontend-engineer",
"source": "db"
},
{
"display_name": "Web Developer",
"id": 25,
"rationale": null,
"role_archetype": null,
"slug": "web-developer",
"source": "db"
}
],
"skill_dimension_saved": false,
"skill_id": null,
"skill_tag": "new",
"skipped_reason": "skill_not_in_db_v3_proposed"
},
{
"chosen_role_id": 15,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Screen Navigation and State",
"id": 83,
"rationale": "Patterns for moving users through app flows and keeping client state consistent across screens, refreshes, and app transitions. This is central to feature work because iOS engineers own the in-app request flow and UI logic.",
"slug": "screen-navigation-and-state",
"source": "db"
},
"dimension_id": 83,
"input_skill": "Angular Routes",
"llm_role": null,
"matched_chosen_role": true,
"outcome_line": "Skipped \u2014 no persistable v3 meta for new skill",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"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": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "React Native Developer",
"id": 73,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-native-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
],
"skill_dimension_saved": false,
"skill_id": null,
"skill_tag": "new",
"skipped_reason": "skill_not_in_db_v3_proposed"
}
],
"new_skills_created": 0,
"role_dimension_saved": 0,
"skill_dimension_saved": 0,
"skipped": 4
},
"planner_output": null,
"run_id": "c02f617e-22b1-4be7-b278-231e0664acc6"
}
LLM Calls
Every model call made for this run, in pipeline order. Click a card to see the model's response.