← Back to history

Pipeline run

53a5b5e6-26bc-4621-bdd8-4632995b3d9b

Pipeline LLM cost (USD)
API 1: $0.0108 API 2: $0.0003 API 3: $0.0000 Total: $0.0110

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 · Integration and event handling
Build and maintain Scala Play backend apps that extract large volumes of data from diverse source systems, design the integration approach with stakeholders, and apply functional Scala practices plus Spark pipelines for distributed ML training.
"Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems"
Tech stack maturity
Mainstream Modern
The skill set centers on Scala, Play Framework, Apache Spark, and functional/concurrent programming concepts like futures and promises, which are characteristic of modern JVM backend development but not specifically cloud-native or bleeding-edge.
AI index (0 = no AI use, 5 = totally AI-dependent · v2.1)
1.70 / 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): ML, Machine Learning
Evidence — skills matched in JD (13)
Scala Play Framework Futures Promises Option Collections Functional Programming Recursion Higher-order functions Immutable vs mutable Pattern matching Spark Distributed Machine Learning
Skill cluster (3 dimension groups, role-scoped)
Concurrency and Parallel Processing
Futures
Programming Languages for Data Work
Scala
Cross-cutting / unaligned
Play Framework Promises Option Collections Functional Programming Recursion Higher-order functions Immutable vs mutable Pattern matching Spark Distributed Machine Learning
Show KRA description ↓
A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems; B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac A:4 years of web backend development with at least 2 year in Scala; B:Experience in Scala for application development; C:Knowledge of Futures, Promises, Option, Collections in Scala; D:Experience with Play frameworkScala Version; E:Solid understanding of Functional Programming concepts Recursion instead of iteration; Higher order functions, immutable vs mutable, Pattern matching Develop Spark Pipelines for Distributed ML training and integrate with overflow of the application; A:Must be able to multitask and meet deadlines in the given time frame; B:Resource should have strong analytical skills and affinity to solve problems individually or collaboratively as a team; C:Good communication and presentation skills

Signals

Skill scala-backend-developer
0.23
Alias scala-backend-developer
1.00
KRA data-engineer
0.51

Post-classification

Centroidupdated · n=1695
Alias collision log
New-role queue
New skills captured6
New KRA capturedyes

Captured for admin review

Option primary Backend Developer pending
Functional Programming primary Backend Developer pending
Recursion primary Backend Developer pending
Higher-order functions primary Backend Developer pending
Immutable vs mutable primary Backend Developer pending
Distributed Machine Learning primary Backend Developer pending
R&R fragment (sim 0.00) Backend Developer pending

A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems; B: Responsible for developing, enhancing, re-engineering maintaining play web applicatio…

Status: completed Created: 2026-05-27T17:35:23.988131Z Updated: 2026-05-27T17:36:11.875691Z API 3 duration: 4625 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

Scala Backend Developer

sub-role · 0.99 domain · Software Engineering CASE DOMAIN

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

Domain=Software Engineering → sub-role scala-backend-developer; The JD is centered on Scala-based backend/application development, data extraction, Play framework, and Spark pipelines, which aligns best with Backend Developer responsibilities.

Matched skills

ScalaPlay frameworkFuturesPromisesOptionCollectionsFunctional ProgrammingRecursionhigher order functionsimmutablemutablePattern matchingSpark PipelinesDistributed ML training

Matched dimensions

Backend Application DevelopmentScala Software EngineeringData Extraction and IntegrationFunctional ProgrammingDistributed Data ProcessingEngineering Best PracticesStakeholder Collaboration

Matched KRAs

Designing and Implementing solutions that extract high volumes of datadeveloping, enhancing, re-engineering maintaining play web applicationsensure good engineering practices are adopted and used within the teamworking closely with stakeholders to understand the various source systemsdesign appropriate solutions to extract

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
0
Skipped

Job description

About Accenture: Accenture is a global professional services company with leading capabilities in digital, cloud and security. Combining unmatched experience and specialized skills across more than 40 industries, we offer Strategy and Consulting, Interactive, Technology and Operations services-all powered by the world's largest network of Advanced Technology and Intelligent Operations centers. Our 514,000 people deliver on the promise of technology and human ingenuity every day, serving clients in more than 120 countries. We embrace the power of change to create value and shared success for our clients, people, shareholders, partners and communities. Visit us at www.accenture.com  Accenture | Let there be change We embrace change to create 360-degree value www.accenture.com

Project Role :Application Developer

Project Role Description :Design, build and configure applications to meet business process and application requirements.

Management Level :9

Work Experience :6-8 years

Work location :Kolkata

Must Have Skills :Scala Programming Language

Good To Have Skills :No Technology Specialization

Job Requirements : 

Key Responsibilities : A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems; B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac

Technical Experience : A:4 years of web backend development with at least 2 year in Scala; B:Experience in Scala for application development; C:Knowledge of Futures, Promises, Option, Collections in Scala; D:Experience with Play frameworkScala Version; E:Solid understanding of Functional Programming concepts Recursion instead of iteration; Higher order functions, immutable vs mutable, Pattern matching Develop Spark Pipelines for Distributed ML training and integrate with overflow of the application;

Professional Attributes : A:Must be able to multitask and meet deadlines in the given time frame; B:Resource should have strong analytical skills and affinity to solve problems individually or collaboratively as a team; C:Good communication and presentation skills

Educational Qualification : BE / B tech

15 years of full time education

Skills from this JD

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

Scala Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Scala id=102 · scala

Aliases — catalog

  • Scala (CANONICAL) primary

Context tags (catalog)

Akka Apache Kafka Cats Flink JVM Monads Play Framework SBT ScalaTest Shapeless Spark Spark SQL ZIO case class for-comprehension functional programming implicit pattern matching typeclass

Stored enrichment (catalog DB)

Category
Language
Sub-category
Programming Language
Vendor
EPFL
License
apache_2
Year introduced
2004
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: Scala still appears in many backend/data engineering JDs, especially with Spark and Akka, and remains supported by major JVM ecosystems; it’s not a sunset technology.

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)

  • Programming Languages for Data Work Catalog dimension db id 21

    Library dimension (catalog)

    Roles linked in library: Data Engineer

  • Programming Languages for ML Systems Catalog dimension db id 39

    Library dimension (catalog)

    Roles linked in library: ML Engineer, MLOps Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Programming Languages for Data Work
programming-languages-for-data-work
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Programming Languages for ML Systems
programming-languages-for-ml-systems
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Play Framework Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Play Framework id=4422 · play-framework

Aliases — catalog

  • Play Framework (CANONICAL) primary
  • Play 2 (VERSION)
  • Play 3 (VERSION)
  • Play Framework 2 (VERSION)
  • Play Framework 2.x (VERSION)
  • Play Framework 3 (VERSION)
  • Play Framework 3.x (VERSION)

Context tags (catalog)

Akka Dependency Injection Form Handling JSON Java MVC Play JSON Play WS RESTful Reactive Routing SBT Scala Template Engine WebSocket

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Web Framework
Vendor
Lightbend
License
apache_2
Year introduced
2009
Confidence
0.99
Version strategy
SEPARATE_ENTITY
Version tag
3.x

Maturity reasoning: Play Framework appears in some Scala/Java job postings, but JD volume is far below Spring Boot/Express and it’s not a hiring-pipeline staple; market demand is concentrated in legacy Scala stacks.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Web 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
Web Service Frameworks
web-service-frameworks
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Futures Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Futures id=2912 · futures

Aliases — catalog

  • Futures (CANONICAL) primary

Context tags (catalog)

arbitrage asynchronous callback concurrent execution contract coroutine deadlock derivatives event loop executor service expiration future object hedging leverage liquidity margin market participants non-blocking options parallelism price discovery promise race condition risk management settlement speculation synchronization task scheduling threading trading strategies

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Concurrency Concept
Confidence
0.88
Version strategy
NOT_APPLICABLE

Maturity reasoning: Futures are a standard concurrency primitive in Java, Scala, Rust, Python and JS ecosystems; they appear broadly in job descriptions for async/concurrent programming rather than as a niche library skill.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Concurrency and Parallel Processing Catalog dimension db id 17

    Library dimension (catalog)

    Roles linked in library: Backend Developer, Java Backend Developer, Node.js Backend Developer, Ruby Backend Developer, Scala Backend Developer

  • Dart Programming Catalog dimension db id 311

    Library dimension (catalog)

    Roles linked in library: Flutter Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Concurrency and Parallel Processing
concurrency-and-parallel-processing
Existing dimension (library) · Role↔dimension saved
Dart Programming
dart-programming
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Promises Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Promises id=2475 · promises

Aliases — catalog

  • Promises (CANONICAL) primary

Context tags (catalog)

JavaScript Promise.all Promise.race async asynchronous await callback catch chaining deferred error handling event loop finally microtask queue then

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Asynchronous Programming
Confidence
0.90
Version strategy
NOT_APPLICABLE

Maturity reasoning: Promises are a standard JavaScript async primitive and appear routinely in job descriptions for frontend, Node.js, and full-stack roles; they underpin async/await rather than being replaced.

Skill profile (library / DB)

Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
2
Sub-category id
1806
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • JavaScript and TypeScript Catalog dimension db id 114

    Library dimension (catalog)

    Roles linked in library: Angular Frontend Developer, Frontend Developer, Ionic Developer, Node.js Backend Developer, React Frontend Developer, React Native Developer, Svelte Frontend Developer, Vue Frontend Developer, Web Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
JavaScript and TypeScript
javascript-and-typescript
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Option 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
Programming Languages
Sub-category
general
Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Collections Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Collections id=3723 · collections

Aliases — catalog

  • Collections (CANONICAL) primary

Context tags (catalog)

array comprehension dictionary filtering hashmap immutable iterable list map mutable nested queue reduce set sorting stack

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Data Structure Concept
Confidence
0.70
Version strategy
NOT_APPLICABLE

Maturity reasoning: Core data-structure concept appears in most software engineering JDs and interview loops; widely used across languages and frameworks, with no sunset or replacement signal.

Skill profile (library / DB)

Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
2
Sub-category id
2874
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Magento Data Models and Repositories Catalog dimension db id 400

    Library dimension (catalog)

    Roles linked in library: Magento Dev

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Magento Data Models and Repositories
magento-data-models-and-repositories
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Functional Programming 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
Programming Paradigms
Sub-category
general
Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Recursion 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
Programming Concepts
Sub-category
general
Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Higher-order functions 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
Programming Concepts
Sub-category
general
Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Immutable vs mutable 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
Programming Concepts
Sub-category
general
Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Pattern matching Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: pattern matching id=4536 · pattern-matching

Aliases — catalog

  • pattern matching (CANONICAL) primary

Context tags (catalog)

backtracking data validation finite automata matching algorithms pattern analysis pattern recognition pattern search regex search algorithms semantic matching string matching syntax trees text processing tokenization wildcards

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Control Flow Concept
Confidence
0.97
Version strategy
NOT_APPLICABLE

Maturity reasoning: Pattern matching is widely used across mainstream languages and appears in many JDs for Python, Rust, Scala, and TypeScript-adjacent tooling; language vendors have also added it to core syntax, signaling broad adoption.

Skill profile (library / DB)

Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
2
Sub-category id
3483
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

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)
Spark Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Apache Spark id=1350 · apache-spark

Aliases — catalog

  • Apache Spark (CANONICAL)
  • apache spark 3 (VERSION)
  • spark (VERSION)
  • spark 3 (VERSION)
  • spark 3.x (VERSION)
  • spark3 (VERSION)

Context tags (catalog)

Apache Kafka Cluster Manager DAGScheduler Data Lake DataFrame ETL Hadoop MLlib Machine Learning PySpark RDD Scala Spark SQL Spark Streaming SparkSession

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Distributed Data Processing Framework
Vendor
Apache Software Foundation
License
apache_2
Year introduced
2010
Confidence
0.94
Version strategy
SEPARATE_ENTITY
Version tag
3.x

Maturity reasoning: Apache Spark appears in many data engineering JDs and remains a standard for distributed ETL/ELT; its GitHub and vendor ecosystem activity stay strong, with Databricks and cloud platforms still promoting it.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • ETL and ELT Tooling Catalog dimension db id 24

    Library dimension (catalog)

    Roles linked in library: Data Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
ETL and ELT Tooling
etl-and-elt-tooling
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Distributed Machine Learning 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
Machine Learning
Sub-category
general
Skill nature
CONCEPT
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED

All API 3 persistence rows

Same grid as the skill-extractor “Persistence items” table: one row per (skill × dimension) work item.

Skill Tag Dimension Skill↔dim Role↔dim Outcome Notes
Scala in_db
Programming Languages for Data Work
programming-languages-for-data-work
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Scala in_db
Programming Languages for ML Systems
programming-languages-for-ml-systems
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Play Framework in_db
Web Service Frameworks
web-service-frameworks
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Futures in_db
Concurrency and Parallel Processing
concurrency-and-parallel-processing
Existing dimension (library) · Role↔dimension saved
Futures in_db
Dart Programming
dart-programming
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Promises in_db
JavaScript and TypeScript
javascript-and-typescript
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Collections in_db
Magento Data Models and Repositories
magento-data-models-and-repositories
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Pattern matching in_db
Java Language and JVM
java-language-and-jvm
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Spark in_db
ETL and ELT Tooling
etl-and-elt-tooling
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)

Library artifacts (this run)

Kind Detail DB id
canonical_skill_proposed Option | type=Programming Languages subtype=general nature=CONCEPT lifespan=EVERGREEN
canonical_skill_proposed Functional Programming | type=Programming Paradigms subtype=general nature=CONCEPT lifespan=EVERGREEN
canonical_skill_proposed Recursion | type=Programming Concepts subtype=general nature=CONCEPT lifespan=EVERGREEN
canonical_skill_proposed Higher-order functions | type=Programming Concepts subtype=general nature=CONCEPT lifespan=EVERGREEN
canonical_skill_proposed Immutable vs mutable | type=Programming Concepts subtype=general nature=CONCEPT lifespan=EVERGREEN
canonical_skill_proposed Distributed Machine Learning | type=Machine Learning subtype=general nature=CONCEPT lifespan=MULTI_YEAR
nano JD Parser — gpt-4.1-nano click to toggle
RoleApplication Developer
CompanyAccenture
Experience6-8 years
DomainIT Services & Consulting
Location Kolkata, India (null)
JD type pass
Show raw JSON
{
  "JD_type": "pass",
  "about_company": {
    "source_marker": {
      "first_5_words": "About Accenture: Accenture is a",
      "last_5_words": "people, shareholders, partners and communities."
    },
    "text": "About Accenture: Accenture is a global professional services company with leading capabilities in digital, cloud and security. Combining unmatched experience and specialized skills across more than 40 industries, we offer Strategy and Consulting, Interactive, Technology and Operations services-all powered by the world\u0027s largest network of Advanced Technology and Intelligent Operations centers. Our 514,000 people deliver on the promise of technology and human ingenuity every day, serving clients in more than 120 countries. We embrace the power of change to create value and shared success for our clients, people, shareholders, partners and communities.",
    "word_count": 84
  },
  "certifications": [],
  "company_name": "Accenture",
  "ctc": null,
  "domain": {
    "primary": {
      "aliases": [
        "ITES",
        "BPO",
        "Tech Consulting"
      ],
      "domain": "IT Services \u0026 Consulting"
    },
    "secondary": null
  },
  "education": [
    {
      "level": "Bachelor\u0027s",
      "qualification": "BTECH/BE - Any Discipline",
      "raw": "BE / B tech",
      "requirement": "required"
    }
  ],
  "experience": {
    "max": 8,
    "min": 6,
    "raw": "6-8 years"
  },
  "job_locations": [
    {
      "aliases": [
        "Calcutta"
      ],
      "city": "Kolkata",
      "country": "India",
      "state": null,
      "work_mode": "null"
    }
  ],
  "role": "Application Developer",
  "role_aliases": [
    "App Developer",
    "Software Developer",
    "Scala Developer"
  ],
  "role_archetype": "Engineering",
  "roles_and_responsibilities": [
    {
      "bullet_count": 4,
      "heading": "Key Responsibilities",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "A:Designing and Implementing solutions",
        "last_5_words": "to design appropriate solutions to extrac"
      },
      "text": "A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems; B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac",
      "word_count": 56
    },
    {
      "bullet_count": 5,
      "heading": "Technical Experience",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "A:4 years of web backend",
        "last_5_words": "with overflow of the application;"
      },
      "text": "A:4 years of web backend development with at least 2 year in Scala; B:Experience in Scala for application development; C:Knowledge of Futures, Promises, Option, Collections in Scala; D:Experience with Play frameworkScala Version; E:Solid understanding of Functional Programming concepts Recursion instead of iteration; Higher order functions, immutable vs mutable, Pattern matching Develop Spark Pipelines for Distributed ML training and integrate with overflow of the application;",
      "word_count": 66
    },
    {
      "bullet_count": 3,
      "heading": "Professional Attributes",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "A:Must be able to multitask",
        "last_5_words": "communication and presentation skills"
      },
      "text": "A:Must be able to multitask and meet deadlines in the given time frame; B:Resource should have strong analytical skills and affinity to solve problems individually or collaboratively as a team; C:Good communication and presentation skills",
      "word_count": 42
    }
  ],
  "urls": [
    {
      "type": "website",
      "url": "www.accenture.com"
    }
  ]
}
API 1 — extract-from-jd click to toggle
{
  "final_skills": [
    {
      "is_primary": true,
      "skill_name": "Scala"
    },
    {
      "is_primary": true,
      "skill_name": "Play Framework"
    },
    {
      "is_primary": true,
      "skill_name": "Futures"
    },
    {
      "is_primary": true,
      "skill_name": "Promises"
    },
    {
      "is_primary": true,
      "skill_name": "Option"
    },
    {
      "is_primary": true,
      "skill_name": "Collections"
    },
    {
      "is_primary": true,
      "skill_name": "Functional Programming"
    },
    {
      "is_primary": true,
      "skill_name": "Recursion"
    },
    {
      "is_primary": true,
      "skill_name": "Higher-order functions"
    },
    {
      "is_primary": true,
      "skill_name": "Immutable vs mutable"
    },
    {
      "is_primary": true,
      "skill_name": "Pattern matching"
    },
    {
      "is_primary": true,
      "skill_name": "Spark"
    },
    {
      "is_primary": true,
      "skill_name": "Distributed Machine Learning"
    }
  ],
  "jd_role": {
    "display_name": "Application Developer",
    "rationale": null,
    "role_aliases": [
      "App Developer",
      "Software Developer",
      "Scala Developer"
    ],
    "role_archetype": "Engineering",
    "slug": ""
  },
  "nano_parsed": {
    "JD_type": "pass",
    "about_company": {
      "source_marker": {
        "first_5_words": "About Accenture: Accenture is a",
        "last_5_words": "people, shareholders, partners and communities."
      },
      "text": "About Accenture: Accenture is a global professional services company with leading capabilities in digital, cloud and security. Combining unmatched experience and specialized skills across more than 40 industries, we offer Strategy and Consulting, Interactive, Technology and Operations services-all powered by the world\u0027s largest network of Advanced Technology and Intelligent Operations centers. Our 514,000 people deliver on the promise of technology and human ingenuity every day, serving clients in more than 120 countries. We embrace the power of change to create value and shared success for our clients, people, shareholders, partners and communities.",
      "word_count": 84
    },
    "certifications": [],
    "company_name": "Accenture",
    "ctc": null,
    "domain": {
      "primary": {
        "aliases": [
          "ITES",
          "BPO",
          "Tech Consulting"
        ],
        "domain": "IT Services \u0026 Consulting"
      },
      "secondary": null
    },
    "education": [
      {
        "level": "Bachelor\u0027s",
        "qualification": "BTECH/BE - Any Discipline",
        "raw": "BE / B tech",
        "requirement": "required"
      }
    ],
    "experience": {
      "max": 8,
      "min": 6,
      "raw": "6-8 years"
    },
    "job_locations": [
      {
        "aliases": [
          "Calcutta"
        ],
        "city": "Kolkata",
        "country": "India",
        "state": null,
        "work_mode": "null"
      }
    ],
    "role": "Application Developer",
    "role_aliases": [
      "App Developer",
      "Software Developer",
      "Scala Developer"
    ],
    "role_archetype": "Engineering",
    "roles_and_responsibilities": [
      {
        "bullet_count": 4,
        "heading": "Key Responsibilities",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "A:Designing and Implementing solutions",
          "last_5_words": "to design appropriate solutions to extrac"
        },
        "text": "A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems; B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac",
        "word_count": 56
      },
      {
        "bullet_count": 5,
        "heading": "Technical Experience",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "A:4 years of web backend",
          "last_5_words": "with overflow of the application;"
        },
        "text": "A:4 years of web backend development with at least 2 year in Scala; B:Experience in Scala for application development; C:Knowledge of Futures, Promises, Option, Collections in Scala; D:Experience with Play frameworkScala Version; E:Solid understanding of Functional Programming concepts Recursion instead of iteration; Higher order functions, immutable vs mutable, Pattern matching Develop Spark Pipelines for Distributed ML training and integrate with overflow of the application;",
        "word_count": 66
      },
      {
        "bullet_count": 3,
        "heading": "Professional Attributes",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "A:Must be able to multitask",
          "last_5_words": "communication and presentation skills"
        },
        "text": "A:Must be able to multitask and meet deadlines in the given time frame; B:Resource should have strong analytical skills and affinity to solve problems individually or collaboratively as a team; C:Good communication and presentation skills",
        "word_count": 42
      }
    ],
    "urls": [
      {
        "type": "website",
        "url": "www.accenture.com"
      }
    ]
  },
  "rejected": false,
  "rejection_reason": null,
  "run_id": "53a5b5e6-26bc-4621-bdd8-4632995b3d9b",
  "stage3_signals": {
    "alias_found": true,
    "alias_match_roles": [
      {
        "display_name": "Scala Backend Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 87,
        "score": 1.0,
        "slug": "scala-backend-developer",
        "total_count": null
      },
      {
        "display_name": "Backend Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 1,
        "score": 1.0,
        "slug": "backend-engineer",
        "total_count": null
      }
    ],
    "kra_match_roles": [
      {
        "display_name": "Data Engineer",
        "kra_matches": [
          {
            "kra_text": "Develops batch and real-time streaming data pipelines using Apache Spark, Apache Kafka, Apache Flink, or Airflow for data movement and processing at scale.",
            "sentence": "Higher order functions, immutable vs mutable, Pattern matching Develop Spark Pipelines for Distributed ML training and integrate with overflow of the application;",
            "similarity": 0.5493
          },
          {
            "kra_text": "Builds data ingestion pipelines to collect data from transactional databases, third-party APIs, event streams, and file sources into centralized data platforms.",
            "sentence": "A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems;",
            "similarity": 0.5381
          },
          {
            "kra_text": "Designs dimensional models, star schemas, data vault structures, and curated data mart tables to support BI tools and self-service analytics consumption.",
            "sentence": "B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac",
            "similarity": 0.4487
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 2,
        "score": 0.512,
        "slug": "data-engineer",
        "total_count": null
      },
      {
        "display_name": "MLOps Engineer",
        "kra_matches": [
          {
            "kra_text": "Automates ML platform operations including scheduled retraining triggers, pipeline orchestration, evaluation workflows, and alerting configuration.",
            "sentence": "Higher order functions, immutable vs mutable, Pattern matching Develop Spark Pipelines for Distributed ML training and integrate with overflow of the application;",
            "similarity": 0.5204
          },
          {
            "kra_text": "Maintains ML platform runbooks, on-call escalation playbooks, and deployment procedure documentation for production operations teams.",
            "sentence": "B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac",
            "similarity": 0.4396
          },
          {
            "kra_text": "Validates model performance benchmarks, data schema contracts, and system integration health before signing off on production release readiness.",
            "sentence": "A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems;",
            "similarity": 0.3567
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 16,
        "score": 0.4389,
        "slug": "ml-ops-engineer",
        "total_count": null
      },
      {
        "display_name": "Fullstack Developer",
        "kra_matches": [
          {
            "kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
            "sentence": "B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac",
            "similarity": 0.4747
          },
          {
            "kra_text": "Designs and queries relational databases like PostgreSQL and document stores like MongoDB, writing migrations, indexes, and optimized queries.",
            "sentence": "A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems;",
            "similarity": 0.4406
          },
          {
            "kra_text": "Implements complete product features end-to-end from database schema design through backend API to frontend UI using JavaScript, TypeScript, Python, or Ruby on Rails.",
            "sentence": "A:4 years of web backend development with at least 2 year in Scala;",
            "similarity": 0.3934
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 15,
        "score": 0.4362,
        "slug": "full-stack-engineer",
        "total_count": null
      },
      {
        "display_name": "Flutter Developer",
        "kra_matches": [
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac",
            "similarity": 0.4961
          },
          {
            "kra_text": "integrate external APIs and data sources",
            "sentence": "A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems;",
            "similarity": 0.4172
          },
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "A:4 years of web backend development with at least 2 year in Scala;",
            "similarity": 0.3896
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 74,
        "score": 0.4343,
        "slug": "flutter-developer",
        "total_count": null
      },
      {
        "display_name": "AI Engineer",
        "kra_matches": [
          {
            "kra_text": "Designs and implements prompt engineering workflows, few-shot examples, chain-of-thought patterns, and structured output parsing for AI feature pipelines.",
            "sentence": "Higher order functions, immutable vs mutable, Pattern matching Develop Spark Pipelines for Distributed ML training and integrate with overflow of the application;",
            "similarity": 0.485
          },
          {
            "kra_text": "Designs and implements prompt engineering workflows, few-shot examples, chain-of-thought patterns, and structured output parsing for AI feature pipelines.",
            "sentence": "A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems;",
            "similarity": 0.4051
          },
          {
            "kra_text": "Integrates AI model API responses with application business logic, database writes, event publishing, and downstream service orchestration.",
            "sentence": "B: Responsible for developing, enhancing, re-engineering maintaining play web applications built with Scala;C:Helping to ensure good engineering practices are adopted and used within the team;D:Working closely with stakeholders to understand the various source systems including details of their interfaces, data models and capabilities in order to design appropriate solutions to extrac",
            "similarity": 0.4019
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 13,
        "score": 0.4307,
        "slug": "ai-engineer",
        "total_count": null
      }
    ],
    "skill_match_roles": [
      {
        "display_name": "Scala Backend Developer",
        "kra_matches": null,
        "matched_count": 3,
        "matched_skills": [
          "Futures",
          "Play Framework",
          "pattern matching"
        ],
        "role_id": 87,
        "score": 0.2308,
        "slug": "scala-backend-developer",
        "total_count": 13
      },
      {
        "display_name": "Kotlin Backend Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "Play Framework",
          "pattern matching"
        ],
        "role_id": 84,
        "score": 0.1538,
        "slug": "kotlin-server-backend-developer",
        "total_count": 13
      },
      {
        "display_name": "Data Engineer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "Apache Spark",
          "Scala"
        ],
        "role_id": 2,
        "score": 0.1538,
        "slug": "data-engineer",
        "total_count": 13
      },
      {
        "display_name": "Java Backend Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "Futures",
          "pattern matching"
        ],
        "role_id": 79,
        "score": 0.1538,
        "slug": "java-backend-developer",
        "total_count": 13
      },
      {
        "display_name": "Node.js Backend Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "Futures",
          "Promises"
        ],
        "role_id": 82,
        "score": 0.1538,
        "slug": "node-backend-developer",
        "total_count": 13
      }
    ]
  },
  "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.94,
      "slug": "backend-engineer",
      "total_count": null
    },
    "confidence": 0.94,
    "is_new_role": false,
    "llm2_fired": false,
    "llm2_reasoning": null,
    "matched_dimensions": [
      "Backend Application Development",
      "Scala Software Engineering",
      "Data Extraction and Integration",
      "Functional Programming",
      "Distributed Data Processing",
      "Engineering Best Practices",
      "Stakeholder Collaboration"
    ],
    "matched_kras": [
      "Designing and Implementing solutions that extract high volumes of data",
      "developing, enhancing, re-engineering maintaining play web applications",
      "ensure good engineering practices are adopted and used within the team",
      "working closely with stakeholders to understand the various source systems",
      "design appropriate solutions to extract"
    ],
    "matched_skills": [
      "Scala",
      "Play framework",
      "Futures",
      "Promises",
      "Option",
      "Collections",
      "Functional Programming",
      "Recursion",
      "higher order functions",
      "immutable",
      "mutable",
      "Pattern matching",
      "Spark Pipelines",
      "Distributed ML training"
    ],
    "new_role_display_name": null,
    "new_role_slug": null,
    "queued": false,
    "reasoning": "Domain=Software Engineering \u2192 sub-role scala-backend-developer; The JD is centered on Scala-based backend/application development, data extraction, Play framework, and Spark pipelines, which aligns best with Backend Developer responsibilities.",
    "sub_role": {
      "confidence": 0.99,
      "display_name": "Scala Backend Developer",
      "reasoning": "The JD explicitly requires Scala application development, Scala Futures/Promises/Option/collections, Play framework, functional programming, and Spark pipelines, which clearly matches the Scala backend specialization.",
      "role_id": 87,
      "slug": "scala-backend-developer"
    }
  },
  "stage5_updates": {
    "centroid_n_after": 1695,
    "centroid_updated": true,
    "collision_log_id": null,
    "new_kra_attached": {
      "best_kra_similarity": 0.0,
      "queue_id": 1843,
      "r_and_r_preview": "A:Designing and Implementing solutions that extract high volumes of data from a wide variety of source systems; B: Responsible for developing, enhancing, re-engineering maintaining play web applicatio",
      "role_display_name": "Backend Developer",
      "role_slug": "backend-engineer",
      "status": "pending"
    },
    "new_skills_attached": [
      {
        "is_primary": true,
        "queue_id": 24192,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Option",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24194,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Functional Programming",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24196,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Recursion",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24198,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Higher-order functions",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24200,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Immutable vs mutable",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 24202,
        "role_display_name": "Backend Developer",
        "role_slug": "backend-engineer",
        "skill_name": "Distributed Machine Learning",
        "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": 272,
      "existing_alias_text": "Scala",
      "input_term": "Scala",
      "matched_canonical": {
        "category_id": 6,
        "display_name": "Scala",
        "id": 102,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "scala",
        "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": 6258,
      "existing_alias_text": "Play Framework",
      "input_term": "Play Framework",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Play Framework",
        "id": 4422,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "play-framework",
        "sub_category_id": 35,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    },
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 4367,
      "existing_alias_text": "Futures",
      "input_term": "Futures",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "Futures",
        "id": 2912,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "futures",
        "sub_category_id": 7,
        "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": 3812,
      "existing_alias_text": "Promises",
      "input_term": "Promises",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "Promises",
        "id": 2475,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "promises",
        "sub_category_id": 1806,
        "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": 5340,
      "existing_alias_text": "Collections",
      "input_term": "Collections",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "Collections",
        "id": 3723,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "collections",
        "sub_category_id": 2874,
        "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": 6385,
      "existing_alias_text": "pattern matching",
      "input_term": "Pattern matching",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "pattern matching",
        "id": 4536,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "pattern-matching",
        "sub_category_id": 3483,
        "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": 2510,
      "existing_alias_text": "spark",
      "input_term": "Spark",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Apache Spark",
        "id": 1350,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "apache-spark",
        "sub_category_id": 1021,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    }
  ],
  "candidate_roles": [
    {
      "display_name": "Data Engineer",
      "id": 2,
      "rationale": null,
      "role_archetype": null,
      "slug": "data-engineer",
      "source": "db"
    },
    {
      "display_name": "ML Engineer",
      "id": 3,
      "rationale": null,
      "role_archetype": null,
      "slug": "ml-engineer",
      "source": "db"
    },
    {
      "display_name": "MLOps Engineer",
      "id": 16,
      "rationale": null,
      "role_archetype": null,
      "slug": "ml-ops-engineer",
      "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": "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": "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": "Ruby Backend Developer",
      "id": 85,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "ruby-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Flutter Developer",
      "id": 74,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "flutter-developer",
      "source": "db"
    },
    {
      "display_name": "Angular Frontend Developer",
      "id": 90,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "angular-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "Frontend Developer",
      "id": 7,
      "rationale": null,
      "role_archetype": null,
      "slug": "frontend-engineer",
      "source": "db"
    },
    {
      "display_name": "Ionic Developer",
      "id": 434,
      "rationale": null,
      "role_archetype": null,
      "slug": "ionic-developer",
      "source": "db"
    },
    {
      "display_name": "React Frontend Developer",
      "id": 89,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "react-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "React Native Developer",
      "id": 73,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "react-native-developer",
      "source": "db"
    },
    {
      "display_name": "Svelte Frontend Developer",
      "id": 92,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "svelte-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "Vue Frontend Developer",
      "id": 91,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "vue-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "Web Developer",
      "id": 25,
      "rationale": null,
      "role_archetype": null,
      "slug": "web-developer",
      "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 scala-backend-developer; The JD is centered on Scala-based backend/application development, data extraction, Play framework, and Spark pipelines, which aligns best with Backend Developer responsibilities.",
    "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": "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": "Scala",
      "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": "Programming Languages for ML Systems",
        "id": 39,
        "rationale": "Languages used to build training code, inference services, evaluation jobs, and ML glue code. This is the primary implementation surface for ML engineers across experimentation and productionization.",
        "slug": "programming-languages-for-ml-systems",
        "source": "db"
      },
      "input_skill": "Scala",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "ML Engineer",
          "id": 3,
          "rationale": null,
          "role_archetype": null,
          "slug": "ml-engineer",
          "source": "db"
        },
        {
          "display_name": "MLOps Engineer",
          "id": 16,
          "rationale": null,
          "role_archetype": null,
          "slug": "ml-ops-engineer",
          "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": "Play Framework",
      "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": "Concurrency and Parallel Processing",
        "id": 17,
        "rationale": "Programming techniques for handling multiple requests and background work safely and efficiently. Includes synchronization, async execution, and coordination of concurrent tasks.",
        "slug": "concurrency-and-parallel-processing",
        "source": "db"
      },
      "input_skill": "Futures",
      "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": "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": "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": "Dart Programming",
        "id": 311,
        "rationale": "Core implementation language used to build Flutter app logic, UI composition, and client-side feature code. This is the primary coding surface for shared cross-platform app development.",
        "slug": "dart-programming",
        "source": "db"
      },
      "input_skill": "Futures",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Flutter Developer",
          "id": 74,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "flutter-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "JavaScript and TypeScript",
        "id": 114,
        "rationale": "Primary implementation languages for browser client code, UI logic, and shared frontend utilities. These languages are the main coding surface for building interactive web experiences in this role.",
        "slug": "javascript-and-typescript",
        "source": "db"
      },
      "input_skill": "Promises",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Angular Frontend Developer",
          "id": 90,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "angular-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Frontend Developer",
          "id": 7,
          "rationale": null,
          "role_archetype": null,
          "slug": "frontend-engineer",
          "source": "db"
        },
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "Node.js Backend Developer",
          "id": 82,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "node-backend-developer",
          "source": "db"
        },
        {
          "display_name": "React Frontend Developer",
          "id": 89,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "React Native Developer",
          "id": 73,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-native-developer",
          "source": "db"
        },
        {
          "display_name": "Svelte Frontend Developer",
          "id": 92,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "svelte-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Vue Frontend Developer",
          "id": 91,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "vue-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Web Developer",
          "id": 25,
          "rationale": null,
          "role_archetype": null,
          "slug": "web-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Magento Data Models and Repositories",
        "id": 400,
        "rationale": "Platform data access patterns used to read and persist Magento entities safely. This is a coherent cluster because Magento development relies on entity models, repositories, collections, and resource models rather than ad hoc persistence.",
        "slug": "magento-data-models-and-repositories",
        "source": "db"
      },
      "input_skill": "Collections",
      "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": "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": "Pattern matching",
      "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": "ETL and ELT Tooling",
        "id": 24,
        "rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
        "slug": "etl-and-elt-tooling",
        "source": "db"
      },
      "input_skill": "Spark",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Data Engineer",
          "id": 2,
          "rationale": null,
          "role_archetype": null,
          "slug": "data-engineer",
          "source": "db"
        }
      ]
    }
  ],
  "input_final_skills": [
    "Scala",
    "Play Framework",
    "Futures",
    "Promises",
    "Option",
    "Collections",
    "Functional Programming",
    "Recursion",
    "Higher-order functions",
    "Immutable vs mutable",
    "Pattern matching",
    "Spark",
    "Distributed Machine Learning"
  ],
  "input_llm_skills": [
    "Scala",
    "Play Framework",
    "Futures",
    "Promises",
    "Option",
    "Collections",
    "Functional Programming",
    "Recursion",
    "Higher-order functions",
    "Immutable vs mutable",
    "Pattern matching",
    "Spark",
    "Distributed Machine Learning"
  ],
  "new_aliases_persisted": 0,
  "run_id": "53a5b5e6-26bc-4621-bdd8-4632995b3d9b",
  "skills_detail": [
    {
      "aliases_in_db": [
        {
          "alias_text": "Scala",
          "alias_type": "CANONICAL",
          "id": 272,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 6,
        "display_name": "Scala",
        "id": 102,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "scala",
        "sub_category_id": 96,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "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": "Scala",
          "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": "Programming Languages for ML Systems",
            "id": 39,
            "rationale": "Languages used to build training code, inference services, evaluation jobs, and ML glue code. This is the primary implementation surface for ML engineers across experimentation and productionization.",
            "slug": "programming-languages-for-ml-systems",
            "source": "db"
          },
          "input_skill": "Scala",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "ML Engineer",
              "id": 3,
              "rationale": null,
              "role_archetype": null,
              "slug": "ml-engineer",
              "source": "db"
            },
            {
              "display_name": "MLOps Engineer",
              "id": 16,
              "rationale": null,
              "role_archetype": null,
              "slug": "ml-ops-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Scala",
      "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": "Play Framework",
          "alias_type": "CANONICAL",
          "id": 6258,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Play 2",
          "alias_type": "VERSION",
          "id": 6259,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Play 3",
          "alias_type": "VERSION",
          "id": 6260,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Play Framework 2",
          "alias_type": "VERSION",
          "id": 6261,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Play Framework 2.x",
          "alias_type": "VERSION",
          "id": 6263,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Play Framework 3",
          "alias_type": "VERSION",
          "id": 6262,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Play Framework 3.x",
          "alias_type": "VERSION",
          "id": 6264,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Play Framework",
        "id": 4422,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "play-framework",
        "sub_category_id": 35,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "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": "Play Framework",
          "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": "Play Framework",
      "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": "Futures",
          "alias_type": "CANONICAL",
          "id": 4367,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "Futures",
        "id": 2912,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "futures",
        "sub_category_id": 7,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Concurrency and Parallel Processing",
            "id": 17,
            "rationale": "Programming techniques for handling multiple requests and background work safely and efficiently. Includes synchronization, async execution, and coordination of concurrent tasks.",
            "slug": "concurrency-and-parallel-processing",
            "source": "db"
          },
          "input_skill": "Futures",
          "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": "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": "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": "Dart Programming",
            "id": 311,
            "rationale": "Core implementation language used to build Flutter app logic, UI composition, and client-side feature code. This is the primary coding surface for shared cross-platform app development.",
            "slug": "dart-programming",
            "source": "db"
          },
          "input_skill": "Futures",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Flutter Developer",
              "id": 74,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "flutter-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Futures",
      "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": "Promises",
          "alias_type": "CANONICAL",
          "id": 3812,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "Promises",
        "id": 2475,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "promises",
        "sub_category_id": 1806,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "JavaScript and TypeScript",
            "id": 114,
            "rationale": "Primary implementation languages for browser client code, UI logic, and shared frontend utilities. These languages are the main coding surface for building interactive web experiences in this role.",
            "slug": "javascript-and-typescript",
            "source": "db"
          },
          "input_skill": "Promises",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Angular Frontend Developer",
              "id": 90,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "angular-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Frontend Developer",
              "id": 7,
              "rationale": null,
              "role_archetype": null,
              "slug": "frontend-engineer",
              "source": "db"
            },
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "Node.js Backend Developer",
              "id": 82,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "node-backend-developer",
              "source": "db"
            },
            {
              "display_name": "React Frontend Developer",
              "id": 89,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "React Native Developer",
              "id": 73,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-native-developer",
              "source": "db"
            },
            {
              "display_name": "Svelte Frontend Developer",
              "id": 92,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "svelte-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Vue Frontend Developer",
              "id": 91,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "vue-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Web Developer",
              "id": 25,
              "rationale": null,
              "role_archetype": null,
              "slug": "web-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Promises",
      "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": "Option",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Programming Languages",
          "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": "option",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Collections",
          "alias_type": "CANONICAL",
          "id": 5340,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "Collections",
        "id": 3723,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "collections",
        "sub_category_id": 2874,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Magento Data Models and Repositories",
            "id": 400,
            "rationale": "Platform data access patterns used to read and persist Magento entities safely. This is a coherent cluster because Magento development relies on entity models, repositories, collections, and resource models rather than ad hoc persistence.",
            "slug": "magento-data-models-and-repositories",
            "source": "db"
          },
          "input_skill": "Collections",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Magento Dev",
              "id": 231,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "magento-dev",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Collections",
      "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": "Functional Programming",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Programming Paradigms",
          "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": "functional-programming",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Recursion",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Programming Concepts",
          "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": "recursion",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Higher-order functions",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Programming Concepts",
          "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": "higher-order-functions",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Immutable vs mutable",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Programming Concepts",
          "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": "immutable-vs-mutable",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "pattern matching",
          "alias_type": "CANONICAL",
          "id": 6385,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "pattern matching",
        "id": 4536,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "pattern-matching",
        "sub_category_id": 3483,
        "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": "Pattern matching",
          "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"
            }
          ]
        }
      ],
      "input_skill": "Pattern matching",
      "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": "Apache Spark",
          "alias_type": "CANONICAL",
          "id": 2004,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "apache spark 3",
          "alias_type": "VERSION",
          "id": 2006,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "spark",
          "alias_type": "VERSION",
          "id": 2510,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "spark 3",
          "alias_type": "VERSION",
          "id": 2007,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "spark 3.x",
          "alias_type": "VERSION",
          "id": 2009,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "spark3",
          "alias_type": "VERSION",
          "id": 2008,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Apache Spark",
        "id": 1350,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "apache-spark",
        "sub_category_id": 1021,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "ETL and ELT Tooling",
            "id": 24,
            "rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
            "slug": "etl-and-elt-tooling",
            "source": "db"
          },
          "input_skill": "Spark",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Data Engineer",
              "id": 2,
              "rationale": null,
              "role_archetype": null,
              "slug": "data-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Spark",
      "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": "Distributed Machine Learning",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Machine Learning",
          "skill_nature": "CONCEPT",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "distributed-machine-learning",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    }
  ],
  "unmatched_skills": [
    "Option",
    "Functional Programming",
    "Recursion",
    "Higher-order functions",
    "Immutable vs mutable",
    "Distributed Machine Learning"
  ]
}
API 3 — final-role-output
{
  "chosen_role": {
    "display_name": "Backend Developer",
    "id": 1,
    "rationale": "Domain=Software Engineering \u2192 sub-role scala-backend-developer; The JD is centered on Scala-based backend/application development, data extraction, Play framework, and Spark pipelines, which aligns best with Backend Developer responsibilities.",
    "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": "Scala",
      "tag": "in_db"
    },
    {
      "skill": "Play Framework",
      "tag": "in_db"
    },
    {
      "skill": "Futures",
      "tag": "in_db"
    },
    {
      "skill": "Promises",
      "tag": "in_db"
    },
    {
      "skill": "Option",
      "tag": "new"
    },
    {
      "skill": "Collections",
      "tag": "in_db"
    },
    {
      "skill": "Functional Programming",
      "tag": "new"
    },
    {
      "skill": "Recursion",
      "tag": "new"
    },
    {
      "skill": "Higher-order functions",
      "tag": "new"
    },
    {
      "skill": "Immutable vs mutable",
      "tag": "new"
    },
    {
      "skill": "Pattern matching",
      "tag": "in_db"
    },
    {
      "skill": "Spark",
      "tag": "in_db"
    },
    {
      "skill": "Distributed Machine Learning",
      "tag": "new"
    }
  ],
  "llm_cost_api1_usd": null,
  "llm_cost_api2_usd": null,
  "llm_cost_api3_usd": null,
  "llm_cost_total_usd": null,
  "persistence": {
    "items": [
      {
        "chosen_role_id": 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": "Scala",
        "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": 102,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Programming Languages for ML Systems",
          "id": 39,
          "rationale": "Languages used to build training code, inference services, evaluation jobs, and ML glue code. This is the primary implementation surface for ML engineers across experimentation and productionization.",
          "slug": "programming-languages-for-ml-systems",
          "source": "db"
        },
        "dimension_id": 39,
        "input_skill": "Scala",
        "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": "ML Engineer",
            "id": 3,
            "rationale": null,
            "role_archetype": null,
            "slug": "ml-engineer",
            "source": "db"
          },
          {
            "display_name": "MLOps Engineer",
            "id": 16,
            "rationale": null,
            "role_archetype": null,
            "slug": "ml-ops-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 102,
        "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": "Play Framework",
        "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": 4422,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Concurrency and Parallel Processing",
          "id": 17,
          "rationale": "Programming techniques for handling multiple requests and background work safely and efficiently. Includes synchronization, async execution, and coordination of concurrent tasks.",
          "slug": "concurrency-and-parallel-processing",
          "source": "db"
        },
        "dimension_id": 17,
        "input_skill": "Futures",
        "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": "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": "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": 2912,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Dart Programming",
          "id": 311,
          "rationale": "Core implementation language used to build Flutter app logic, UI composition, and client-side feature code. This is the primary coding surface for shared cross-platform app development.",
          "slug": "dart-programming",
          "source": "db"
        },
        "dimension_id": 311,
        "input_skill": "Futures",
        "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": "Flutter Developer",
            "id": 74,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "flutter-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2912,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "JavaScript and TypeScript",
          "id": 114,
          "rationale": "Primary implementation languages for browser client code, UI logic, and shared frontend utilities. These languages are the main coding surface for building interactive web experiences in this role.",
          "slug": "javascript-and-typescript",
          "source": "db"
        },
        "dimension_id": 114,
        "input_skill": "Promises",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Angular Frontend Developer",
            "id": 90,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "angular-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          },
          {
            "display_name": "Node.js Backend Developer",
            "id": 82,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "node-backend-developer",
            "source": "db"
          },
          {
            "display_name": "React Frontend Developer",
            "id": 89,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "React Native Developer",
            "id": 73,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-native-developer",
            "source": "db"
          },
          {
            "display_name": "Svelte Frontend Developer",
            "id": 92,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "svelte-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Vue Frontend Developer",
            "id": 91,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "vue-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Web Developer",
            "id": 25,
            "rationale": null,
            "role_archetype": null,
            "slug": "web-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2475,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Magento Data Models and Repositories",
          "id": 400,
          "rationale": "Platform data access patterns used to read and persist Magento entities safely. This is a coherent cluster because Magento development relies on entity models, repositories, collections, and resource models rather than ad hoc persistence.",
          "slug": "magento-data-models-and-repositories",
          "source": "db"
        },
        "dimension_id": 400,
        "input_skill": "Collections",
        "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": 3723,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "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": "Pattern matching",
        "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": 4536,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 1,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "ETL and ELT Tooling",
          "id": 24,
          "rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
          "slug": "etl-and-elt-tooling",
          "source": "db"
        },
        "dimension_id": 24,
        "input_skill": "Spark",
        "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": 1350,
        "skill_tag": "in_db",
        "skipped_reason": null
      }
    ],
    "new_skills_created": 0,
    "role_dimension_saved": 0,
    "skill_dimension_saved": 0,
    "skipped": 0
  },
  "planner_output": null,
  "run_id": "53a5b5e6-26bc-4621-bdd8-4632995b3d9b"
}