← Back to history

Pipeline run

52b74bb8-d35d-410d-a5c4-632497ba0304

Pipeline LLM cost (USD)
API 1: $0.0115 API 2: $0.0004 API 3: $0.0000 Total: $0.0119

Client output enrichment

v2 Skill cluster · Nature of work · AI index · Tech stack maturity · Evidence · KRA description
role baseline loaded sources · ai_index: jd · nature_of_work: jd · tech_stack_maturity: jd
Nature of work · API and service implementation
Build and evolve Java/Spring backend services, clarify requirements, make technical design decisions, and improve CI/quality practices. Day to day you’ll implement reactive REST APIs with Spring WebFlux/Security, persistence with JPA/PostgreSQL, tests, OAuth2 SSO, and related tooling like Docker/OpenShift, SonarQube, Kibana, and Elasticsearch.
"Develop new application"
Tech stack maturity
Mainstream Modern
The stack centers on widely adopted modern Java backend technologies like Spring Boot, Spring WebFlux, PostgreSQL, Docker, and OAuth2, indicating a current mainstream production environment without being primarily cloud-native or bleeding-edge.
AI index (0 = no AI use, 5 = totally AI-dependent · v2.1)
0.00 / 5
· Title match
· Has AI skill
· AI skill (primary)
· AI skill (secondary)
· On AI team
· Builds AI products
vocab breakdown (legacy)
Assistants (×1):
Frameworks (×2):
Models / concepts (×3):
Evidence — skills matched in JD (25)
Java Spring WebFlux RxJava Project Reactor REST Spring IoC Spring Boot Spring MVC Spring Security Spring Test Spring Data JPA OAuth2 SSO Hibernate PostgreSQL Lombok Liquibase Hazelcast MapStruct Docker OpenShift SonarQube Kibana Elasticsearch
Skill cluster (10 dimension groups, role-scoped)
ORMs and Data Access Layers
Spring Data JPA Hibernate
Web Application Frameworks
Spring WebFlux Spring Boot Spring MVC
API Design and Contracts
REST
Authentication and Authorization
Spring Security
Authentication and Session Handling
OAuth2
Deployment and Runtime Configuration
Docker
Programming Languages
Java
Relational Database Design
PostgreSQL
Search and Content Discovery
Elasticsearch
Cross-cutting / unaligned
RxJava Project Reactor Spring IoC Spring Test SSO Lombok Liquibase Hazelcast MapStruct OpenShift SonarQube Kibana
Show KRA description ↓
Develop new application Clarify requirements Make technical decisions Contribute to EngX practices to improve quality of the product and CI process Experience with Spring WebFlux (RxJava/Reactive Programming/Project Reactor) Familiarity with REST Services Skills in Spring IoC, Spring Boot, Spring MVC Spring Security skills Understanding and experience with Spring Test (Unit, MVC, JPA, Integration tests) Experience with Spring Data (JPA) Good knowledge of OAuth2 SSO Familiarity with Hibernate PostgreSQL experience English level - B2+ Lombok expertise Liquibase knowledge Hazelcast skills MapStruct experience Docker knowledge Skills in OpenShift Expertise in SonarQube Kibana experience Familiarity with Elasticsearch

Signals

Skill backend-engineer
0.44
Alias backend-engineer
1.00
KRA full-stack-engineer
0.41

Post-classification

Centroidupdated · n=1308
Alias collision log
New-role queue
New skills captured11
New KRA capturedyes

Captured for admin review

Project Reactor primary Backend Developer pending
Spring IoC primary Backend Developer pending
Spring Test primary Backend Developer pending
SSO primary Backend Developer pending
Lombok primary Backend Developer pending
Liquibase primary Backend Developer pending
Hazelcast primary Backend Developer pending
MapStruct primary Backend Developer pending
OpenShift primary Backend Developer pending
SonarQube primary Backend Developer pending
Kibana primary Backend Developer pending
R&R fragment (sim 0.00) Backend Developer pending

Develop new application Clarify requirements Make technical decisions Contribute to EngX practices to improve quality of the product and CI process Experience with Spring WebFlux (RxJava/Reactive Pro…

Status: completed Created: 2026-05-27T16:10:40.222257Z Updated: 2026-05-27T16:13:02.329833Z API 3 duration: 78437 ms
Flow Current 3-step pipeline

1 POST /skills/extract-from-jd

2 POST /skills/extract-details

3 POST /skills/final-role-output

Role Chosen role & resolution

Backend Developer

Java Backend Developer

sub-role · 0.99 domain · Software Engineering CASE DOMAIN

slug: backend-engineer · id: 1 · source: db · sub-role slug: java-backend-developer

Domain=Software Engineering → sub-role java-backend-developer; The JD is for a Java Spring backend role focused on application development, technical decisions, testing, security, databases, and deployment tooling.

Matched skills

JavaSpring WebFluxRxJavaProject ReactorREST ServicesSpring IoCSpring BootSpring MVCSpring SecuritySpring TestSpring Data (JPA)OAuth2 SSOHibernatePostgreSQLLombokLiquibaseHazelcastMapStructDockerOpenShift

Matched dimensions

Backend application developmentTechnical decision makingSpring-based service engineeringTesting and quality assuranceSecurity and authentication integrationDatabase and persistence engineeringCI/process improvementDeployment and observability tooling

Matched KRAs

Develop new applicationClarify requirementsMake technical decisionsContribute to EngX practices to improve qualityImprove the product and CI process

Resolution: in_db — role exists in library; skill↔dim and role↔dim links saved when applicable.

0
New skills
0
Skill↔dim saved
0
Role↔dim saved
1
Skipped

Job description

Welcome to EPAM Anywhere - a global job platform offering remote work opportunities for tech professionals. Join us to build a career around your lifestyle working on modern projects for global brands and exciting startups.

We are currently looking for a remote Senior Java Software Engineer with Spring WebFlux experience to join our team.

The main scope is development, implementation and enhancement of a brand-new application for HR management.

Responsibilities
Develop new applicationClarify requirementsMake technical decisionsContribute to EngX practices to improve quality of the product and CI process

Requirements
Experience with Spring WebFlux (RxJava/Reactive Programming/Project Reactor)Familiarity with REST ServicesSkills in Spring IoC, Spring Boot, Spring MVCSpring Security skillsUnderstanding and experience with Spring Test (Unit, MVC, JPA, Integration tests)Experience with Spring Data (JPA)Good knowledge of OAuth2 SSOFamiliarity with HibernatePostgreSQL experienceEnglish level - B2+

Nice to have
Lombok expertiseLiquibase knowledgeHazelcast skillsMapStruct experienceDocker knowledgeSkills in OpenShiftExpertise in SonarQubeKibana experienceFamiliarity with Elasticsearch

We offer
Insurance Coverage Paid Leaves – including maternity, bereavement, paternity, and special COVID-19 leaves. Financial assistance for medical crisis Retiral Benefits – VPF and NPS Customized Mindfulness and Wellness programs EPAM Hobby ClubsHybrid Work Model Soft loans to set up workspace at home Stable workload Relocation opportunities with ‘EPAM without Borders’ programCertification trainings for technical and soft skills Access to unlimited LinkedIn Learning platform Access to internal learning programs set up by world class trainers Community networking and idea creation platforms Mentorship programs Self-driven career progression tool

This is a remote position and we welcome applications from anywhere in India

Once you apply, you'll receive a confirmation email with a link to EPAM Anywhere platform. Sign up with this link to automate your prescreening, be able to monitor your application statuses, and enjoy a faster job application process.

We accept CVs only in English.

Please note that even though you are applying for this position, you may be offered other projects to join within EPAM Anywhere.

EPAM Anywhere is a part of EPAM Systems, Inc. (NYSE: EPAM). Since 1993, EPAM has leveraged its advanced software engineering heritage to become the foremost global digital transformation services provider.

Skills from this JD

Each row merges API 1 extraction, API 2 library match / v3 orchestration (dimensions + locked dims), and API 3 persistence tags.

Java Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Java id=1 · java

Aliases — catalog

  • Java (CANONICAL) primary
  • JDK (VERSION)
  • JDK 10 (VERSION)
  • JDK 11 (VERSION)
  • JDK 12 (VERSION)
  • JDK 13 (VERSION)
  • JDK 14 (VERSION)
  • JDK 15 (VERSION)
  • JDK 16 (VERSION)
  • JDK 17 (VERSION)
  • JDK 18 (VERSION)
  • JDK 19 (VERSION)
  • JDK 20 (VERSION)
  • JDK 21 (VERSION)
  • JDK 5 (VERSION)
  • JDK 6 (VERSION)
  • JDK 7 (VERSION)
  • JDK 8 (VERSION)
  • JDK 9 (VERSION)
  • Java 1.0 (VERSION)
  • Java 1.1 (VERSION)
  • Java 1.2 (VERSION)
  • Java 1.3 (VERSION)
  • Java 1.4 (VERSION)
  • Java 1.5 (VERSION)
  • Java 1.6 (VERSION)
  • Java 1.7 (VERSION)
  • Java 1.8 (VERSION)
  • Java 10 (VERSION)
  • Java 11 (VERSION)
  • Java 12 (VERSION)
  • Java 13 (VERSION)
  • Java 14 (VERSION)
  • Java 15 (VERSION)
  • Java 16 (VERSION)
  • Java 17 (VERSION)
  • Java 18 (VERSION)
  • Java 19 (VERSION)
  • Java 20 (VERSION)
  • Java 21 (VERSION)
  • Java 5 (VERSION)
  • Java 6 (VERSION)
  • Java 7 (VERSION)
  • Java 8 (VERSION)
  • Java 9 (VERSION)
  • Java11 (VERSION)
  • Java17 (VERSION)
  • Java21 (VERSION)
  • Java8 (VERSION)
  • OpenJDK 11 (VERSION)
  • OpenJDK 17 (VERSION)
  • OpenJDK 21 (VERSION)
  • OpenJDK 8 (VERSION)
  • java 11 (VERSION)
  • java 17 (VERSION)
  • java 21 (VERSION)
  • java 4 (VERSION)
  • java 5 (VERSION)
  • java 6 (VERSION)
  • java 7 (VERSION)
  • java 8 (VERSION)
  • java lts (VERSION)
  • java-11 (VERSION)
  • java-17 (VERSION)
  • java-21 (VERSION)
  • java-4 (VERSION)
  • java-5 (VERSION)
  • java-6 (VERSION)
  • java-7 (VERSION)
  • java-8 (VERSION)
  • java11 (VERSION)
  • java17 (VERSION)
  • java21 (VERSION)
  • java4 (VERSION)
  • java5 (VERSION)
  • java6 (VERSION)
  • java7 (VERSION)
  • java8 (VERSION)
  • jdk 11 (VERSION)
  • jdk 17 (VERSION)
  • jdk 21 (VERSION)
  • jdk 4 (VERSION)
  • jdk 5 (VERSION)
  • jdk 6 (VERSION)
  • jdk 7 (VERSION)
  • jdk 8 (VERSION)
  • jdk11 (VERSION)
  • jdk17 (VERSION)
  • jdk21 (VERSION)
  • jdk4 (VERSION)
  • jdk5 (VERSION)
  • jdk6 (VERSION)
  • jdk7 (VERSION)
  • jdk8 (VERSION)
  • jvm21 (VERSION)

Context tags (catalog)

APIs Apache Tomcat Concurrency Design patterns Garbage collection GraalVM Gradle Hibernate JDBC JDK JPA JUnit JVM Java 8 Java EE JavaFX Kafka Lambda expressions Maven Microservices Mockito Object-oriented REST RESTful SOAP Servlets Spring Spring Boot Tomcat microservices

Stored enrichment (catalog DB)

Category
Language
Sub-category
Programming Language
Vendor
Oracle
License
other_open
Year introduced
1995
Confidence
0.99
Version strategy
SEPARATE_ENTITY
Version tag
21

Maturity reasoning: Java is a hiring-pipeline staple with very high JD volume across enterprise backend, Android, and cloud roles; it remains widely supported by major vendors and frameworks like Spring.

Skill profile (library / DB)

Skill nature
LANGUAGE
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
6
Sub-category id
96
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Java Language and JVM Catalog dimension db id 279

    Library dimension (catalog)

    Roles linked in library: Java Backend Developer, Kotlin Backend Developer, Scala Backend Developer

  • Kotlin and Java Catalog dimension db id 161

    Library dimension (catalog)

    Roles linked in library: Android Developer

  • Native Mobile Languages Catalog dimension db id 274

    Library dimension (catalog)

    Roles linked in library: Native Mobile Developer

  • Pega Programming Languages & DSLs Catalog dimension db id 267

    Library dimension (catalog)

    Roles linked in library: Pega Developer

  • Programming Languages Catalog dimension db id 1

    Library dimension (catalog)

    Roles linked in library: Backend Developer, Fullstack Developer, Fullstack Developer

  • Programming Languages & DSLs Catalog dimension db id 475

    Library dimension (catalog)

    Roles linked in library: Engineering Manager

  • Programming Languages for Data Work Catalog dimension db id 21

    Library dimension (catalog)

    Roles linked in library: Data Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Java Language and JVM
java-language-and-jvm
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Kotlin and Java
kotlin-and-java
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Native Mobile Languages
native-mobile-languages
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Pega Programming Languages & DSLs
pega-programming-languages-dsls
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Programming Languages
programming-languages
Existing dimension (library) · Role↔dimension saved
Programming Languages & DSLs
programming-languages-dsls
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Programming Languages for Data Work
programming-languages-for-data-work
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Spring WebFlux Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Spring WebFlux id=2192 · spring-webflux

Aliases — catalog

  • Spring WebFlux (CANONICAL) primary

Context tags (catalog)

API gateway Flux Mono Project Reactor RESTful services Reactive Streams Server-Sent Events Spring Boot WebClient WebSocket annotation-based configuration asynchronous microservices non-blocking reactive programming

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Reactive Web Framework
Vendor
Pivotal Software
License
apache_2
Year introduced
2017
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: Common in Java backend JDs for reactive APIs and microservices; Spring’s docs and ecosystem position WebFlux as a mainstream option alongside Spring MVC, with steady GitHub and job-market presence.

Skill profile (library / DB)

Skill nature
FRAMEWORK
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
5
Sub-category id
1674
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
RxJava Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: RxJava id=1640 · rxjava

Aliases — catalog

  • RxJava (CANONICAL)
  • RxJava 2 (VERSION)
  • RxJava 3 (VERSION)
  • RxJava2 (VERSION)
  • RxJava3 (VERSION)
  • rxjava2 (VERSION)
  • rxjava3 (VERSION)

Context tags (catalog)

Android Asynchronous Backpressure Completable Event-driven Flowable Functional programming Kotlin Coroutines Observable Operators Reactive Streams Scheduler Single Stream processing Subject

Stored enrichment (catalog DB)

Category
Library
Sub-category
Reactive Programming Library
Vendor
Netflix
License
apache_2
Year introduced
2013
Confidence
0.98
Version strategy
SEPARATE_ENTITY
Version tag
3.x

Maturity reasoning: RxJava still appears in Android/Java job ads, but far less than Kotlin coroutines/Reactor; market demand is concentrated in legacy or reactive-heavy codebases rather than broad new-project adoption.

Skill profile (library / DB)

Skill nature
LIBRARY
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
7
Sub-category id
1235
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Kotlin and Java Catalog dimension db id 161

    Library dimension (catalog)

    Roles linked in library: Android Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Kotlin and Java
kotlin-and-java
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Project Reactor Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Reactive Programming
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
REST Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: REST id=11 · rest

Aliases — catalog

  • REST (CANONICAL) primary

Context tags (catalog)

API API design API versioning CRUD DELETE GET HATEOAS HTTP JSON OAuth OAuth2 OpenAPI POST PUT Postman RESTful Swagger URI Webhooks XML authentication client-server content negotiation endpoint endpoints middleware resource resource-oriented serialization stateless status codes versioning web services

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, 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: Engineering Manager, 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)
Spring IoC Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Web Frameworks
Sub-category
general
Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Spring Boot Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Spring Boot id=6 · spring-boot

Aliases — catalog

  • Spring Boot (CANONICAL) primary
  • SB2 (VERSION)
  • SB3 (VERSION)
  • Spring Boot 2 (VERSION)
  • Spring Boot 2.x (VERSION)
  • Spring Boot 3 (VERSION)
  • Spring Boot 3.x (VERSION)
  • boot2 (VERSION)
  • boot3 (VERSION)

Context tags (catalog)

Actuator Dependency Injection Docker Embedded Tomcat Gradle Hibernate JPA JUnit Java EE Kafka Kubernetes Maven Microservices REST APIs RESTful RESTful API Spring Cloud Spring Data Spring Data JPA Spring MVC Spring Security Thymeleaf WebFlux application.properties dependency injection microservices

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Backend Framework
Vendor
Pivotal Software
License
apache_2
Year introduced
2014
Confidence
0.99
Version strategy
SEPARATE_ENTITY
Version tag
3.x

Maturity reasoning: Spring Boot appears in a large volume of backend Java job descriptions and is the default Spring stack for new services; Spring’s own docs and ecosystem center on Boot for production apps.

Skill profile (library / DB)

Skill nature
FRAMEWORK
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
5
Sub-category id
3589
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Frameworks & Libraries Catalog dimension db id 360

    Library dimension (catalog)

    Roles linked in library: Drupal Dev, Engineering Manager

  • 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

  • Web Service Frameworks Catalog dimension db id 390

    Library dimension (catalog)

    Roles linked in library: Kotlin Backend Developer, Scala Backend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Frameworks & Libraries
frameworks-libraries
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Web Application Frameworks
web-application-frameworks
Existing dimension (library) · Role↔dimension saved
Web Service Frameworks
web-service-frameworks
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Spring MVC Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Spring MVC id=2191 · spring-mvc

Aliases — catalog

  • Spring MVC (CANONICAL) primary

Context tags (catalog)

API integration Aspect-Oriented Programming Dependency Injection Hibernate JSP Java EE MVC architecture Microservices Model-View-Controller RESTful Spring Boot Spring Data Spring Security Thymeleaf WebSocket

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Web Mvc Framework
Vendor
Pivotal Software
License
apache_2
Year introduced
2004
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: Spring MVC appears in many Java backend job descriptions and remains a standard part of the Spring ecosystem for web apps, with strong GitHub usage and ongoing Spring Framework support.

Skill profile (library / DB)

Skill nature
FRAMEWORK
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
5
Sub-category id
1680
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
Spring Security Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Spring Security id=2234 · spring-security

Aliases — catalog

  • Spring Security (CANONICAL) primary
  • Spring Security 4 (VERSION)
  • Spring Security 4.x (VERSION)
  • Spring Security 5 (VERSION)
  • Spring Security 5.x (VERSION)
  • Spring Security 6 (VERSION)
  • Spring Security 6.x (VERSION)
  • spring-security 5 (VERSION)
  • spring-security 6 (VERSION)

Context tags (catalog)

CSRF JWT LDAP OAuth2 RESTful services Spring Boot authentication authorization custom authentication custom security filter chain method security role-based access security configuration security context security filters web security

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Security Framework
Vendor
Pivotal Software
License
apache_2
Year introduced
2003
Confidence
0.96
Version strategy
SEPARATE_ENTITY
Version tag
6.x

Maturity reasoning: Commonly listed in Java/Spring backend job descriptions for authN/authZ, SSO, and OAuth2/OIDC; it remains the standard security layer in the Spring ecosystem rather than a niche add-on.

Skill profile (library / DB)

Skill nature
FRAMEWORK
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
5
Sub-category id
1677
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Authentication and Authorization Catalog dimension db id 6

    Library dimension (catalog)

    Roles linked in library: .NET Backend Developer, Backend Developer, Go Backend Developer, Java Backend Developer, Node.js Backend Developer, PHP Backend Developer, Python Backend Developer

  • Backend Authentication and Authorization Catalog dimension db id 386

    Library dimension (catalog)

    Roles linked in library: Kotlin Backend Developer, Ruby Backend Developer, Scala Backend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Authentication and Authorization
authentication-and-authorization
Existing dimension (library) · Role↔dimension saved
Backend Authentication and Authorization
backend-authentication-and-authorization
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Spring Test Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Testing Tools
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Spring Data Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Spring Data id=3557 · spring-data

Aliases — catalog

  • Spring Data (CANONICAL) primary

Context tags (catalog)

CRUD Hibernate JPA MongoDB Spring Boot Spring Data REST auditing criteria queries data mapping data sources pagination projection query methods repositories transaction management

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Data Access Framework
Vendor
Pivotal Software
License
apache_2
Year introduced
2011
Confidence
0.95
Version strategy
NOT_APPLICABLE

Maturity reasoning: Spring Data appears in many Java/Spring job descriptions and is a standard data-access layer in the Spring ecosystem, with broad adoption across enterprise backend roles.

Skill profile (library / DB)

Skill nature
FRAMEWORK
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
5
Sub-category id
1670
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • ORMs and Data Access Layers Catalog dimension db id 5

    Library dimension (catalog)

    Roles linked in library: .NET Backend Developer, Backend Developer, Fullstack Developer, Fullstack Developer, Java Backend Developer, Kotlin Backend Developer, Node.js Backend Developer, PHP Backend Developer, Python Backend Developer, Ruby Backend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
ORMs and Data Access Layers
orms-and-data-access-layers
Existing dimension (library) · Role↔dimension saved
JPA Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: JPA id=2196 · jpa

Aliases — catalog

  • JPA (CANONICAL) primary

Context tags (catalog)

Criteria API EntityManager Hibernate JPA provider JPQL ORM Spring Data JPA annotations caching cascading database migrations database schema fetch strategies lazy loading mapping persistence.xml repositories transactions

Stored enrichment (catalog DB)

Category
Standard
Sub-category
Persistence Specification
Vendor
Eclipse Foundation
License
other_open
Year introduced
2006
Confidence
0.90
Version strategy
NOT_APPLICABLE

Maturity reasoning: JPA appears frequently in Java backend job descriptions and remains the standard ORM/persistence spec in the Spring/Hibernate ecosystem, with no vendor sunset or replacement announced.

Skill profile (library / DB)

Skill nature
STANDARD
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
12
Sub-category id
3566
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Application ORM and Repository-Based Data Access Catalog dimension db id 459

    Library dimension (catalog)

    Roles linked in library: Scala Backend Developer

  • ORMs and Data Access Layers Catalog dimension db id 5

    Library dimension (catalog)

    Roles linked in library: .NET Backend Developer, Backend Developer, Fullstack Developer, Fullstack Developer, Java Backend Developer, Kotlin Backend Developer, Node.js Backend Developer, PHP Backend Developer, Python Backend Developer, Ruby Backend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Application ORM and Repository-Based Data Access
application-orm-and-repository-based-data-access
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
ORMs and Data Access Layers
orms-and-data-access-layers
Existing dimension (library) · Role↔dimension saved
OAuth2 Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: OAuth2 id=1466 · oauth2

Aliases — catalog

  • OAuth2 (CANONICAL) primary

Context tags (catalog)

Bearer token Bearer_token JWT OAuth2.0 OAuth2_server PKCE access token access_token authorization code authorization server authorization_code authorization_server client credentials client_credentials grant types grant_type implicit flow implicit_grant redirect URI redirect_uri refresh token refresh_token resource owner resource_owner scope state parameter token endpoint token_endpoint

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 skipped (dimension not under chosen role)
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)
SSO Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: SSO federation id=745 · sso-federation

Aliases — catalog

  • SSO federation (CANONICAL) primary

Context tags (catalog)

ADFS Azure AD IdP JWT OAuth 2.0 Okta OpenID Connect SAML SCIM SP assertion claims mapping federated identity metadata exchange single sign-on

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
Hibernate Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Hibernate id=21 · hibernate

Aliases — catalog

  • Hibernate (CANONICAL) primary

Context tags (catalog)

C3P0 Criteria API EntityManager HQL Hibernate Validator JPA JPQL ORM SQL Spring Spring Data Spring Data JPA annotations caching cascade criteria criteria API database dialect entity fetching first-level cache flush lazy loading mapping mapping files mappings merge persistence persistence context second-level cache session session factory transaction transaction management transactions

Stored enrichment (catalog DB)

Category
Library
Sub-category
Orm Library
Vendor
Red Hat
License
gpl_v2
Year introduced
2001
Confidence
0.98
Version strategy
NOT_APPLICABLE

Maturity reasoning: Hibernate remains a common Java ORM in enterprise job postings and is still widely used in Spring/JPA 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
39
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Application ORM and Repository-Based Data Access Catalog dimension db id 459

    Library dimension (catalog)

    Roles linked in library: Scala Backend Developer

  • ORMs and Data Access Layers Catalog dimension db id 5

    Library dimension (catalog)

    Roles linked in library: .NET Backend Developer, Backend Developer, Fullstack Developer, Fullstack Developer, Java Backend Developer, Kotlin Backend Developer, Node.js Backend Developer, PHP Backend Developer, Python Backend Developer, Ruby Backend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Application ORM and Repository-Based Data Access
application-orm-and-repository-based-data-access
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
ORMs and Data Access Layers
orms-and-data-access-layers
Existing dimension (library) · Role↔dimension saved
PostgreSQL Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: PostgreSQL id=16 · postgresql

Aliases — catalog

  • PostgreSQL (CANONICAL) primary
  • PG 13 (VERSION)
  • PG 14 (VERSION)
  • PG 15 (VERSION)
  • PG 16 (VERSION)
  • PostgreSQL 13 (VERSION)
  • PostgreSQL 14 (VERSION)
  • PostgreSQL 15 (VERSION)
  • PostgreSQL 16 (VERSION)
  • Postgres 13 (VERSION)
  • Postgres 14 (VERSION)
  • Postgres 15 (VERSION)
  • Postgres 16 (VERSION)
  • pg10 (VERSION)
  • pg11 (VERSION)
  • pg12 (VERSION)
  • pg13 (VERSION)
  • pg14 (VERSION)
  • pg15 (VERSION)
  • pg16 (VERSION)
  • postgres (VERSION)
  • postgresql 10 (VERSION)
  • postgresql 11 (VERSION)
  • postgresql 12 (VERSION)
  • postgresql 13 (VERSION)
  • postgresql 14 (VERSION)
  • postgresql 15 (VERSION)
  • postgresql 16 (VERSION)
  • postgresql-16 (VERSION)
  • postgresql10 (VERSION)
  • postgresql11 (VERSION)
  • postgresql12 (VERSION)
  • postgresql13 (VERSION)
  • postgresql14 (VERSION)
  • postgresql15 (VERSION)
  • postgresql16 (VERSION)

Context tags (catalog)

ACID EXPLAIN JSONB PL/pgSQL PostGIS SQL VACUUM backup data integrity database migration extensions indexes indexing joins migration partitioning performance tuning pgAdmin query optimization replication schema stored procedures table partitioning transaction transactions triggers views

Stored enrichment (catalog DB)

Category
Datastore
Sub-category
Relational Database
Vendor
PostgreSQL Global Development Group
License
other_open
Year introduced
1996
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: PostgreSQL appears in a large share of backend/data engineering job postings and is a default managed option across AWS RDS, GCP Cloud SQL, and Azure Database, indicating broad hiring-pipeline adoption.

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 skipped (dimension not under chosen role)
Relational Database Design
relational-database-design
Existing dimension (library) · Role↔dimension saved
Relational Database Usage
relational-database-usage
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Lombok Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Java Libraries
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Liquibase Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Database Tools
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Hazelcast Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Distributed Caching
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
MapStruct Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Java Libraries
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Docker Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Docker id=61 · docker

Aliases — catalog

  • Docker (CANONICAL) primary

Context tags (catalog)

CI/CD Compose DevOps Docker Compose Docker Swarm Dockerfile Kubernetes build pipeline container container lifecycle container orchestration container registry container security containerization containers image image registry images immutable infrastructure lightweight virtualization microservices networking orchestration port mapping registry scalability service discovery swarm volume volume management

Stored enrichment (catalog DB)

Category
Tool
Sub-category
Containerization Tool
Vendor
Docker, Inc.
License
apache_2
Year introduced
2013
Confidence
0.98
Version strategy
NOT_APPLICABLE

Maturity reasoning: Docker is a hiring-pipeline staple: it appears in many DevOps, backend, and platform JDs, and remains a standard containerization tool alongside Kubernetes in production stacks.

Skill profile (library / DB)

Skill nature
TOOL
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
13
Sub-category id
63
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Containerization and Image Builds Catalog dimension db id 152

    Library dimension (catalog)

    Roles linked in library: DevOps Engineer

  • Deployment and Cloud Platforms Catalog dimension db id 418

    Library dimension (catalog)

    Roles linked in library: Ruby Backend Developer

  • Deployment and Runtime Configuration Catalog dimension db id 13

    Library dimension (catalog)

    Roles linked in library: .NET Backend Developer, Backend Developer, Go Backend Developer, PHP Backend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Containerization and Image Builds
containerization-and-image-builds
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Deployment and Cloud Platforms
deployment-and-cloud-platforms
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Deployment and Runtime Configuration
deployment-and-runtime-configuration
Existing dimension (library) · Role↔dimension saved
OpenShift Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Container Orchestration
Sub-category
general
Skill nature
PLATFORM
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
SonarQube Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Code Quality Tools
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Kibana Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).

Derived legacy fields
Category
Monitoring Tools
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Elasticsearch Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Elasticsearch id=3171 · elasticsearch

Aliases — catalog

  • Elasticsearch (CANONICAL) primary
  • ES (VERSION)
  • ElasticSearch (VERSION)
  • Elasticsearch 6 (VERSION)
  • Elasticsearch 6.x (VERSION)
  • Elasticsearch 7 (VERSION)
  • Elasticsearch 7.x (VERSION)
  • Elasticsearch 8 (VERSION)
  • Elasticsearch 8.x (VERSION)
  • Elasticsearch v6 (VERSION)
  • Elasticsearch v7 (VERSION)
  • Elasticsearch v8 (VERSION)

Context tags (catalog)

ELK stack JSON Kibana Logstash Lucene REST API RESTful API aggregation cluster management data visualization document store full-text search indexing performance tuning query DSL real-time search replication scalability search analytics search relevance sharding

Stored enrichment (catalog DB)

Category
Datastore
Sub-category
Search Datastore
Vendor
Elastic NV
License
apache_2
Year introduced
2010
Confidence
0.93
Version strategy
SEPARATE_ENTITY
Version tag
8.x

Maturity reasoning: Commonly listed in job descriptions for search/log analytics roles and widely deployed in production; Elastic’s docs and ecosystem show sustained adoption rather than sunset or replacement.

Skill profile (library / DB)

Skill nature
TOOL
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
3
Sub-category id
2925
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Magento Search and Indexing Catalog dimension db id 403

    Library dimension (catalog)

    Roles linked in library: Magento Dev

  • Search and Content Discovery Catalog dimension db id 356

    Library dimension (catalog)

    Roles linked in library: Drupal Dev, Sitecore Dev

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Magento Search and Indexing
magento-search-and-indexing
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Search and Content Discovery
search-and-content-discovery
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)

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
Java in_db
Java Language and JVM
java-language-and-jvm
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Java in_db
Kotlin and Java
kotlin-and-java
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Java in_db
Native Mobile Languages
native-mobile-languages
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Java in_db
Pega Programming Languages & DSLs
pega-programming-languages-dsls
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Java in_db
Programming Languages
programming-languages
Existing dimension (library) · Role↔dimension saved
Java in_db
Programming Languages & DSLs
programming-languages-dsls
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Java in_db
Programming Languages for Data Work
programming-languages-for-data-work
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Spring WebFlux in_db
Web Application Frameworks
web-application-frameworks
Existing dimension (library) · Role↔dimension saved
RxJava in_db
Kotlin and Java
kotlin-and-java
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
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)
Spring Boot in_db
Frameworks & Libraries
frameworks-libraries
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Spring Boot in_db
Web Application Frameworks
web-application-frameworks
Existing dimension (library) · Role↔dimension saved
Spring Boot in_db
Web Service Frameworks
web-service-frameworks
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Spring MVC in_db
Web Application Frameworks
web-application-frameworks
Existing dimension (library) · Role↔dimension saved
Spring Security in_db
Authentication and Authorization
authentication-and-authorization
Existing dimension (library) · Role↔dimension saved
Spring Security in_db
Backend Authentication and Authorization
backend-authentication-and-authorization
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Spring Data in_db
ORMs and Data Access Layers
orms-and-data-access-layers
Existing dimension (library) · Role↔dimension saved
JPA in_db
Application ORM and Repository-Based Data Access
application-orm-and-repository-based-data-access
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
JPA in_db
ORMs and Data Access Layers
orms-and-data-access-layers
Existing dimension (library) · Role↔dimension saved
OAuth2 in_db
Authentication and Session Handling
authentication-and-session-handling
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
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
Hibernate in_db
Application ORM and Repository-Based Data Access
application-orm-and-repository-based-data-access
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Hibernate in_db
ORMs and Data Access Layers
orms-and-data-access-layers
Existing dimension (library) · Role↔dimension saved
PostgreSQL in_db
Relational Data Modeling
relational-data-modeling
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
PostgreSQL in_db
Relational Database Design
relational-database-design
Existing dimension (library) · Role↔dimension saved
PostgreSQL in_db
Relational Database Usage
relational-database-usage
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Docker in_db
Containerization and Image Builds
containerization-and-image-builds
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Docker in_db
Deployment and Cloud Platforms
deployment-and-cloud-platforms
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Docker in_db
Deployment and Runtime Configuration
deployment-and-runtime-configuration
Existing dimension (library) · Role↔dimension saved
Elasticsearch in_db
Magento Search and Indexing
magento-search-and-indexing
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Elasticsearch in_db
Search and Content Discovery
search-and-content-discovery
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)

Library artifacts (this run)

Kind Detail DB id
canonical_skill_proposed Project Reactor | type=Reactive Programming subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Spring IoC | type=Web Frameworks subtype=general nature=CONCEPT lifespan=EVERGREEN
canonical_skill_proposed Spring Test | type=Testing Tools subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Lombok | type=Java Libraries subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Liquibase | type=Database Tools subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Hazelcast | type=Distributed Caching subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed MapStruct | type=Java Libraries subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed OpenShift | type=Container Orchestration subtype=general nature=PLATFORM lifespan=MULTI_YEAR
canonical_skill_proposed SonarQube | type=Code Quality Tools subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Kibana | type=Monitoring Tools subtype=general nature=TOOL lifespan=MULTI_YEAR
dimension_skill_link_proposed SSO ↔ Identity and Access Architecture
nano JD Parser — gpt-4.1-nano click to toggle
RoleSenior Java Software Engineer
CompanyEPAM Systems, Inc.
DomainIT Services & Consulting
Location India (remote)
JD type pass
Show raw JSON
{
  "JD_type": "pass",
  "about_company": {
    "source_marker": {
      "first_5_words": "EPAM Anywhere is a part",
      "last_5_words": "global digital transformation services provider."
    },
    "text": "EPAM Anywhere is a part of EPAM Systems, Inc. (NYSE: EPAM). Since 1993, EPAM has leveraged its advanced software engineering heritage to become the foremost global digital transformation services provider.",
    "word_count": 36
  },
  "certifications": [],
  "company_name": "EPAM Systems, Inc.",
  "ctc": null,
  "domain": {
    "primary": {
      "aliases": [
        "ITES",
        "BPO",
        "Tech Consulting"
      ],
      "domain": "IT Services \u0026 Consulting"
    },
    "secondary": null
  },
  "education": [],
  "experience": {
    "max": null,
    "min": null,
    "raw": null
  },
  "job_locations": [
    {
      "aliases": [],
      "city": null,
      "country": "India",
      "state": null,
      "work_mode": "remote"
    }
  ],
  "role": "Senior Java Software Engineer",
  "role_aliases": [
    "Java Developer",
    "Java Engineer",
    "Software Engineer"
  ],
  "role_archetype": "Engineering",
  "roles_and_responsibilities": [
    {
      "bullet_count": 4,
      "heading": "Responsibilities",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "Develop new application\nClarify requirements",
        "last_5_words": "quality of the product and CI process"
      },
      "text": "Develop new application\nClarify requirements\nMake technical decisions\nContribute to EngX practices to improve quality of the product and CI process",
      "word_count": 24
    },
    {
      "bullet_count": 10,
      "heading": "Requirements",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "Experience with Spring WebFlux (RxJava/Reactive",
        "last_5_words": "level - B2+"
      },
      "text": "Experience with Spring WebFlux (RxJava/Reactive Programming/Project Reactor)\nFamiliarity with REST Services\nSkills in Spring IoC, Spring Boot, Spring MVC\nSpring Security skills\nUnderstanding and experience with Spring Test (Unit, MVC, JPA, Integration tests)\nExperience with Spring Data (JPA)\nGood knowledge of OAuth2 SSO\nFamiliarity with Hibernate\nPostgreSQL experience\nEnglish level - B2+",
      "word_count": 81
    },
    {
      "bullet_count": 9,
      "heading": "Nice to have",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "Lombok expertise\nLiquibase knowledge\nHazelcast",
        "last_5_words": "Familiarity with Elasticsearch"
      },
      "text": "Lombok expertise\nLiquibase knowledge\nHazelcast skills\nMapStruct experience\nDocker knowledge\nSkills in OpenShift\nExpertise in SonarQube\nKibana experience\nFamiliarity with Elasticsearch",
      "word_count": 36
    }
  ],
  "urls": []
}
API 1 — extract-from-jd click to toggle
{
  "final_skills": [
    {
      "is_primary": true,
      "skill_name": "Java"
    },
    {
      "is_primary": true,
      "skill_name": "Spring WebFlux"
    },
    {
      "is_primary": true,
      "skill_name": "RxJava"
    },
    {
      "is_primary": true,
      "skill_name": "Project Reactor"
    },
    {
      "is_primary": true,
      "skill_name": "REST"
    },
    {
      "is_primary": true,
      "skill_name": "Spring IoC"
    },
    {
      "is_primary": true,
      "skill_name": "Spring Boot"
    },
    {
      "is_primary": true,
      "skill_name": "Spring MVC"
    },
    {
      "is_primary": true,
      "skill_name": "Spring Security"
    },
    {
      "is_primary": true,
      "skill_name": "Spring Test"
    },
    {
      "is_primary": true,
      "skill_name": "Spring Data"
    },
    {
      "is_primary": true,
      "skill_name": "JPA"
    },
    {
      "is_primary": true,
      "skill_name": "OAuth2"
    },
    {
      "is_primary": true,
      "skill_name": "SSO"
    },
    {
      "is_primary": true,
      "skill_name": "Hibernate"
    },
    {
      "is_primary": true,
      "skill_name": "PostgreSQL"
    },
    {
      "is_primary": true,
      "skill_name": "Lombok"
    },
    {
      "is_primary": true,
      "skill_name": "Liquibase"
    },
    {
      "is_primary": true,
      "skill_name": "Hazelcast"
    },
    {
      "is_primary": true,
      "skill_name": "MapStruct"
    },
    {
      "is_primary": true,
      "skill_name": "Docker"
    },
    {
      "is_primary": true,
      "skill_name": "OpenShift"
    },
    {
      "is_primary": true,
      "skill_name": "SonarQube"
    },
    {
      "is_primary": true,
      "skill_name": "Kibana"
    },
    {
      "is_primary": true,
      "skill_name": "Elasticsearch"
    }
  ],
  "jd_role": {
    "display_name": "Senior Java Software Engineer",
    "rationale": null,
    "role_aliases": [
      "Java Developer",
      "Java Engineer",
      "Software Engineer"
    ],
    "role_archetype": "Engineering",
    "slug": ""
  },
  "nano_parsed": {
    "JD_type": "pass",
    "about_company": {
      "source_marker": {
        "first_5_words": "EPAM Anywhere is a part",
        "last_5_words": "global digital transformation services provider."
      },
      "text": "EPAM Anywhere is a part of EPAM Systems, Inc. (NYSE: EPAM). Since 1993, EPAM has leveraged its advanced software engineering heritage to become the foremost global digital transformation services provider.",
      "word_count": 36
    },
    "certifications": [],
    "company_name": "EPAM Systems, Inc.",
    "ctc": null,
    "domain": {
      "primary": {
        "aliases": [
          "ITES",
          "BPO",
          "Tech Consulting"
        ],
        "domain": "IT Services \u0026 Consulting"
      },
      "secondary": null
    },
    "education": [],
    "experience": {
      "max": null,
      "min": null,
      "raw": null
    },
    "job_locations": [
      {
        "aliases": [],
        "city": null,
        "country": "India",
        "state": null,
        "work_mode": "remote"
      }
    ],
    "role": "Senior Java Software Engineer",
    "role_aliases": [
      "Java Developer",
      "Java Engineer",
      "Software Engineer"
    ],
    "role_archetype": "Engineering",
    "roles_and_responsibilities": [
      {
        "bullet_count": 4,
        "heading": "Responsibilities",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "Develop new application\nClarify requirements",
          "last_5_words": "quality of the product and CI process"
        },
        "text": "Develop new application\nClarify requirements\nMake technical decisions\nContribute to EngX practices to improve quality of the product and CI process",
        "word_count": 24
      },
      {
        "bullet_count": 10,
        "heading": "Requirements",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "Experience with Spring WebFlux (RxJava/Reactive",
          "last_5_words": "level - B2+"
        },
        "text": "Experience with Spring WebFlux (RxJava/Reactive Programming/Project Reactor)\nFamiliarity with REST Services\nSkills in Spring IoC, Spring Boot, Spring MVC\nSpring Security skills\nUnderstanding and experience with Spring Test (Unit, MVC, JPA, Integration tests)\nExperience with Spring Data (JPA)\nGood knowledge of OAuth2 SSO\nFamiliarity with Hibernate\nPostgreSQL experience\nEnglish level - B2+",
        "word_count": 81
      },
      {
        "bullet_count": 9,
        "heading": "Nice to have",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "Lombok expertise\nLiquibase knowledge\nHazelcast",
          "last_5_words": "Familiarity with Elasticsearch"
        },
        "text": "Lombok expertise\nLiquibase knowledge\nHazelcast skills\nMapStruct experience\nDocker knowledge\nSkills in OpenShift\nExpertise in SonarQube\nKibana experience\nFamiliarity with Elasticsearch",
        "word_count": 36
      }
    ],
    "urls": []
  },
  "rejected": false,
  "rejection_reason": null,
  "run_id": "52b74bb8-d35d-410d-a5c4-632497ba0304",
  "stage3_signals": {
    "alias_found": true,
    "alias_match_roles": [
      {
        "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": "Java Backend Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 79,
        "score": 1.0,
        "slug": "java-backend-developer",
        "total_count": null
      }
    ],
    "kra_match_roles": [
      {
        "display_name": "Fullstack Developer",
        "kra_matches": [
          {
            "kra_text": "Delivers features through CI/CD pipelines using automated tests, staged rollouts, feature flags, and incremental deployments.",
            "sentence": "Contribute to EngX practices to improve quality of the product and CI process",
            "similarity": 0.4334
          },
          {
            "kra_text": "Writes application logic across the presentation layer, service layer, and data access layer of web applications following MVC or clean architecture patterns.",
            "sentence": "Skills in Spring IoC, Spring Boot, Spring MVC",
            "similarity": 0.4261
          },
          {
            "kra_text": "Writes application logic across the presentation layer, service layer, and data access layer of web applications following MVC or clean architecture patterns.",
            "sentence": "Understanding and experience with Spring Test (Unit, MVC, JPA, Integration tests)",
            "similarity": 0.3853
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 15,
        "score": 0.4149,
        "slug": "full-stack-engineer",
        "total_count": null
      },
      {
        "display_name": "Pega Developer",
        "kra_matches": [
          {
            "kra_text": "flow, rule, and integration testing",
            "sentence": "Understanding and experience with Spring Test (Unit, MVC, JPA, Integration tests)",
            "similarity": 0.5185
          },
          {
            "kra_text": "user interaction design and refinement",
            "sentence": "Contribute to EngX practices to improve quality of the product and CI process",
            "similarity": 0.3719
          },
          {
            "kra_text": "flow, rule, and integration testing",
            "sentence": "Skills in Spring IoC, Spring Boot, Spring MVC",
            "similarity": 0.341
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 24,
        "score": 0.4105,
        "slug": "pega-developer",
        "total_count": null
      },
      {
        "display_name": "React Native Developer",
        "kra_matches": [
          {
            "kra_text": "maintain code quality",
            "sentence": "Contribute to EngX practices to improve quality of the product and CI process",
            "similarity": 0.5039
          },
          {
            "kra_text": "integrate backend APIs",
            "sentence": "Understanding and experience with Spring Test (Unit, MVC, JPA, Integration tests)",
            "similarity": 0.3713
          },
          {
            "kra_text": "integrate backend APIs",
            "sentence": "Skills in Spring IoC, Spring Boot, Spring MVC",
            "similarity": 0.3274
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 73,
        "score": 0.4009,
        "slug": "react-native-developer",
        "total_count": null
      },
      {
        "display_name": "Go Backend Developer",
        "kra_matches": [
          {
            "kra_text": "code review and testing support",
            "sentence": "Understanding and experience with Spring Test (Unit, MVC, JPA, Integration tests)",
            "similarity": 0.4205
          },
          {
            "kra_text": "code review and testing support",
            "sentence": "Contribute to EngX practices to improve quality of the product and CI process",
            "similarity": 0.4093
          },
          {
            "kra_text": "service interface design",
            "sentence": "Skills in Spring IoC, Spring Boot, Spring MVC",
            "similarity": 0.3545
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 81,
        "score": 0.3947,
        "slug": "go-backend-developer",
        "total_count": null
      },
      {
        "display_name": "Angular Frontend Developer",
        "kra_matches": [
          {
            "kra_text": "collaboration with design and QA",
            "sentence": "Contribute to EngX practices to improve quality of the product and CI process",
            "similarity": 0.494
          },
          {
            "kra_text": "collaboration with design and QA",
            "sentence": "Understanding and experience with Spring Test (Unit, MVC, JPA, Integration tests)",
            "similarity": 0.3414
          },
          {
            "kra_text": "Angular component development",
            "sentence": "Skills in Spring IoC, Spring Boot, Spring MVC",
            "similarity": 0.3354
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 90,
        "score": 0.3903,
        "slug": "angular-frontend-developer",
        "total_count": null
      }
    ],
    "skill_match_roles": [
      {
        "display_name": "Backend Developer",
        "kra_matches": null,
        "matched_count": 11,
        "matched_skills": [
          "Docker",
          "Hibernate",
          "JPA",
          "Java",
          "PostgreSQL",
          "REST",
          "Spring Boot",
          "Spring Data",
          "Spring MVC",
          "Spring Security",
          "Spring WebFlux"
        ],
        "role_id": 1,
        "score": 0.44,
        "slug": "backend-engineer",
        "total_count": 25
      },
      {
        "display_name": "Fullstack Developer",
        "kra_matches": null,
        "matched_count": 10,
        "matched_skills": [
          "Hibernate",
          "JPA",
          "Java",
          "OAuth2",
          "PostgreSQL",
          "REST",
          "Spring Boot",
          "Spring Data",
          "Spring MVC",
          "Spring WebFlux"
        ],
        "role_id": 15,
        "score": 0.4,
        "slug": "full-stack-engineer",
        "total_count": 25
      },
      {
        "display_name": "PHP Backend Developer",
        "kra_matches": null,
        "matched_count": 10,
        "matched_skills": [
          "Docker",
          "Hibernate",
          "JPA",
          "PostgreSQL",
          "REST",
          "Spring Boot",
          "Spring Data",
          "Spring MVC",
          "Spring Security",
          "Spring WebFlux"
        ],
        "role_id": 86,
        "score": 0.4,
        "slug": "php-backend-developer",
        "total_count": 25
      },
      {
        "display_name": "Python Backend Developer",
        "kra_matches": null,
        "matched_count": 9,
        "matched_skills": [
          "Hibernate",
          "JPA",
          "PostgreSQL",
          "REST",
          "Spring Boot",
          "Spring Data",
          "Spring MVC",
          "Spring Security",
          "Spring WebFlux"
        ],
        "role_id": 80,
        "score": 0.36,
        "slug": "python-backend-developer",
        "total_count": 25
      },
      {
        "display_name": "Node.js Backend Developer",
        "kra_matches": null,
        "matched_count": 9,
        "matched_skills": [
          "Hibernate",
          "JPA",
          "PostgreSQL",
          "REST",
          "Spring Boot",
          "Spring Data",
          "Spring MVC",
          "Spring Security",
          "Spring WebFlux"
        ],
        "role_id": 82,
        "score": 0.36,
        "slug": "node-backend-developer",
        "total_count": 25
      }
    ]
  },
  "stage4_decision": {
    "alias_collision_detected": false,
    "case": "DOMAIN",
    "chosen_role": {
      "display_name": "Backend Developer",
      "kra_matches": null,
      "matched_count": null,
      "matched_skills": null,
      "role_id": 1,
      "score": 0.99,
      "slug": "backend-engineer",
      "total_count": null
    },
    "confidence": 0.99,
    "is_new_role": false,
    "llm2_fired": false,
    "llm2_reasoning": null,
    "matched_dimensions": [
      "Backend application development",
      "Technical decision making",
      "Spring-based service engineering",
      "Testing and quality assurance",
      "Security and authentication integration",
      "Database and persistence engineering",
      "CI/process improvement",
      "Deployment and observability tooling"
    ],
    "matched_kras": [
      "Develop new application",
      "Clarify requirements",
      "Make technical decisions",
      "Contribute to EngX practices to improve quality",
      "Improve the product and CI process"
    ],
    "matched_skills": [
      "Java",
      "Spring WebFlux",
      "RxJava",
      "Project Reactor",
      "REST Services",
      "Spring IoC",
      "Spring Boot",
      "Spring MVC",
      "Spring Security",
      "Spring Test",
      "Spring Data (JPA)",
      "OAuth2 SSO",
      "Hibernate",
      "PostgreSQL",
      "Lombok",
      "Liquibase",
      "Hazelcast",
      "MapStruct",
      "Docker",
      "OpenShift"
    ],
    "new_role_display_name": null,
    "new_role_slug": null,
    "queued": false,
    "reasoning": "Domain=Software Engineering \u2192 sub-role java-backend-developer; The JD is for a Java Spring backend role focused on application development, technical decisions, testing, security, databases, and deployment tooling.",
    "sub_role": {
      "confidence": 0.99,
      "display_name": "Java Backend Developer",
      "reasoning": "The JD is overwhelmingly Java-specific, centered on Spring Boot/WebFlux, Spring Security, JPA/Hibernate, and related Java ecosystem tools.",
      "role_id": 79,
      "slug": "java-backend-developer"
    }
  },
  "stage5_updates": {
    "centroid_n_after": 1308,
    "centroid_updated": true,
    "collision_log_id": null,
    "new_kra_attached": {
      "best_kra_similarity": 0.0,
      "queue_id": 1367,
      "r_and_r_preview": "Develop new application\nClarify requirements\nMake technical decisions\nContribute to EngX practices to improve quality of the product and CI process\n\nExperience with Spring WebFlux (RxJava/Reactive Pro",
      "role_display_name": "Backend Developer",
      "role_slug": "backend-engineer",
      "status": "pending"
    },
    "new_skills_attached": [
      {
        "is_primary": true,
        "queue_id": 18729,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Project Reactor",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18730,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Spring IoC",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18731,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Spring Test",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18732,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "SSO",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18733,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Lombok",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18734,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Liquibase",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18735,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Hazelcast",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18736,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "MapStruct",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18737,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "OpenShift",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18738,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "SonarQube",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 18739,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Kibana",
        "status": "pending"
      }
    ],
    "queue_entry_id": null,
    "v3_pipeline_triggered": false,
    "v3_role_slug": null,
    "v3_run_id": null
  }
}
API 2 — extract-details
{
  "alias_matches": [
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 1,
      "existing_alias_text": "Java",
      "input_term": "Java",
      "matched_canonical": {
        "category_id": 6,
        "display_name": "Java",
        "id": 1,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "java",
        "sub_category_id": 96,
        "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": 3401,
      "existing_alias_text": "Spring WebFlux",
      "input_term": "Spring WebFlux",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Spring WebFlux",
        "id": 2192,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-webflux",
        "sub_category_id": 1674,
        "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": 2604,
      "existing_alias_text": "RxJava",
      "input_term": "RxJava",
      "matched_canonical": {
        "category_id": 7,
        "display_name": "RxJava",
        "id": 1640,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LIBRARY",
        "slug": "rxjava",
        "sub_category_id": 1235,
        "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": 79,
      "existing_alias_text": "Spring Boot",
      "input_term": "Spring Boot",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Spring Boot",
        "id": 6,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-boot",
        "sub_category_id": 3589,
        "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": 3400,
      "existing_alias_text": "Spring MVC",
      "input_term": "Spring MVC",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Spring MVC",
        "id": 2191,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-mvc",
        "sub_category_id": 1680,
        "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": 3492,
      "existing_alias_text": "Spring Security",
      "input_term": "Spring Security",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Spring Security",
        "id": 2234,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-security",
        "sub_category_id": 1677,
        "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": 5123,
      "existing_alias_text": "Spring Data",
      "input_term": "Spring Data",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Spring Data",
        "id": 3557,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-data",
        "sub_category_id": 1670,
        "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": 3420,
      "existing_alias_text": "JPA",
      "input_term": "JPA",
      "matched_canonical": {
        "category_id": 12,
        "display_name": "JPA",
        "id": 2196,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "STANDARD",
        "slug": "jpa",
        "sub_category_id": 3566,
        "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": 149,
      "existing_alias_text": "Hibernate",
      "input_term": "Hibernate",
      "matched_canonical": {
        "category_id": 7,
        "display_name": "Hibernate",
        "id": 21,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LIBRARY",
        "slug": "hibernate",
        "sub_category_id": 39,
        "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": 121,
      "existing_alias_text": "PostgreSQL",
      "input_term": "PostgreSQL",
      "matched_canonical": {
        "category_id": 3,
        "display_name": "PostgreSQL",
        "id": 16,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "postgresql",
        "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": 198,
      "existing_alias_text": "Docker",
      "input_term": "Docker",
      "matched_canonical": {
        "category_id": 13,
        "display_name": "Docker",
        "id": 61,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "docker",
        "sub_category_id": 63,
        "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": 4648,
      "existing_alias_text": "Elasticsearch",
      "input_term": "Elasticsearch",
      "matched_canonical": {
        "category_id": 3,
        "display_name": "Elasticsearch",
        "id": 3171,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "elasticsearch",
        "sub_category_id": 2925,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    }
  ],
  "candidate_roles": [
    {
      "display_name": "Java Backend Developer",
      "id": 79,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "java-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": "Scala Backend Developer",
      "id": 87,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "scala-backend-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": "Pega Developer",
      "id": 24,
      "rationale": null,
      "role_archetype": null,
      "slug": "pega-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": "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": "Engineering Manager",
      "id": 121,
      "rationale": null,
      "role_archetype": null,
      "slug": "engineering-manager",
      "source": "db"
    },
    {
      "display_name": "Data Engineer",
      "id": 2,
      "rationale": null,
      "role_archetype": null,
      "slug": "data-engineer",
      "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": "Ruby Backend Developer",
      "id": 85,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "ruby-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Sitecore Dev",
      "id": 233,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "sitecore-dev",
      "source": "db"
    },
    {
      "display_name": "Drupal Dev",
      "id": 228,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "drupal-dev",
      "source": "db"
    },
    {
      "display_name": "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": "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": "DevOps Engineer",
      "id": 10,
      "rationale": null,
      "role_archetype": null,
      "slug": "devops-engineer",
      "source": "db"
    },
    {
      "display_name": "Magento Dev",
      "id": 231,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "magento-dev",
      "source": "db"
    }
  ],
  "chosen_role": {
    "display_name": "Backend Developer",
    "id": 1,
    "rationale": "Domain=Software Engineering \u2192 sub-role java-backend-developer; The JD is for a Java Spring backend role focused on application development, technical decisions, testing, security, databases, and deployment tooling.",
    "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"
  },
  "dimensions": [
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Java Language and JVM",
        "id": 279,
        "rationale": "Core Java implementation skills used to build backend service logic, utilities, and internal abstractions. This is the primary coding surface for the role and includes language features plus JVM behavior that affect correctness and maintainability.",
        "slug": "java-language-and-jvm",
        "source": "db"
      },
      "input_skill": "Java",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Java Backend Developer",
          "id": 79,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "java-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": "Scala Backend Developer",
          "id": 87,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "scala-backend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Kotlin and Java",
        "id": 161,
        "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
        "slug": "kotlin-and-java",
        "source": "db"
      },
      "input_skill": "Java",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Developer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Native Mobile Languages",
        "id": 274,
        "rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
        "slug": "native-mobile-languages",
        "source": "db"
      },
      "input_skill": "Java",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Native Mobile Developer",
          "id": 75,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "native-mobile-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Pega Programming Languages \u0026 DSLs",
        "id": 267,
        "rationale": "Programming languages and domain-specific languages used in Pega development.",
        "slug": "pega-programming-languages-dsls",
        "source": "db"
      },
      "input_skill": "Java",
      "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": "Programming Languages",
        "id": 1,
        "rationale": "Primary implementation languages used to build client and server feature code. Full stack engineers need enough fluency to move across layers and implement product behavior end to end.",
        "slug": "programming-languages",
        "source": "db"
      },
      "input_skill": "Java",
      "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"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Programming Languages \u0026 DSLs",
        "id": 475,
        "rationale": "Oversee and guide the selection and effective use of programming and domain\u2010specific languages in software projects.",
        "slug": "programming-languages-dsls",
        "source": "db"
      },
      "input_skill": "Java",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Engineering Manager",
          "id": 121,
          "rationale": null,
          "role_archetype": null,
          "slug": "engineering-manager",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Programming Languages for Data Work",
        "id": 21,
        "rationale": "Languages used to implement data pipelines, transformations, and operational glue. This is the primary coding surface for building ingestion, enrichment, and automation logic in data engineering.",
        "slug": "programming-languages-for-data-work",
        "source": "db"
      },
      "input_skill": "Java",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Data Engineer",
          "id": 2,
          "rationale": null,
          "role_archetype": null,
          "slug": "data-engineer",
          "source": "db"
        }
      ]
    },
    {
      "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": "Spring WebFlux",
      "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": 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": "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": "Kotlin and Java",
        "id": 161,
        "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
        "slug": "kotlin-and-java",
        "source": "db"
      },
      "input_skill": "RxJava",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Developer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "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": 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"
        }
      ]
    },
    {
      "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, Protocols \u0026 Compliance",
        "id": 452,
        "rationale": "Ensure teams adhere to industry standards, security protocols, and regulatory compliance requirements.",
        "slug": "standards-protocols-compliance",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Engineering Manager",
          "id": 121,
          "rationale": null,
          "role_archetype": null,
          "slug": "engineering-manager",
          "source": "db"
        },
        {
          "display_name": "Sitecore Dev",
          "id": 233,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "sitecore-dev",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Frameworks \u0026 Libraries",
        "id": 360,
        "rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
        "slug": "frameworks-libraries",
        "source": "db"
      },
      "input_skill": "Spring Boot",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Drupal Dev",
          "id": 228,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "drupal-dev",
          "source": "db"
        },
        {
          "display_name": "Engineering Manager",
          "id": 121,
          "rationale": null,
          "role_archetype": null,
          "slug": "engineering-manager",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "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": "Spring Boot",
      "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": 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": "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": "Web Service Frameworks",
        "id": 390,
        "rationale": "Server-side Kotlin frameworks and runtimes used to build HTTP services, middleware, controllers, and request pipelines. This cluster is the main entry point for backend endpoints and service behavior.",
        "slug": "web-service-frameworks",
        "source": "db"
      },
      "input_skill": "Spring Boot",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Kotlin Backend Developer",
          "id": 84,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "kotlin-server-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": "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": "Spring MVC",
      "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": 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": "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": "Authentication and Authorization",
        "id": 6,
        "rationale": "Identity, session, and access-control mechanisms used to protect PHP backend resources. This includes login flows, token handling, role checks, permissions, and policy enforcement in server-side code.",
        "slug": "authentication-and-authorization",
        "source": "db"
      },
      "input_skill": "Spring Security",
      "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": "Go Backend Developer",
          "id": 81,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "go-backend-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": "Backend Authentication and Authorization",
        "id": 386,
        "rationale": "Identity and access control mechanisms used by backend services to authenticate users or clients and enforce permissions on protected resources. This includes token and session handling, OAuth 2.0 / OpenID Connect / SAML flows, JWT and access tokens, API keys, MFA, role- or claim-based authorization, RBAC/ABAC, scopes, policies, Spring Security, and authorization filters.",
        "slug": "backend-authentication-and-authorization",
        "source": "db"
      },
      "input_skill": "Spring Security",
      "llm_role": null,
      "roles_from_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"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "ORMs and Data Access Layers",
        "id": 5,
        "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
        "slug": "orms-and-data-access-layers",
        "source": "db"
      },
      "input_skill": "Spring Data",
      "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": "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": "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"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Application ORM and Repository-Based Data Access",
        "id": 459,
        "rationale": "Libraries, patterns, and abstractions used in application service code to map objects/entities to relational databases and encapsulate persistence access. This includes ORM frameworks, repository/DAO patterns, entity/object mapping, query composition/execution, transactions, and connection handling across Scala and Java ecosystems (for example Slick, Doobie, Quill, Hibernate, JPA, Spring Data JPA, JPQL, and Criteria-style query APIs).",
        "slug": "application-orm-and-repository-based-data-access",
        "source": "db"
      },
      "input_skill": "JPA",
      "llm_role": null,
      "roles_from_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": "ORMs and Data Access Layers",
        "id": 5,
        "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
        "slug": "orms-and-data-access-layers",
        "source": "db"
      },
      "input_skill": "JPA",
      "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": "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": "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"
        }
      ]
    },
    {
      "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": "Application ORM and Repository-Based Data Access",
        "id": 459,
        "rationale": "Libraries, patterns, and abstractions used in application service code to map objects/entities to relational databases and encapsulate persistence access. This includes ORM frameworks, repository/DAO patterns, entity/object mapping, query composition/execution, transactions, and connection handling across Scala and Java ecosystems (for example Slick, Doobie, Quill, Hibernate, JPA, Spring Data JPA, JPQL, and Criteria-style query APIs).",
        "slug": "application-orm-and-repository-based-data-access",
        "source": "db"
      },
      "input_skill": "Hibernate",
      "llm_role": null,
      "roles_from_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": "ORMs and Data Access Layers",
        "id": 5,
        "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
        "slug": "orms-and-data-access-layers",
        "source": "db"
      },
      "input_skill": "Hibernate",
      "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": "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": "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"
        }
      ]
    },
    {
      "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": "PostgreSQL",
      "llm_role": null,
      "roles_from_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": "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": "PostgreSQL",
      "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": "PostgreSQL",
      "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": "Containerization and Image Builds",
        "id": 152,
        "rationale": "Container image creation, tagging, hardening, and registry workflows used to package services for deployment. This is coherent because DevOps often owns the build-to-image path that feeds runtime environments.",
        "slug": "containerization-and-image-builds",
        "source": "db"
      },
      "input_skill": "Docker",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "DevOps Engineer",
          "id": 10,
          "rationale": null,
          "role_archetype": null,
          "slug": "devops-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Deployment and Cloud Platforms",
        "id": 418,
        "rationale": "Platform-as-a-Service and container environments for deploying Ruby applications.",
        "slug": "deployment-and-cloud-platforms",
        "source": "db"
      },
      "input_skill": "Docker",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Ruby Backend Developer",
          "id": 85,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "ruby-backend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Deployment and Runtime Configuration",
        "id": 13,
        "rationale": "Configuration and release artifacts that control how backend services run in environments. Includes environment variables, manifests, feature flags, and release-safe configuration management.",
        "slug": "deployment-and-runtime-configuration",
        "source": "db"
      },
      "input_skill": "Docker",
      "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": "Go Backend Developer",
          "id": 81,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "go-backend-developer",
          "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": "Magento Search and Indexing",
        "id": 403,
        "rationale": "Index-driven storefront data freshness and search behavior. This cluster is coherent because Magento commerce sites depend on indexing to keep catalog, price, and search results aligned with changing data.",
        "slug": "magento-search-and-indexing",
        "source": "db"
      },
      "input_skill": "Elasticsearch",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Magento Dev",
          "id": 231,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "magento-dev",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Search and Content Discovery",
        "id": 356,
        "rationale": "Implementing site search, indexing, and content discovery features in Drupal. This cluster is coherent because many Drupal sites need structured search experiences beyond basic navigation.",
        "slug": "search-and-content-discovery",
        "source": "db"
      },
      "input_skill": "Elasticsearch",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Drupal Dev",
          "id": 228,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "drupal-dev",
          "source": "db"
        },
        {
          "display_name": "Sitecore Dev",
          "id": 233,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "sitecore-dev",
          "source": "db"
        }
      ]
    }
  ],
  "input_final_skills": [
    "Java",
    "Spring WebFlux",
    "RxJava",
    "Project Reactor",
    "REST",
    "Spring IoC",
    "Spring Boot",
    "Spring MVC",
    "Spring Security",
    "Spring Test",
    "Spring Data",
    "JPA",
    "OAuth2",
    "SSO",
    "Hibernate",
    "PostgreSQL",
    "Lombok",
    "Liquibase",
    "Hazelcast",
    "MapStruct",
    "Docker",
    "OpenShift",
    "SonarQube",
    "Kibana",
    "Elasticsearch"
  ],
  "input_llm_skills": [
    "Java",
    "Spring WebFlux",
    "RxJava",
    "Project Reactor",
    "REST",
    "Spring IoC",
    "Spring Boot",
    "Spring MVC",
    "Spring Security",
    "Spring Test",
    "Spring Data",
    "JPA",
    "OAuth2",
    "SSO",
    "Hibernate",
    "PostgreSQL",
    "Lombok",
    "Liquibase",
    "Hazelcast",
    "MapStruct",
    "Docker",
    "OpenShift",
    "SonarQube",
    "Kibana",
    "Elasticsearch"
  ],
  "new_aliases_persisted": 0,
  "run_id": "52b74bb8-d35d-410d-a5c4-632497ba0304",
  "skills_detail": [
    {
      "aliases_in_db": [
        {
          "alias_text": "Java",
          "alias_type": "CANONICAL",
          "id": 1,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK",
          "alias_type": "VERSION",
          "id": 2968,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 10",
          "alias_type": "VERSION",
          "id": 2194,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 11",
          "alias_type": "VERSION",
          "id": 4,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 12",
          "alias_type": "VERSION",
          "id": 2196,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 13",
          "alias_type": "VERSION",
          "id": 2197,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 14",
          "alias_type": "VERSION",
          "id": 2198,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 15",
          "alias_type": "VERSION",
          "id": 2199,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 16",
          "alias_type": "VERSION",
          "id": 2200,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 17",
          "alias_type": "VERSION",
          "id": 5,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 18",
          "alias_type": "VERSION",
          "id": 2202,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 19",
          "alias_type": "VERSION",
          "id": 2203,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 20",
          "alias_type": "VERSION",
          "id": 2204,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 21",
          "alias_type": "VERSION",
          "id": 6,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 5",
          "alias_type": "VERSION",
          "id": 2189,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 6",
          "alias_type": "VERSION",
          "id": 2190,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 7",
          "alias_type": "VERSION",
          "id": 2191,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 8",
          "alias_type": "VERSION",
          "id": 3,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 9",
          "alias_type": "VERSION",
          "id": 2193,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.0",
          "alias_type": "VERSION",
          "id": 11,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.1",
          "alias_type": "VERSION",
          "id": 12,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.2",
          "alias_type": "VERSION",
          "id": 13,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.3",
          "alias_type": "VERSION",
          "id": 14,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.4",
          "alias_type": "VERSION",
          "id": 15,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.5",
          "alias_type": "VERSION",
          "id": 16,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.6",
          "alias_type": "VERSION",
          "id": 17,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.7",
          "alias_type": "VERSION",
          "id": 18,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.8",
          "alias_type": "VERSION",
          "id": 19,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 10",
          "alias_type": "VERSION",
          "id": 2211,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 11",
          "alias_type": "VERSION",
          "id": 8,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 12",
          "alias_type": "VERSION",
          "id": 2213,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 13",
          "alias_type": "VERSION",
          "id": 2214,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 14",
          "alias_type": "VERSION",
          "id": 2215,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 15",
          "alias_type": "VERSION",
          "id": 2216,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 16",
          "alias_type": "VERSION",
          "id": 2217,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 17",
          "alias_type": "VERSION",
          "id": 9,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 18",
          "alias_type": "VERSION",
          "id": 2219,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 19",
          "alias_type": "VERSION",
          "id": 2220,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 20",
          "alias_type": "VERSION",
          "id": 2221,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 21",
          "alias_type": "VERSION",
          "id": 10,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 5",
          "alias_type": "VERSION",
          "id": 288,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 6",
          "alias_type": "VERSION",
          "id": 289,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 7",
          "alias_type": "VERSION",
          "id": 290,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 8",
          "alias_type": "VERSION",
          "id": 7,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 9",
          "alias_type": "VERSION",
          "id": 2210,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java11",
          "alias_type": "VERSION",
          "id": 2976,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java17",
          "alias_type": "VERSION",
          "id": 2977,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java21",
          "alias_type": "VERSION",
          "id": 2978,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java8",
          "alias_type": "VERSION",
          "id": 2971,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "OpenJDK 11",
          "alias_type": "VERSION",
          "id": 21,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "OpenJDK 17",
          "alias_type": "VERSION",
          "id": 22,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "OpenJDK 21",
          "alias_type": "VERSION",
          "id": 23,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "OpenJDK 8",
          "alias_type": "VERSION",
          "id": 20,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 11",
          "alias_type": "VERSION",
          "id": 1512,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 17",
          "alias_type": "VERSION",
          "id": 1513,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 21",
          "alias_type": "VERSION",
          "id": 1514,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 4",
          "alias_type": "VERSION",
          "id": 1496,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 5",
          "alias_type": "VERSION",
          "id": 1497,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 6",
          "alias_type": "VERSION",
          "id": 1498,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 7",
          "alias_type": "VERSION",
          "id": 1499,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 8",
          "alias_type": "VERSION",
          "id": 1500,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java lts",
          "alias_type": "VERSION",
          "id": 3122,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-11",
          "alias_type": "VERSION",
          "id": 1515,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-17",
          "alias_type": "VERSION",
          "id": 1516,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-21",
          "alias_type": "VERSION",
          "id": 1517,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-4",
          "alias_type": "VERSION",
          "id": 1501,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-5",
          "alias_type": "VERSION",
          "id": 1502,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-6",
          "alias_type": "VERSION",
          "id": 1503,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-7",
          "alias_type": "VERSION",
          "id": 1504,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-8",
          "alias_type": "VERSION",
          "id": 1505,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java11",
          "alias_type": "VERSION",
          "id": 1506,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java17",
          "alias_type": "VERSION",
          "id": 1507,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java21",
          "alias_type": "VERSION",
          "id": 1508,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java4",
          "alias_type": "VERSION",
          "id": 1482,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java5",
          "alias_type": "VERSION",
          "id": 1483,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java6",
          "alias_type": "VERSION",
          "id": 1484,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java7",
          "alias_type": "VERSION",
          "id": 1485,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java8",
          "alias_type": "VERSION",
          "id": 1486,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 11",
          "alias_type": "VERSION",
          "id": 1509,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 17",
          "alias_type": "VERSION",
          "id": 1510,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 21",
          "alias_type": "VERSION",
          "id": 1511,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 4",
          "alias_type": "VERSION",
          "id": 1487,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 5",
          "alias_type": "VERSION",
          "id": 1488,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 6",
          "alias_type": "VERSION",
          "id": 1489,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 7",
          "alias_type": "VERSION",
          "id": 1490,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 8",
          "alias_type": "VERSION",
          "id": 1491,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk11",
          "alias_type": "VERSION",
          "id": 1492,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk17",
          "alias_type": "VERSION",
          "id": 1493,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk21",
          "alias_type": "VERSION",
          "id": 1494,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk4",
          "alias_type": "VERSION",
          "id": 1477,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk5",
          "alias_type": "VERSION",
          "id": 1478,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk6",
          "alias_type": "VERSION",
          "id": 1479,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk7",
          "alias_type": "VERSION",
          "id": 1480,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk8",
          "alias_type": "VERSION",
          "id": 1481,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jvm21",
          "alias_type": "VERSION",
          "id": 1495,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 6,
        "display_name": "Java",
        "id": 1,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "java",
        "sub_category_id": 96,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Java Language and JVM",
            "id": 279,
            "rationale": "Core Java implementation skills used to build backend service logic, utilities, and internal abstractions. This is the primary coding surface for the role and includes language features plus JVM behavior that affect correctness and maintainability.",
            "slug": "java-language-and-jvm",
            "source": "db"
          },
          "input_skill": "Java",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Java Backend Developer",
              "id": 79,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "java-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": "Scala Backend Developer",
              "id": 87,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "scala-backend-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Kotlin and Java",
            "id": 161,
            "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
            "slug": "kotlin-and-java",
            "source": "db"
          },
          "input_skill": "Java",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Developer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Native Mobile Languages",
            "id": 274,
            "rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
            "slug": "native-mobile-languages",
            "source": "db"
          },
          "input_skill": "Java",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Native Mobile Developer",
              "id": 75,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "native-mobile-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Pega Programming Languages \u0026 DSLs",
            "id": 267,
            "rationale": "Programming languages and domain-specific languages used in Pega development.",
            "slug": "pega-programming-languages-dsls",
            "source": "db"
          },
          "input_skill": "Java",
          "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": "Programming Languages",
            "id": 1,
            "rationale": "Primary implementation languages used to build client and server feature code. Full stack engineers need enough fluency to move across layers and implement product behavior end to end.",
            "slug": "programming-languages",
            "source": "db"
          },
          "input_skill": "Java",
          "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"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Programming Languages \u0026 DSLs",
            "id": 475,
            "rationale": "Oversee and guide the selection and effective use of programming and domain\u2010specific languages in software projects.",
            "slug": "programming-languages-dsls",
            "source": "db"
          },
          "input_skill": "Java",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Engineering Manager",
              "id": 121,
              "rationale": null,
              "role_archetype": null,
              "slug": "engineering-manager",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Programming Languages for Data Work",
            "id": 21,
            "rationale": "Languages used to implement data pipelines, transformations, and operational glue. This is the primary coding surface for building ingestion, enrichment, and automation logic in data engineering.",
            "slug": "programming-languages-for-data-work",
            "source": "db"
          },
          "input_skill": "Java",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Data Engineer",
              "id": 2,
              "rationale": null,
              "role_archetype": null,
              "slug": "data-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Java",
      "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": "Spring WebFlux",
          "alias_type": "CANONICAL",
          "id": 3401,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Spring WebFlux",
        "id": 2192,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-webflux",
        "sub_category_id": 1674,
        "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": "Spring WebFlux",
          "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": 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": "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": "Spring WebFlux",
      "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": "RxJava",
          "alias_type": "CANONICAL",
          "id": 2604,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "RxJava 2",
          "alias_type": "VERSION",
          "id": 2608,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "RxJava 3",
          "alias_type": "VERSION",
          "id": 2605,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "RxJava2",
          "alias_type": "VERSION",
          "id": 2609,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "RxJava3",
          "alias_type": "VERSION",
          "id": 2606,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "rxjava2",
          "alias_type": "VERSION",
          "id": 2610,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "rxjava3",
          "alias_type": "VERSION",
          "id": 2607,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 7,
        "display_name": "RxJava",
        "id": 1640,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LIBRARY",
        "slug": "rxjava",
        "sub_category_id": 1235,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Kotlin and Java",
            "id": 161,
            "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
            "slug": "kotlin-and-java",
            "source": "db"
          },
          "input_skill": "RxJava",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Developer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "RxJava",
      "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": "Project Reactor",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Reactive Programming",
          "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": "project-reactor",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "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": 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"
            }
          ]
        },
        {
          "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, Protocols \u0026 Compliance",
            "id": 452,
            "rationale": "Ensure teams adhere to industry standards, security protocols, and regulatory compliance requirements.",
            "slug": "standards-protocols-compliance",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Engineering Manager",
              "id": 121,
              "rationale": null,
              "role_archetype": null,
              "slug": "engineering-manager",
              "source": "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": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Spring IoC",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Web Frameworks",
          "skill_nature": "CONCEPT",
          "sub_category": "general",
          "typical_lifespan": "EVERGREEN",
          "version_strategy": "UNVERSIONED",
          "volatility": "STABLE"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "spring-ioc",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Spring Boot",
          "alias_type": "CANONICAL",
          "id": 79,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "SB2",
          "alias_type": "VERSION",
          "id": 2278,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "SB3",
          "alias_type": "VERSION",
          "id": 2279,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Boot 2",
          "alias_type": "VERSION",
          "id": 2280,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Boot 2.x",
          "alias_type": "VERSION",
          "id": 2282,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Boot 3",
          "alias_type": "VERSION",
          "id": 2281,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Boot 3.x",
          "alias_type": "VERSION",
          "id": 2283,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "boot2",
          "alias_type": "VERSION",
          "id": 3394,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "boot3",
          "alias_type": "VERSION",
          "id": 3395,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Spring Boot",
        "id": 6,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-boot",
        "sub_category_id": 3589,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Frameworks \u0026 Libraries",
            "id": 360,
            "rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
            "slug": "frameworks-libraries",
            "source": "db"
          },
          "input_skill": "Spring Boot",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Drupal Dev",
              "id": 228,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "drupal-dev",
              "source": "db"
            },
            {
              "display_name": "Engineering Manager",
              "id": 121,
              "rationale": null,
              "role_archetype": null,
              "slug": "engineering-manager",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "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": "Spring Boot",
          "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": 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": "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": "Web Service Frameworks",
            "id": 390,
            "rationale": "Server-side Kotlin frameworks and runtimes used to build HTTP services, middleware, controllers, and request pipelines. This cluster is the main entry point for backend endpoints and service behavior.",
            "slug": "web-service-frameworks",
            "source": "db"
          },
          "input_skill": "Spring Boot",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Kotlin Backend Developer",
              "id": 84,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "kotlin-server-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Scala Backend Developer",
              "id": 87,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "scala-backend-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Spring Boot",
      "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": "Spring MVC",
          "alias_type": "CANONICAL",
          "id": 3400,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Spring MVC",
        "id": 2191,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-mvc",
        "sub_category_id": 1680,
        "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": "Spring MVC",
          "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": 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": "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": "Spring MVC",
      "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": "Spring Security",
          "alias_type": "CANONICAL",
          "id": 3492,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Security 4",
          "alias_type": "VERSION",
          "id": 5131,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Security 4.x",
          "alias_type": "VERSION",
          "id": 5134,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Security 5",
          "alias_type": "VERSION",
          "id": 3493,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Security 5.x",
          "alias_type": "VERSION",
          "id": 3497,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Security 6",
          "alias_type": "VERSION",
          "id": 3494,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Security 6.x",
          "alias_type": "VERSION",
          "id": 3498,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "spring-security 5",
          "alias_type": "VERSION",
          "id": 3495,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "spring-security 6",
          "alias_type": "VERSION",
          "id": 3496,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Spring Security",
        "id": 2234,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-security",
        "sub_category_id": 1677,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Authentication and Authorization",
            "id": 6,
            "rationale": "Identity, session, and access-control mechanisms used to protect PHP backend resources. This includes login flows, token handling, role checks, permissions, and policy enforcement in server-side code.",
            "slug": "authentication-and-authorization",
            "source": "db"
          },
          "input_skill": "Spring Security",
          "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": "Go Backend Developer",
              "id": 81,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "go-backend-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": "Backend Authentication and Authorization",
            "id": 386,
            "rationale": "Identity and access control mechanisms used by backend services to authenticate users or clients and enforce permissions on protected resources. This includes token and session handling, OAuth 2.0 / OpenID Connect / SAML flows, JWT and access tokens, API keys, MFA, role- or claim-based authorization, RBAC/ABAC, scopes, policies, Spring Security, and authorization filters.",
            "slug": "backend-authentication-and-authorization",
            "source": "db"
          },
          "input_skill": "Spring Security",
          "llm_role": null,
          "roles_from_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"
            }
          ]
        }
      ],
      "input_skill": "Spring Security",
      "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": "Spring Test",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Testing 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": "spring-test",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Spring Data",
          "alias_type": "CANONICAL",
          "id": 5123,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Spring Data",
        "id": 3557,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-data",
        "sub_category_id": 1670,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "ORMs and Data Access Layers",
            "id": 5,
            "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
            "slug": "orms-and-data-access-layers",
            "source": "db"
          },
          "input_skill": "Spring Data",
          "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": "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": "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"
            }
          ]
        }
      ],
      "input_skill": "Spring Data",
      "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": "JPA",
          "alias_type": "CANONICAL",
          "id": 3420,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 12,
        "display_name": "JPA",
        "id": 2196,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "STANDARD",
        "slug": "jpa",
        "sub_category_id": 3566,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Application ORM and Repository-Based Data Access",
            "id": 459,
            "rationale": "Libraries, patterns, and abstractions used in application service code to map objects/entities to relational databases and encapsulate persistence access. This includes ORM frameworks, repository/DAO patterns, entity/object mapping, query composition/execution, transactions, and connection handling across Scala and Java ecosystems (for example Slick, Doobie, Quill, Hibernate, JPA, Spring Data JPA, JPQL, and Criteria-style query APIs).",
            "slug": "application-orm-and-repository-based-data-access",
            "source": "db"
          },
          "input_skill": "JPA",
          "llm_role": null,
          "roles_from_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": "ORMs and Data Access Layers",
            "id": 5,
            "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
            "slug": "orms-and-data-access-layers",
            "source": "db"
          },
          "input_skill": "JPA",
          "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": "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": "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"
            }
          ]
        }
      ],
      "input_skill": "JPA",
      "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": "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": "Hibernate",
          "alias_type": "CANONICAL",
          "id": 149,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 7,
        "display_name": "Hibernate",
        "id": 21,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LIBRARY",
        "slug": "hibernate",
        "sub_category_id": 39,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Application ORM and Repository-Based Data Access",
            "id": 459,
            "rationale": "Libraries, patterns, and abstractions used in application service code to map objects/entities to relational databases and encapsulate persistence access. This includes ORM frameworks, repository/DAO patterns, entity/object mapping, query composition/execution, transactions, and connection handling across Scala and Java ecosystems (for example Slick, Doobie, Quill, Hibernate, JPA, Spring Data JPA, JPQL, and Criteria-style query APIs).",
            "slug": "application-orm-and-repository-based-data-access",
            "source": "db"
          },
          "input_skill": "Hibernate",
          "llm_role": null,
          "roles_from_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": "ORMs and Data Access Layers",
            "id": 5,
            "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
            "slug": "orms-and-data-access-layers",
            "source": "db"
          },
          "input_skill": "Hibernate",
          "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": "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": "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"
            }
          ]
        }
      ],
      "input_skill": "Hibernate",
      "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": "PostgreSQL",
          "alias_type": "CANONICAL",
          "id": 121,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "PG 13",
          "alias_type": "VERSION",
          "id": 122,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "PG 14",
          "alias_type": "VERSION",
          "id": 123,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "PG 15",
          "alias_type": "VERSION",
          "id": 124,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "PG 16",
          "alias_type": "VERSION",
          "id": 125,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "PostgreSQL 13",
          "alias_type": "VERSION",
          "id": 130,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "PostgreSQL 14",
          "alias_type": "VERSION",
          "id": 131,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "PostgreSQL 15",
          "alias_type": "VERSION",
          "id": 132,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "PostgreSQL 16",
          "alias_type": "VERSION",
          "id": 133,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Postgres 13",
          "alias_type": "VERSION",
          "id": 126,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Postgres 14",
          "alias_type": "VERSION",
          "id": 127,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Postgres 15",
          "alias_type": "VERSION",
          "id": 128,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Postgres 16",
          "alias_type": "VERSION",
          "id": 129,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "pg10",
          "alias_type": "VERSION",
          "id": 4714,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "pg11",
          "alias_type": "VERSION",
          "id": 4715,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "pg12",
          "alias_type": "VERSION",
          "id": 4716,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "pg13",
          "alias_type": "VERSION",
          "id": 4717,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "pg14",
          "alias_type": "VERSION",
          "id": 4718,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "pg15",
          "alias_type": "VERSION",
          "id": 4719,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "pg16",
          "alias_type": "VERSION",
          "id": 4720,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgres",
          "alias_type": "VERSION",
          "id": 4721,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql 10",
          "alias_type": "VERSION",
          "id": 4729,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql 11",
          "alias_type": "VERSION",
          "id": 4730,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql 12",
          "alias_type": "VERSION",
          "id": 4731,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql 13",
          "alias_type": "VERSION",
          "id": 4732,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql 14",
          "alias_type": "VERSION",
          "id": 4733,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql 15",
          "alias_type": "VERSION",
          "id": 4734,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql 16",
          "alias_type": "VERSION",
          "id": 4735,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql-16",
          "alias_type": "VERSION",
          "id": 4736,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql10",
          "alias_type": "VERSION",
          "id": 4722,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql11",
          "alias_type": "VERSION",
          "id": 4723,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql12",
          "alias_type": "VERSION",
          "id": 4724,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql13",
          "alias_type": "VERSION",
          "id": 4725,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql14",
          "alias_type": "VERSION",
          "id": 4726,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql15",
          "alias_type": "VERSION",
          "id": 4727,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "postgresql16",
          "alias_type": "VERSION",
          "id": 4728,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 3,
        "display_name": "PostgreSQL",
        "id": 16,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "postgresql",
        "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": "PostgreSQL",
          "llm_role": null,
          "roles_from_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": "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": "PostgreSQL",
          "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": "PostgreSQL",
          "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": "PostgreSQL",
      "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": "Lombok",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Java Libraries",
          "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": "lombok",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Liquibase",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Database 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": "liquibase",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Hazelcast",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Distributed Caching",
          "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": "hazelcast",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "MapStruct",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Java Libraries",
          "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": "mapstruct",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Docker",
          "alias_type": "CANONICAL",
          "id": 198,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 13,
        "display_name": "Docker",
        "id": 61,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "docker",
        "sub_category_id": 63,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Containerization and Image Builds",
            "id": 152,
            "rationale": "Container image creation, tagging, hardening, and registry workflows used to package services for deployment. This is coherent because DevOps often owns the build-to-image path that feeds runtime environments.",
            "slug": "containerization-and-image-builds",
            "source": "db"
          },
          "input_skill": "Docker",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "DevOps Engineer",
              "id": 10,
              "rationale": null,
              "role_archetype": null,
              "slug": "devops-engineer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Deployment and Cloud Platforms",
            "id": 418,
            "rationale": "Platform-as-a-Service and container environments for deploying Ruby applications.",
            "slug": "deployment-and-cloud-platforms",
            "source": "db"
          },
          "input_skill": "Docker",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Ruby Backend Developer",
              "id": 85,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "ruby-backend-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Deployment and Runtime Configuration",
            "id": 13,
            "rationale": "Configuration and release artifacts that control how backend services run in environments. Includes environment variables, manifests, feature flags, and release-safe configuration management.",
            "slug": "deployment-and-runtime-configuration",
            "source": "db"
          },
          "input_skill": "Docker",
          "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": "Go Backend Developer",
              "id": 81,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "go-backend-developer",
              "source": "db"
            },
            {
              "display_name": "PHP Backend Developer",
              "id": 86,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "php-backend-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Docker",
      "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": "OpenShift",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Container Orchestration",
          "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": "openshift",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "SonarQube",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Code Quality 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": "sonarqube",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Kibana",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Monitoring 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": "kibana",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Elasticsearch",
          "alias_type": "CANONICAL",
          "id": 4648,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "ES",
          "alias_type": "VERSION",
          "id": 4649,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "ElasticSearch",
          "alias_type": "VERSION",
          "id": 4650,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch 6",
          "alias_type": "VERSION",
          "id": 4651,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch 6.x",
          "alias_type": "VERSION",
          "id": 4657,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch 7",
          "alias_type": "VERSION",
          "id": 4652,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch 7.x",
          "alias_type": "VERSION",
          "id": 4658,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch 8",
          "alias_type": "VERSION",
          "id": 4653,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch 8.x",
          "alias_type": "VERSION",
          "id": 4659,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch v6",
          "alias_type": "VERSION",
          "id": 4654,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch v7",
          "alias_type": "VERSION",
          "id": 4655,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Elasticsearch v8",
          "alias_type": "VERSION",
          "id": 4656,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 3,
        "display_name": "Elasticsearch",
        "id": 3171,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "elasticsearch",
        "sub_category_id": 2925,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Magento Search and Indexing",
            "id": 403,
            "rationale": "Index-driven storefront data freshness and search behavior. This cluster is coherent because Magento commerce sites depend on indexing to keep catalog, price, and search results aligned with changing data.",
            "slug": "magento-search-and-indexing",
            "source": "db"
          },
          "input_skill": "Elasticsearch",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Magento Dev",
              "id": 231,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "magento-dev",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Search and Content Discovery",
            "id": 356,
            "rationale": "Implementing site search, indexing, and content discovery features in Drupal. This cluster is coherent because many Drupal sites need structured search experiences beyond basic navigation.",
            "slug": "search-and-content-discovery",
            "source": "db"
          },
          "input_skill": "Elasticsearch",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Drupal Dev",
              "id": 228,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "drupal-dev",
              "source": "db"
            },
            {
              "display_name": "Sitecore Dev",
              "id": 233,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "sitecore-dev",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Elasticsearch",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    }
  ],
  "unmatched_skills": [
    "Project Reactor",
    "Spring IoC",
    "Spring Test",
    "Lombok",
    "Liquibase",
    "Hazelcast",
    "MapStruct",
    "OpenShift",
    "SonarQube",
    "Kibana"
  ]
}
API 3 — final-role-output
{
  "chosen_role": {
    "display_name": "Backend Developer",
    "id": 1,
    "rationale": "Domain=Software Engineering \u2192 sub-role java-backend-developer; The JD is for a Java Spring backend role focused on application development, technical decisions, testing, security, databases, and deployment tooling.",
    "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"
  },
  "chosen_role_resolution": "in_db",
  "final_input_skills": [
    {
      "skill": "Java",
      "tag": "in_db"
    },
    {
      "skill": "Spring WebFlux",
      "tag": "in_db"
    },
    {
      "skill": "RxJava",
      "tag": "in_db"
    },
    {
      "skill": "Project Reactor",
      "tag": "new"
    },
    {
      "skill": "REST",
      "tag": "in_db"
    },
    {
      "skill": "Spring IoC",
      "tag": "new"
    },
    {
      "skill": "Spring Boot",
      "tag": "in_db"
    },
    {
      "skill": "Spring MVC",
      "tag": "in_db"
    },
    {
      "skill": "Spring Security",
      "tag": "in_db"
    },
    {
      "skill": "Spring Test",
      "tag": "new"
    },
    {
      "skill": "Spring Data",
      "tag": "in_db"
    },
    {
      "skill": "JPA",
      "tag": "in_db"
    },
    {
      "skill": "OAuth2",
      "tag": "in_db"
    },
    {
      "skill": "SSO",
      "tag": "in_db"
    },
    {
      "skill": "Hibernate",
      "tag": "in_db"
    },
    {
      "skill": "PostgreSQL",
      "tag": "in_db"
    },
    {
      "skill": "Lombok",
      "tag": "new"
    },
    {
      "skill": "Liquibase",
      "tag": "new"
    },
    {
      "skill": "Hazelcast",
      "tag": "new"
    },
    {
      "skill": "MapStruct",
      "tag": "new"
    },
    {
      "skill": "Docker",
      "tag": "in_db"
    },
    {
      "skill": "OpenShift",
      "tag": "new"
    },
    {
      "skill": "SonarQube",
      "tag": "new"
    },
    {
      "skill": "Kibana",
      "tag": "new"
    },
    {
      "skill": "Elasticsearch",
      "tag": "in_db"
    }
  ],
  "llm_cost_api1_usd": null,
  "llm_cost_api2_usd": null,
  "llm_cost_api3_usd": null,
  "llm_cost_total_usd": null,
  "persistence": {
    "items": [
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Java Language and JVM",
          "id": 279,
          "rationale": "Core Java implementation skills used to build backend service logic, utilities, and internal abstractions. This is the primary coding surface for the role and includes language features plus JVM behavior that affect correctness and maintainability.",
          "slug": "java-language-and-jvm",
          "source": "db"
        },
        "dimension_id": 279,
        "input_skill": "Java",
        "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": "Java Backend Developer",
            "id": 79,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "java-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": "Scala Backend Developer",
            "id": 87,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "scala-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Kotlin and Java",
          "id": 161,
          "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
          "slug": "kotlin-and-java",
          "source": "db"
        },
        "dimension_id": 161,
        "input_skill": "Java",
        "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": "Android Developer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Native Mobile Languages",
          "id": 274,
          "rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
          "slug": "native-mobile-languages",
          "source": "db"
        },
        "dimension_id": 274,
        "input_skill": "Java",
        "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": "Native Mobile Developer",
            "id": 75,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "native-mobile-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Pega Programming Languages \u0026 DSLs",
          "id": 267,
          "rationale": "Programming languages and domain-specific languages used in Pega development.",
          "slug": "pega-programming-languages-dsls",
          "source": "db"
        },
        "dimension_id": 267,
        "input_skill": "Java",
        "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": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Programming Languages",
          "id": 1,
          "rationale": "Primary implementation languages used to build client and server feature code. Full stack engineers need enough fluency to move across layers and implement product behavior end to end.",
          "slug": "programming-languages",
          "source": "db"
        },
        "dimension_id": 1,
        "input_skill": "Java",
        "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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Programming Languages \u0026 DSLs",
          "id": 475,
          "rationale": "Oversee and guide the selection and effective use of programming and domain\u2010specific languages in software projects.",
          "slug": "programming-languages-dsls",
          "source": "db"
        },
        "dimension_id": 475,
        "input_skill": "Java",
        "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": "Engineering Manager",
            "id": 121,
            "rationale": null,
            "role_archetype": null,
            "slug": "engineering-manager",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Programming Languages for Data Work",
          "id": 21,
          "rationale": "Languages used to implement data pipelines, transformations, and operational glue. This is the primary coding surface for building ingestion, enrichment, and automation logic in data engineering.",
          "slug": "programming-languages-for-data-work",
          "source": "db"
        },
        "dimension_id": 21,
        "input_skill": "Java",
        "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": "Data Engineer",
            "id": 2,
            "rationale": null,
            "role_archetype": null,
            "slug": "data-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": "Spring WebFlux",
        "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": 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": "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": 2192,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Kotlin and Java",
          "id": 161,
          "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
          "slug": "kotlin-and-java",
          "source": "db"
        },
        "dimension_id": 161,
        "input_skill": "RxJava",
        "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": "Android Developer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1640,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": 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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 11,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": 1,
        "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": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Standards, Protocols \u0026 Compliance",
          "id": 452,
          "rationale": "Ensure teams adhere to industry standards, security protocols, and regulatory compliance requirements.",
          "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": "Engineering Manager",
            "id": 121,
            "rationale": null,
            "role_archetype": null,
            "slug": "engineering-manager",
            "source": "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": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Frameworks \u0026 Libraries",
          "id": 360,
          "rationale": "Manage adoption, integration, and best practices around key software frameworks and libraries.",
          "slug": "frameworks-libraries",
          "source": "db"
        },
        "dimension_id": 360,
        "input_skill": "Spring Boot",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Drupal Dev",
            "id": 228,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "drupal-dev",
            "source": "db"
          },
          {
            "display_name": "Engineering Manager",
            "id": 121,
            "rationale": null,
            "role_archetype": null,
            "slug": "engineering-manager",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 6,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": "Spring Boot",
        "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": 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": "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": 6,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Web Service Frameworks",
          "id": 390,
          "rationale": "Server-side Kotlin frameworks and runtimes used to build HTTP services, middleware, controllers, and request pipelines. This cluster is the main entry point for backend endpoints and service behavior.",
          "slug": "web-service-frameworks",
          "source": "db"
        },
        "dimension_id": 390,
        "input_skill": "Spring Boot",
        "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": "Kotlin Backend Developer",
            "id": 84,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "kotlin-server-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": 6,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": "Spring MVC",
        "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": 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": "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": 2191,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Authentication and Authorization",
          "id": 6,
          "rationale": "Identity, session, and access-control mechanisms used to protect PHP backend resources. This includes login flows, token handling, role checks, permissions, and policy enforcement in server-side code.",
          "slug": "authentication-and-authorization",
          "source": "db"
        },
        "dimension_id": 6,
        "input_skill": "Spring Security",
        "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": ".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": "Go Backend Developer",
            "id": 81,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "go-backend-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": 2234,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Backend Authentication and Authorization",
          "id": 386,
          "rationale": "Identity and access control mechanisms used by backend services to authenticate users or clients and enforce permissions on protected resources. This includes token and session handling, OAuth 2.0 / OpenID Connect / SAML flows, JWT and access tokens, API keys, MFA, role- or claim-based authorization, RBAC/ABAC, scopes, policies, Spring Security, and authorization filters.",
          "slug": "backend-authentication-and-authorization",
          "source": "db"
        },
        "dimension_id": 386,
        "input_skill": "Spring Security",
        "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": "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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2234,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "ORMs and Data Access Layers",
          "id": 5,
          "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
          "slug": "orms-and-data-access-layers",
          "source": "db"
        },
        "dimension_id": 5,
        "input_skill": "Spring Data",
        "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": ".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": "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": "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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 3557,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Application ORM and Repository-Based Data Access",
          "id": 459,
          "rationale": "Libraries, patterns, and abstractions used in application service code to map objects/entities to relational databases and encapsulate persistence access. This includes ORM frameworks, repository/DAO patterns, entity/object mapping, query composition/execution, transactions, and connection handling across Scala and Java ecosystems (for example Slick, Doobie, Quill, Hibernate, JPA, Spring Data JPA, JPQL, and Criteria-style query APIs).",
          "slug": "application-orm-and-repository-based-data-access",
          "source": "db"
        },
        "dimension_id": 459,
        "input_skill": "JPA",
        "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": "Scala Backend Developer",
            "id": 87,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "scala-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2196,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "ORMs and Data Access Layers",
          "id": 5,
          "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
          "slug": "orms-and-data-access-layers",
          "source": "db"
        },
        "dimension_id": 5,
        "input_skill": "JPA",
        "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": ".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": "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": "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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2196,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "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": "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": 1,
        "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": 1,
        "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": 1,
        "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": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Application ORM and Repository-Based Data Access",
          "id": 459,
          "rationale": "Libraries, patterns, and abstractions used in application service code to map objects/entities to relational databases and encapsulate persistence access. This includes ORM frameworks, repository/DAO patterns, entity/object mapping, query composition/execution, transactions, and connection handling across Scala and Java ecosystems (for example Slick, Doobie, Quill, Hibernate, JPA, Spring Data JPA, JPQL, and Criteria-style query APIs).",
          "slug": "application-orm-and-repository-based-data-access",
          "source": "db"
        },
        "dimension_id": 459,
        "input_skill": "Hibernate",
        "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": "Scala Backend Developer",
            "id": 87,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "scala-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 21,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "ORMs and Data Access Layers",
          "id": 5,
          "rationale": "Libraries and patterns used to map application objects to persistent storage and encapsulate database access. This cluster covers repository patterns, query builders, and persistence abstractions.",
          "slug": "orms-and-data-access-layers",
          "source": "db"
        },
        "dimension_id": 5,
        "input_skill": "Hibernate",
        "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": ".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": "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": "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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 21,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": "PostgreSQL",
        "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": "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": "PHP Backend Developer",
            "id": 86,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "php-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 16,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": "PostgreSQL",
        "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": ".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": 16,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "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": "PostgreSQL",
        "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": 16,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Containerization and Image Builds",
          "id": 152,
          "rationale": "Container image creation, tagging, hardening, and registry workflows used to package services for deployment. This is coherent because DevOps often owns the build-to-image path that feeds runtime environments.",
          "slug": "containerization-and-image-builds",
          "source": "db"
        },
        "dimension_id": 152,
        "input_skill": "Docker",
        "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": "DevOps Engineer",
            "id": 10,
            "rationale": null,
            "role_archetype": null,
            "slug": "devops-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 61,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Deployment and Cloud Platforms",
          "id": 418,
          "rationale": "Platform-as-a-Service and container environments for deploying Ruby applications.",
          "slug": "deployment-and-cloud-platforms",
          "source": "db"
        },
        "dimension_id": 418,
        "input_skill": "Docker",
        "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": "Ruby Backend Developer",
            "id": 85,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "ruby-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 61,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Deployment and Runtime Configuration",
          "id": 13,
          "rationale": "Configuration and release artifacts that control how backend services run in environments. Includes environment variables, manifests, feature flags, and release-safe configuration management.",
          "slug": "deployment-and-runtime-configuration",
          "source": "db"
        },
        "dimension_id": 13,
        "input_skill": "Docker",
        "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": ".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": "Go Backend Developer",
            "id": 81,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "go-backend-developer",
            "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": 61,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Magento Search and Indexing",
          "id": 403,
          "rationale": "Index-driven storefront data freshness and search behavior. This cluster is coherent because Magento commerce sites depend on indexing to keep catalog, price, and search results aligned with changing data.",
          "slug": "magento-search-and-indexing",
          "source": "db"
        },
        "dimension_id": 403,
        "input_skill": "Elasticsearch",
        "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": "Magento Dev",
            "id": 231,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "magento-dev",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 3171,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Search and Content Discovery",
          "id": 356,
          "rationale": "Implementing site search, indexing, and content discovery features in Drupal. This cluster is coherent because many Drupal sites need structured search experiences beyond basic navigation.",
          "slug": "search-and-content-discovery",
          "source": "db"
        },
        "dimension_id": 356,
        "input_skill": "Elasticsearch",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Drupal Dev",
            "id": 228,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "drupal-dev",
            "source": "db"
          },
          {
            "display_name": "Sitecore Dev",
            "id": 233,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "sitecore-dev",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 3171,
        "skill_tag": "in_db",
        "skipped_reason": null
      }
    ],
    "new_skills_created": 0,
    "role_dimension_saved": 0,
    "skill_dimension_saved": 0,
    "skipped": 1
  },
  "planner_output": null,
  "run_id": "52b74bb8-d35d-410d-a5c4-632497ba0304"
}