← Back to history

Pipeline run

0b8d274d-4cc0-4f06-85f1-6c43d17d8e23

Pipeline LLM cost (USD)
API 1: $0.0038 API 2: $0.0002 API 3: $0.0000 Total: $0.0040

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 · Cross-platform feature development
Build and maintain cross-platform Flutter apps for Android/iOS, implementing screens, state management, and REST/API integrations, then testing, debugging, and tuning performance with backend and UI/UX teams.
"Build intuitive, scalable, and performance-driven mobile applications using Flutter for both Android and iOS platforms."
Tech stack maturity
Mainstream Modern
The stack centers on Flutter/Dart with Bloc/Provider and Firebase/SQLite, which are widely adopted modern mobile technologies rather than bleeding-edge or legacy tools.
AI index (0 = no AI use, 5 = totally AI-dependent · v2.1)
0.00 / 5
· Title match
· Has AI skill
· AI skill (primary)
· AI skill (secondary)
· On AI team
· Builds AI products
vocab breakdown (legacy)
Assistants (×1):
Frameworks (×2):
Models / concepts (×3):
Evidence — skills matched in JD (12)
Flutter Dart Android iOS REST Provider Bloc SQLite Firebase Mobile App Architecture Mobile App Lifecycle Third-party Libraries
Skill cluster (7 dimension groups, role-scoped)
Cross-Platform App Languages
Dart
Integration Protocols & Standards
REST
Local Persistence and Offline Behavior
SQLite
Screen Navigation and State
Bloc
UI Frameworks and Rendering
Flutter
Vendor Product Ecosystems
Firebase
Cross-cutting / unaligned
Android iOS Provider Mobile App Architecture Mobile App Lifecycle Third-party Libraries
Show KRA description ↓
• Design & Develop: Build intuitive, scalable, and performance-driven mobile applications using Flutter for both Android and iOS platforms. • Collaborate: Work closely with UI/UX designers, backend developers, and stakeholders to bring the app's vision to life. • Optimize & Debug: Ensure applications run smoothly, quickly resolving issues and optimizing for performance. • Integrate APIs: Connect the app with backend systems to fetch and display real-time data. • Test & Maintain: Regularly test apps for stability, fix bugs, and update features to meet evolving requirements. • Stay Updated: Keep up with Flutter advancements and integrate the latest best practices into app development. • Technical Skills: • Proficiency in Dart programming language and Flutter framework. • Strong understanding of mobile app architecture and lifecycle. • Experience in third-party libraries, RESTful APIs, and state management solutions like Provider or Bloc. • Familiarity with tools like Firebase, SQLite, or other backend services. • Experience: • 2–6 years of hands-on Flutter development experience. • Successfully deployed apps on Play Store and/or App Store. • Soft Skills: • Ability to adapt and deliver in a fast-paced environment. • Excellent problem-solving skills and attention to detail. • Strong communication and teamwork abilities. • Create Awesome Apps: The Flutter developer will make beautiful, easy-to-use apps that work on both Android and iOS. • Teamwork: They will work with designers (for how the app looks) and backend developers (who handle the app's data). • Fix Problems: If a part of the app breaks or runs slow, they'll figure out what's wrong and fix it. • Add Cool Features: For example, adding a "Top Deals" section to help travelers find great discounts. • Keep Things Running Smoothly: Test the app regularly to make sure it doesn’t crash, and update it when new tech or customer needs arise. • Bring Fresh Ideas: Suggest creative solutions to improve the app and make it stand out from competitors. problem solving, flutter, mobile app architecture, provider, ios, state management (provider, bloc), sqlite, mobile app lifecycle, app, bloc, third-party libraries, dart, firebase, restful apis, state management solutions, android

Signals

Skill ionic-developer
0.56
Alias flutter-developer
1.00
KRA flutter-developer
0.66
Status: completed Created: 2026-05-27T16:50:08.390159Z Updated: 2026-05-27T16:52:09.225779Z API 3 duration: 45264 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

Hybrid Mobile Developer

Flutter Developer

sub-role · 0.95 CASE A

slug: hybrid-mobile-developer · id: 11 · source: db · sub-role slug: flutter-developer

Multi-alias tie (4 roles at 1.0) resolved by TIER_A_KRA: Flutter Developer

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

We are hiring for our client - digivantics.

Position: Flutter Developer

Experience: 2–6 years

Location: Bangalore, Karnataka

Compensation: 8 - 10 LPA

Key Responsibilities

• Design & Develop: Build intuitive, scalable, and performance-driven mobile applications using Flutter for both Android and iOS platforms.
• Collaborate: Work closely with UI/UX designers, backend developers, and stakeholders to bring the app's vision to life.
• Optimize & Debug: Ensure applications run smoothly, quickly resolving issues and optimizing for performance.
• Integrate APIs: Connect the app with backend systems to fetch and display real-time data.
• Test & Maintain: Regularly test apps for stability, fix bugs, and update features to meet evolving requirements.
• Stay Updated: Keep up with Flutter advancements and integrate the latest best practices into app development.


Requirements

• Technical Skills:
• Proficiency in Dart programming language and Flutter framework.
• Strong understanding of mobile app architecture and lifecycle.
• Experience in third-party libraries, RESTful APIs, and state management solutions like Provider or Bloc.
• Familiarity with tools like Firebase, SQLite, or other backend services.
• Experience:
• 2–6 years of hands-on Flutter development experience.
• Successfully deployed apps on Play Store and/or App Store.
• Soft Skills:
• Ability to adapt and deliver in a fast-paced environment.
• Excellent problem-solving skills and attention to detail.
• Strong communication and teamwork abilities.


Roles & Responsibilities

• Create Awesome Apps: The Flutter developer will make beautiful, easy-to-use apps that work on both Android and iOS.
• Teamwork: They will work with designers (for how the app looks) and backend developers (who handle the app's data).
• Fix Problems: If a part of the app breaks or runs slow, they'll figure out what's wrong and fix it.
• Add Cool Features: For example, adding a "Top Deals" section to help travelers find great discounts.
• Keep Things Running Smoothly: Test the app regularly to make sure it doesn’t crash, and update it when new tech or customer needs arise.
• Bring Fresh Ideas: Suggest creative solutions to improve the app and make it stand out from competitors.


Skills: problem solving,flutter,mobile app architecture,provider,ios,state management (provider, bloc),sqlite,mobile app lifecycle,app,bloc,third-party libraries,dart,firebase,restful apis,state management solutions,android

Skills from this JD

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

Flutter Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Flutter id=1041 · flutter

Aliases — catalog

  • Flutter (CANONICAL) primary
  • Flutter 3 (VERSION)
  • Flutter 3.x (VERSION)
  • Flutter3 (VERSION)
  • flutter (VERSION)
  • flutter 3 (VERSION)
  • flutter 3.x (VERSION)
  • flutter3 (VERSION)

Context tags (catalog)

Animation Animations BuildContext Cross-Platform Cupertino Dart Firebase Integration Flutter CLI Flutter Desktop Flutter DevTools Flutter Packages Flutter SDK Flutter Web Hot Reload Material Design Pub.dev Responsive Design State Management Widget Tree Widgets

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Ui Framework
Vendor
Google
License
bsd
Year introduced
2015
Confidence
0.99
Version strategy
SEPARATE_ENTITY
Version tag
3.x

Maturity reasoning: Flutter appears in many mobile/full-stack job postings and is a common cross-platform UI framework; Google continues active releases and ecosystem growth, indicating broad adoption rather than niche use.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Flutter UI Framework Catalog dimension db id 312

    Library dimension (catalog)

    Roles linked in library: Flutter Developer

  • UI Frameworks and Rendering Catalog dimension db id 115

    Library dimension (catalog)

    Roles linked in library: Frontend Developer, Fullstack Developer, Fullstack Developer, Hybrid Mobile Developer, Ionic Developer, Web Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Flutter UI Framework
flutter-ui-framework
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
UI Frameworks and Rendering
ui-frameworks-and-rendering
Existing dimension (library) · Role↔dimension saved
Dart Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Dart id=1037 · dart

Aliases — catalog

  • Dart (CANONICAL) primary

Context tags (catalog)

BLoC Dart SDK Dart VM DartPad Flutter Flutter widgets Futures GetX Hot Reload Isolate Isolates JSON serialization Riverpod Streams async functional programming null safety object-oriented package package manager pub.dev widget widgets

Stored enrichment (catalog DB)

Category
Language
Sub-category
Programming Language
Vendor
Dart Team
License
bsd
Year introduced
2011
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: Dart is widely used in Flutter mobile/web jobs and appears regularly in JDs; Google continues active support and ecosystem growth, indicating broad hiring demand rather than niche use.

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)

  • Cross-Platform App Languages Catalog dimension db id 167

    Library dimension (catalog)

    Roles linked in library: Hybrid Mobile 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
Cross-Platform App Languages
cross-platform-app-languages
Existing dimension (library) · Role↔dimension saved
Dart Programming
dart-programming
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Android Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Android id=1595 · android

Aliases — catalog

  • Android (CANONICAL)

Context tags (catalog)

API Level Android SDK Android Studio Firebase Gradle Java Jetpack Kotlin LiveData MVVM Material Design RecyclerView Retrofit Room XML

Stored enrichment (catalog DB)

Category
Platform
Sub-category
Mobile Platform
Vendor
Google
License
apache_2
Year introduced
2008
Confidence
0.95
Version strategy
NOT_APPLICABLE

Maturity reasoning: Android appears in large volumes of mobile job postings and remains a standard platform in hiring pipelines; Google continues active platform releases and OEM ecosystem support, indicating broad adoption.

Skill profile (library / DB)

Skill nature
PLATFORM
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
9
Sub-category id
1201
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • React Frontend Development Catalog dimension db id 96

    Library dimension (catalog)

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
iOS Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: iOS id=1594 · ios

Aliases — catalog

  • iOS (CANONICAL)

Context tags (catalog)

App Store Auto Layout Cocoa Touch CocoaPods Core Data MVVM Objective-C Push Notifications RESTful APIs Swift SwiftUI TestFlight UIKit Xcode iCloud

Stored enrichment (catalog DB)

Category
Platform
Sub-category
Mobile Operating Platform
Vendor
Apple Inc.
License
proprietary
Year introduced
2007
Confidence
0.93
Version strategy
NOT_APPLICABLE

Maturity reasoning: iOS is a mainstream mobile platform with high JD volume for Swift/iOS roles across consumer and enterprise apps; Apple continues active platform support and releases, indicating broad adoption rather than niche use.

Skill profile (library / DB)

Skill nature
PLATFORM
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
9
Sub-category id
1200
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • React Frontend Development Catalog dimension db id 96

    Library dimension (catalog)

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
REST Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: REST id=11 · rest

Aliases — catalog

  • REST (CANONICAL) primary

Context tags (catalog)

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

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Api Architecture Style
Year introduced
2000
Confidence
0.88
Version strategy
NOT_APPLICABLE

Maturity reasoning: REST is a default API architecture in many job descriptions and is widely supported by major vendors/frameworks; OpenAPI and RESTful endpoints remain standard in hiring pipelines.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • API Design and Contracts Catalog dimension db id 3

    Library dimension (catalog)

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

  • API Interface and Contract Design Catalog dimension db id 289

    Library dimension (catalog)

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

  • Integration Protocols & Standards Catalog dimension db id 271

    Library dimension (catalog)

    Roles linked in library: Pega Developer

  • Standards, Protocols & Compliance Catalog dimension db id 452

    Library dimension (catalog)

    Roles linked in library: Engineering Manager, Sitecore Dev

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
API Design and Contracts
api-design-and-contracts
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
API Interface and Contract Design
api-interface-and-contract-design
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Integration Protocols & Standards
integration-protocols-standards
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Standards, Protocols & Compliance
standards-protocols-compliance
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Provider Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Provider id=2922 · provider

Aliases — catalog

  • Provider (CANONICAL) primary

Context tags (catalog)

Context API MobX React React Query Redux component tree data fetching global state hooks immutable state performance optimization provider pattern state lifting state management useReducer

Stored enrichment (catalog DB)

Category
Framework
Sub-category
State Management Framework
Vendor
null
License
unknown
Confidence
0.88
Version strategy
NOT_APPLICABLE

Maturity reasoning: Provider is a Flutter state-management pattern/framework seen in some Dart/Flutter JDs, but far less often than Riverpod/BLoC; market listings and community docs show it as a common starter choice, not a broad hiring staple.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • State Management Patterns Catalog dimension db id 116

    Library dimension (catalog)

    Roles linked in library: Angular Frontend Developer, Flutter Developer, Frontend Developer, Ionic Developer, React Frontend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
State Management Patterns
state-management-patterns
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Bloc Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Bloc id=2726 · bloc

Aliases — catalog

  • Bloc (CANONICAL) primary

Context tags (catalog)

Architecture Asynchronous BLoC pattern Cubit Dart Dependency injection Event-driven Flutter Performance optimization Provider Reactive programming RxDart State management Stream Testing UI separation UI updates Widgets

Stored enrichment (catalog DB)

Category
Framework
Sub-category
State Management Framework
Vendor
Felix Angelov
License
mit
Year introduced
2018
Confidence
0.90
Version strategy
NOT_APPLICABLE

Maturity reasoning: Bloc is widely listed in Flutter job descriptions and has strong GitHub/community adoption as a standard state-management choice alongside Provider/Riverpod.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Screen Navigation and State Catalog dimension db id 83

    Library dimension (catalog)

    Roles linked in library: Android Developer, Flutter Developer, Fullstack Developer, Fullstack Developer, Hybrid Mobile Developer, Ionic Developer, Native Mobile Developer, React Native Developer, iOS Developer

  • State Management Patterns Catalog dimension db id 116

    Library dimension (catalog)

    Roles linked in library: Angular Frontend Developer, Flutter Developer, Frontend Developer, Ionic Developer, React Frontend Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Screen Navigation and State
screen-navigation-and-state
Existing dimension (library) · Role↔dimension saved
State Management Patterns
state-management-patterns
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
SQLite Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: SQLite id=460 · sqlite

Aliases — catalog

  • SQLite (CANONICAL) primary

Context tags (catalog)

ACID FTS5 JSON1 ORM SQL SQL commands SQLAlchemy SQLCipher SQLite Manager SQLite3 VACUUM WAL mode backup cross-platform data integrity data persistence data types database embedded embedded database file-based foreign key foreign keys in-memory database indexing lightweight local storage migration mobile app pragma query schema transaction transactions

Stored enrichment (catalog DB)

Category
Datastore
Sub-category
Embedded Relational Datastore
Vendor
SQLite Consortium
License
other_open
Year introduced
2000
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: SQLite appears in many job descriptions for mobile, embedded, and local-first apps; it’s a standard embedded relational datastore with strong GitHub usage and no vendor sunset or replacement trend.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Local Persistence and Offline Behavior Catalog dimension db id 85

    Library dimension (catalog)

    Roles linked in library: Android Developer, Flutter Developer, Hybrid Mobile Developer, Native Mobile Developer, React Native Developer, iOS Developer

  • Offline Storage and Sync Catalog dimension db id 378

    Library dimension (catalog)

    Roles linked in library: Ionic Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Local Persistence and Offline Behavior
local-persistence-and-offline-behavior
Existing dimension (library) · Role↔dimension saved
Offline Storage and Sync
offline-storage-and-sync
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Firebase Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Firebase id=2468 · firebase

Aliases — catalog

  • Firebase (CANONICAL) primary

Context tags (catalog)

A/B Testing Analytics App Distribution Authentication Cloud Functions Cloud Messaging Crashlytics Dynamic Links Emulator Suite Firebase Analytics Firebase SDK Firestore Firestore Security Rules Hosting Performance Monitoring Realtime Database Remote Config

Stored enrichment (catalog DB)

Category
Platform
Sub-category
Backend Platform
Vendor
Google
License
proprietary
Year introduced
2011
Confidence
0.98
Version strategy
NOT_APPLICABLE

Maturity reasoning: Firebase appears frequently in mobile/web job postings and Google continues active product support; it remains a common BaaS choice alongside AWS Amplify and Supabase, not a sunset technology.

Skill profile (library / DB)

Skill nature
PLATFORM
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
9
Sub-category id
1865
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Cloud Platforms & Managed Services Catalog dimension db id 221

    Library dimension (catalog)

    Roles linked in library: Fullstack Developer, Go Backend Developer, Node.js Backend Developer

  • Vendor Product Ecosystems Catalog dimension db id 385

    Library dimension (catalog)

    Roles linked in library: Ionic Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Cloud Platforms & Managed Services
cloud-platforms-managed-services
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Vendor Product Ecosystems
vendor-product-ecosystems
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Mobile App Architecture Secondary 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
Concepts
Sub-category
general
Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Mobile App Lifecycle Secondary 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
Concepts
Sub-category
general
Skill nature
CONCEPT
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Third-party Libraries Secondary 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
Development Tools
Sub-category
general
Skill nature
TOOL
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
Flutter in_db
Flutter UI Framework
flutter-ui-framework
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Flutter in_db
UI Frameworks and Rendering
ui-frameworks-and-rendering
Existing dimension (library) · Role↔dimension saved
Dart in_db
Cross-Platform App Languages
cross-platform-app-languages
Existing dimension (library) · Role↔dimension saved
Dart in_db
Dart Programming
dart-programming
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Android in_db
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
iOS in_db
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
REST in_db
API Design and Contracts
api-design-and-contracts
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
REST in_db
API Interface and Contract Design
api-interface-and-contract-design
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
REST in_db
Integration Protocols & Standards
integration-protocols-standards
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
REST in_db
Standards, Protocols & Compliance
standards-protocols-compliance
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Provider in_db
State Management Patterns
state-management-patterns
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Bloc in_db
Screen Navigation and State
screen-navigation-and-state
Existing dimension (library) · Role↔dimension saved
Bloc in_db
State Management Patterns
state-management-patterns
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
SQLite in_db
Local Persistence and Offline Behavior
local-persistence-and-offline-behavior
Existing dimension (library) · Role↔dimension saved
SQLite in_db
Offline Storage and Sync
offline-storage-and-sync
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Firebase in_db
Cloud Platforms & Managed Services
cloud-platforms-managed-services
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Firebase in_db
Vendor Product Ecosystems
vendor-product-ecosystems
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)

Library artifacts (this run)

Kind Detail DB id
canonical_skill_proposed Mobile App Architecture | type=Concepts subtype=general nature=CONCEPT lifespan=EVERGREEN
canonical_skill_proposed Mobile App Lifecycle | type=Concepts subtype=general nature=CONCEPT lifespan=MULTI_YEAR
canonical_skill_proposed Third-party Libraries | type=Development Tools subtype=general nature=TOOL lifespan=MULTI_YEAR
nano JD Parser — gpt-4.1-nano click to toggle
RoleFlutter Developer
Companydigivantics
Experience2–6 years
CTC{'max': 10, 'min': 8, 'raw': '8 - 10 LPA', 'period': 'annual', 'currency': 'INR'}
DomainIT Services & Consulting
Location Bangalore, India (null)
JD type pass
Show raw JSON
{
  "JD_type": "pass",
  "about_company": null,
  "certifications": [],
  "company_name": "digivantics",
  "ctc": {
    "currency": "INR",
    "max": 10,
    "min": 8,
    "period": "annual",
    "raw": "8 - 10 LPA"
  },
  "domain": {
    "primary": {
      "aliases": [],
      "domain": "IT Services \u0026 Consulting"
    },
    "secondary": null
  },
  "education": [],
  "experience": {
    "max": 6,
    "min": 2,
    "raw": "2\u20136 years"
  },
  "job_locations": [
    {
      "aliases": [
        "Bengaluru"
      ],
      "city": "Bangalore",
      "country": "India",
      "state": "Karnataka",
      "work_mode": "null"
    }
  ],
  "role": "Flutter Developer",
  "role_aliases": [
    "Mobile Developer",
    "Flutter Engineer",
    "Dart Developer"
  ],
  "role_archetype": "Engineering",
  "roles_and_responsibilities": [
    {
      "bullet_count": 6,
      "heading": "Key Responsibilities",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 Design \u0026 Develop: Build intuitive,",
        "last_5_words": "best practices into app development."
      },
      "text": "\u2022 Design \u0026 Develop: Build intuitive, scalable, and performance-driven mobile applications using Flutter for both Android and iOS platforms.\n\u2022 Collaborate: Work closely with UI/UX designers, backend developers, and stakeholders to bring the app\u0027s vision to life.\n\u2022 Optimize \u0026 Debug: Ensure applications run smoothly, quickly resolving issues and optimizing for performance.\n\u2022 Integrate APIs: Connect the app with backend systems to fetch and display real-time data.\n\u2022 Test \u0026 Maintain: Regularly test apps for stability, fix bugs, and update features to meet evolving requirements.\n\u2022 Stay Updated: Keep up with Flutter advancements and integrate the latest best practices into app development.",
      "word_count": 83
    },
    {
      "bullet_count": 11,
      "heading": "Requirements",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 Technical Skills:\n\u2022 Proficiency in Dart",
        "last_5_words": "and teamwork abilities."
      },
      "text": "\u2022 Technical Skills:\n\u2022 Proficiency in Dart programming language and Flutter framework.\n\u2022 Strong understanding of mobile app architecture and lifecycle.\n\u2022 Experience in third-party libraries, RESTful APIs, and state management solutions like Provider or Bloc.\n\u2022 Familiarity with tools like Firebase, SQLite, or other backend services.\n\u2022 Experience:\n\u2022 2\u20136 years of hands-on Flutter development experience.\n\u2022 Successfully deployed apps on Play Store and/or App Store.\n\u2022 Soft Skills:\n\u2022 Ability to adapt and deliver in a fast-paced environment.\n\u2022 Excellent problem-solving skills and attention to detail.\n\u2022 Strong communication and teamwork abilities.",
      "word_count": 118
    },
    {
      "bullet_count": 6,
      "heading": "Roles \u0026 Responsibilities",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "\u2022 Create Awesome Apps: The Flutter",
        "last_5_words": "stand out from competitors."
      },
      "text": "\u2022 Create Awesome Apps: The Flutter developer will make beautiful, easy-to-use apps that work on both Android and iOS.\n\u2022 Teamwork: They will work with designers (for how the app looks) and backend developers (who handle the app\u0027s data).\n\u2022 Fix Problems: If a part of the app breaks or runs slow, they\u0027ll figure out what\u0027s wrong and fix it.\n\u2022 Add Cool Features: For example, adding a \"Top Deals\" section to help travelers find great discounts.\n\u2022 Keep Things Running Smoothly: Test the app regularly to make sure it doesn\u2019t crash, and update it when new tech or customer needs arise.\n\u2022 Bring Fresh Ideas: Suggest creative solutions to improve the app and make it stand out from competitors.",
      "word_count": 114
    },
    {
      "bullet_count": 0,
      "heading": "Skills",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "problem solving, flutter, mobile app",
        "last_5_words": "state management solutions, android"
      },
      "text": "problem solving, flutter, mobile app architecture, provider, ios, state management (provider, bloc), sqlite, mobile app lifecycle, app, bloc, third-party libraries, dart, firebase, restful apis, state management solutions, android",
      "word_count": 27
    }
  ],
  "urls": []
}
API 1 — extract-from-jd click to toggle
{
  "final_skills": [
    {
      "is_primary": true,
      "skill_name": "Flutter"
    },
    {
      "is_primary": true,
      "skill_name": "Dart"
    },
    {
      "is_primary": true,
      "skill_name": "Android"
    },
    {
      "is_primary": true,
      "skill_name": "iOS"
    },
    {
      "is_primary": true,
      "skill_name": "REST"
    },
    {
      "is_primary": true,
      "skill_name": "Provider"
    },
    {
      "is_primary": true,
      "skill_name": "Bloc"
    },
    {
      "is_primary": true,
      "skill_name": "SQLite"
    },
    {
      "is_primary": true,
      "skill_name": "Firebase"
    },
    {
      "is_primary": false,
      "skill_name": "Mobile App Architecture"
    },
    {
      "is_primary": false,
      "skill_name": "Mobile App Lifecycle"
    },
    {
      "is_primary": false,
      "skill_name": "Third-party Libraries"
    }
  ],
  "jd_role": {
    "display_name": "Flutter Developer",
    "rationale": null,
    "role_aliases": [
      "Mobile Developer",
      "Flutter Engineer",
      "Dart Developer"
    ],
    "role_archetype": "Engineering",
    "slug": ""
  },
  "nano_parsed": {
    "JD_type": "pass",
    "about_company": null,
    "certifications": [],
    "company_name": "digivantics",
    "ctc": {
      "currency": "INR",
      "max": 10,
      "min": 8,
      "period": "annual",
      "raw": "8 - 10 LPA"
    },
    "domain": {
      "primary": {
        "aliases": [],
        "domain": "IT Services \u0026 Consulting"
      },
      "secondary": null
    },
    "education": [],
    "experience": {
      "max": 6,
      "min": 2,
      "raw": "2\u20136 years"
    },
    "job_locations": [
      {
        "aliases": [
          "Bengaluru"
        ],
        "city": "Bangalore",
        "country": "India",
        "state": "Karnataka",
        "work_mode": "null"
      }
    ],
    "role": "Flutter Developer",
    "role_aliases": [
      "Mobile Developer",
      "Flutter Engineer",
      "Dart Developer"
    ],
    "role_archetype": "Engineering",
    "roles_and_responsibilities": [
      {
        "bullet_count": 6,
        "heading": "Key Responsibilities",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 Design \u0026 Develop: Build intuitive,",
          "last_5_words": "best practices into app development."
        },
        "text": "\u2022 Design \u0026 Develop: Build intuitive, scalable, and performance-driven mobile applications using Flutter for both Android and iOS platforms.\n\u2022 Collaborate: Work closely with UI/UX designers, backend developers, and stakeholders to bring the app\u0027s vision to life.\n\u2022 Optimize \u0026 Debug: Ensure applications run smoothly, quickly resolving issues and optimizing for performance.\n\u2022 Integrate APIs: Connect the app with backend systems to fetch and display real-time data.\n\u2022 Test \u0026 Maintain: Regularly test apps for stability, fix bugs, and update features to meet evolving requirements.\n\u2022 Stay Updated: Keep up with Flutter advancements and integrate the latest best practices into app development.",
        "word_count": 83
      },
      {
        "bullet_count": 11,
        "heading": "Requirements",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 Technical Skills:\n\u2022 Proficiency in Dart",
          "last_5_words": "and teamwork abilities."
        },
        "text": "\u2022 Technical Skills:\n\u2022 Proficiency in Dart programming language and Flutter framework.\n\u2022 Strong understanding of mobile app architecture and lifecycle.\n\u2022 Experience in third-party libraries, RESTful APIs, and state management solutions like Provider or Bloc.\n\u2022 Familiarity with tools like Firebase, SQLite, or other backend services.\n\u2022 Experience:\n\u2022 2\u20136 years of hands-on Flutter development experience.\n\u2022 Successfully deployed apps on Play Store and/or App Store.\n\u2022 Soft Skills:\n\u2022 Ability to adapt and deliver in a fast-paced environment.\n\u2022 Excellent problem-solving skills and attention to detail.\n\u2022 Strong communication and teamwork abilities.",
        "word_count": 118
      },
      {
        "bullet_count": 6,
        "heading": "Roles \u0026 Responsibilities",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "\u2022 Create Awesome Apps: The Flutter",
          "last_5_words": "stand out from competitors."
        },
        "text": "\u2022 Create Awesome Apps: The Flutter developer will make beautiful, easy-to-use apps that work on both Android and iOS.\n\u2022 Teamwork: They will work with designers (for how the app looks) and backend developers (who handle the app\u0027s data).\n\u2022 Fix Problems: If a part of the app breaks or runs slow, they\u0027ll figure out what\u0027s wrong and fix it.\n\u2022 Add Cool Features: For example, adding a \"Top Deals\" section to help travelers find great discounts.\n\u2022 Keep Things Running Smoothly: Test the app regularly to make sure it doesn\u2019t crash, and update it when new tech or customer needs arise.\n\u2022 Bring Fresh Ideas: Suggest creative solutions to improve the app and make it stand out from competitors.",
        "word_count": 114
      },
      {
        "bullet_count": 0,
        "heading": "Skills",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "problem solving, flutter, mobile app",
          "last_5_words": "state management solutions, android"
        },
        "text": "problem solving, flutter, mobile app architecture, provider, ios, state management (provider, bloc), sqlite, mobile app lifecycle, app, bloc, third-party libraries, dart, firebase, restful apis, state management solutions, android",
        "word_count": 27
      }
    ],
    "urls": []
  },
  "rejected": false,
  "rejection_reason": null,
  "run_id": "0b8d274d-4cc0-4f06-85f1-6c43d17d8e23",
  "stage3_signals": {
    "alias_found": true,
    "alias_match_roles": [
      {
        "display_name": "Flutter Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 74,
        "score": 1.0,
        "slug": "flutter-developer",
        "total_count": null
      },
      {
        "display_name": "Hybrid Mobile Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 11,
        "score": 1.0,
        "slug": "hybrid-mobile-developer",
        "total_count": null
      },
      {
        "display_name": "Android Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 4,
        "score": 1.0,
        "slug": "android-engineer",
        "total_count": null
      },
      {
        "display_name": "Native Mobile Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 75,
        "score": 1.0,
        "slug": "native-mobile-developer",
        "total_count": null
      }
    ],
    "kra_match_roles": [
      {
        "display_name": "Flutter Developer",
        "kra_matches": [
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "Collaborate: Work closely with UI/UX designers, backend developers, and stakeholders to bring the app\u0027s vision to life.",
            "similarity": 0.7232
          },
          {
            "kra_text": "integrate external APIs and data sources",
            "sentence": "Integrate APIs: Connect the app with backend systems to fetch and display real-time data.",
            "similarity": 0.6552
          },
          {
            "kra_text": "collaborate with design, product, and backend teams",
            "sentence": "Teamwork: They will work with designers (for how the app looks) and backend developers (who handle the app\u0027s data).",
            "similarity": 0.6079
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 74,
        "score": 0.6621,
        "slug": "flutter-developer",
        "total_count": null
      },
      {
        "display_name": "Frontend Developer",
        "kra_matches": [
          {
            "kra_text": "Collaborates with UX designers to refine interaction details, animations, responsive breakpoints, and micro-interaction behavior.",
            "sentence": "Collaborate: Work closely with UI/UX designers, backend developers, and stakeholders to bring the app\u0027s vision to life.",
            "similarity": 0.642
          },
          {
            "kra_text": "Optimizes web application performance through code splitting, lazy loading, tree shaking, bundle size reduction, and Core Web Vitals improvements.",
            "sentence": "Optimize \u0026 Debug: Ensure applications run smoothly, quickly resolving issues and optimizing for performance.",
            "similarity": 0.5822
          },
          {
            "kra_text": "Integrates frontend views with RESTful or GraphQL backend APIs, handling async data fetching, loading states, error boundaries, and cache invalidation.",
            "sentence": "Integrate APIs: Connect the app with backend systems to fetch and display real-time data.",
            "similarity": 0.5586
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 7,
        "score": 0.5943,
        "slug": "frontend-engineer",
        "total_count": null
      },
      {
        "display_name": "Hybrid Mobile Developer",
        "kra_matches": [
          {
            "kra_text": "Implements cross-platform mobile features using React Native, Flutter, or Ionic targeting both iOS and Android platforms from a shared codebase.",
            "sentence": "Design \u0026 Develop: Build intuitive, scalable, and performance-driven mobile applications using Flutter for both Android and iOS platforms.",
            "similarity": 0.6161
          },
          {
            "kra_text": "Implements cross-platform mobile features using React Native, Flutter, or Ionic targeting both iOS and Android platforms from a shared codebase.",
            "sentence": "Create Awesome Apps: The Flutter developer will make beautiful, easy-to-use apps that work on both Android and iOS.",
            "similarity": 0.5693
          },
          {
            "kra_text": "Integrates cross-platform mobile apps with REST and GraphQL backend APIs, handling JWT authentication, token refresh, and error recovery.",
            "sentence": "Integrate APIs: Connect the app with backend systems to fetch and display real-time data.",
            "similarity": 0.5518
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 11,
        "score": 0.5791,
        "slug": "hybrid-mobile-developer",
        "total_count": null
      },
      {
        "display_name": "React Native Developer",
        "kra_matches": [
          {
            "kra_text": "integrate backend APIs",
            "sentence": "Integrate APIs: Connect the app with backend systems to fetch and display real-time data.",
            "similarity": 0.7189
          },
          {
            "kra_text": "maintain code quality",
            "sentence": "Test \u0026 Maintain: Regularly test apps for stability, fix bugs, and update features to meet evolving requirements.",
            "similarity": 0.5074
          },
          {
            "kra_text": "Implement mobile screens and flows",
            "sentence": "Design \u0026 Develop: Build intuitive, scalable, and performance-driven mobile applications using Flutter for both Android and iOS platforms.",
            "similarity": 0.4993
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 73,
        "score": 0.5752,
        "slug": "react-native-developer",
        "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": "Collaborate: Work closely with UI/UX designers, backend developers, and stakeholders to bring the app\u0027s vision to life.",
            "similarity": 0.6325
          },
          {
            "kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
            "sentence": "Teamwork: They will work with designers (for how the app looks) and backend developers (who handle the app\u0027s data).",
            "similarity": 0.5529
          },
          {
            "kra_text": "Optimizes application performance from database query efficiency through API response latency to frontend rendering speed and bundle size.",
            "sentence": "Optimize \u0026 Debug: Ensure applications run smoothly, quickly resolving issues and optimizing for performance.",
            "similarity": 0.5392
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 15,
        "score": 0.5749,
        "slug": "full-stack-engineer",
        "total_count": null
      }
    ],
    "skill_match_roles": [
      {
        "display_name": "Ionic Developer",
        "kra_matches": null,
        "matched_count": 5,
        "matched_skills": [
          "Bloc",
          "Firebase",
          "Flutter",
          "Provider",
          "SQLite"
        ],
        "role_id": 434,
        "score": 0.5556,
        "slug": "ionic-developer",
        "total_count": 9
      },
      {
        "display_name": "Flutter Developer",
        "kra_matches": null,
        "matched_count": 5,
        "matched_skills": [
          "Bloc",
          "Dart",
          "Flutter",
          "Provider",
          "SQLite"
        ],
        "role_id": 74,
        "score": 0.5556,
        "slug": "flutter-developer",
        "total_count": 9
      },
      {
        "display_name": "Fullstack Developer",
        "kra_matches": null,
        "matched_count": 4,
        "matched_skills": [
          "Bloc",
          "Firebase",
          "Flutter",
          "REST"
        ],
        "role_id": 15,
        "score": 0.4444,
        "slug": "full-stack-engineer",
        "total_count": 9
      },
      {
        "display_name": "Hybrid Mobile Developer",
        "kra_matches": null,
        "matched_count": 4,
        "matched_skills": [
          "Bloc",
          "Dart",
          "Flutter",
          "SQLite"
        ],
        "role_id": 11,
        "score": 0.4444,
        "slug": "hybrid-mobile-developer",
        "total_count": 9
      },
      {
        "display_name": "Frontend Developer",
        "kra_matches": null,
        "matched_count": 3,
        "matched_skills": [
          "Bloc",
          "Flutter",
          "Provider"
        ],
        "role_id": 7,
        "score": 0.3333,
        "slug": "frontend-engineer",
        "total_count": 9
      }
    ]
  },
  "stage4_decision": {
    "alias_collision_detected": true,
    "case": "A",
    "chosen_role": {
      "display_name": "Hybrid Mobile Developer",
      "kra_matches": null,
      "matched_count": null,
      "matched_skills": null,
      "role_id": 11,
      "score": 1.0,
      "slug": "hybrid-mobile-developer",
      "total_count": null
    },
    "confidence": 0.95,
    "is_new_role": false,
    "llm2_fired": false,
    "llm2_reasoning": null,
    "matched_dimensions": [],
    "matched_kras": [],
    "matched_skills": [],
    "new_role_display_name": null,
    "new_role_slug": null,
    "queued": false,
    "reasoning": "Multi-alias tie (4 roles at 1.0) resolved by TIER_A_KRA: Flutter Developer",
    "sub_role": {
      "confidence": 0.95,
      "display_name": "Flutter Developer",
      "reasoning": "hoisted from chosen leaf (case=A)",
      "role_id": 74,
      "slug": "flutter-developer"
    }
  },
  "stage5_updates": null
}
API 2 — extract-details
{
  "alias_matches": [
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 1659,
      "existing_alias_text": "flutter",
      "input_term": "Flutter",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Flutter",
        "id": 1041,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "flutter",
        "sub_category_id": 341,
        "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": 1652,
      "existing_alias_text": "Dart",
      "input_term": "Dart",
      "matched_canonical": {
        "category_id": 6,
        "display_name": "Dart",
        "id": 1037,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "dart",
        "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": 2541,
      "existing_alias_text": "Android",
      "input_term": "Android",
      "matched_canonical": {
        "category_id": 9,
        "display_name": "Android",
        "id": 1595,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "android",
        "sub_category_id": 1201,
        "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": 2540,
      "existing_alias_text": "iOS",
      "input_term": "iOS",
      "matched_canonical": {
        "category_id": 9,
        "display_name": "iOS",
        "id": 1594,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "ios",
        "sub_category_id": 1200,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    },
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 106,
      "existing_alias_text": "REST",
      "input_term": "REST",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "REST",
        "id": 11,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "rest",
        "sub_category_id": 2122,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    },
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 4380,
      "existing_alias_text": "Provider",
      "input_term": "Provider",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Provider",
        "id": 2922,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "provider",
        "sub_category_id": 2090,
        "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": 4170,
      "existing_alias_text": "Bloc",
      "input_term": "Bloc",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Bloc",
        "id": 2726,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "bloc",
        "sub_category_id": 2090,
        "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": 786,
      "existing_alias_text": "SQLite",
      "input_term": "SQLite",
      "matched_canonical": {
        "category_id": 3,
        "display_name": "SQLite",
        "id": 460,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "sqlite",
        "sub_category_id": 2714,
        "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": 3773,
      "existing_alias_text": "Firebase",
      "input_term": "Firebase",
      "matched_canonical": {
        "category_id": 9,
        "display_name": "Firebase",
        "id": 2468,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "firebase",
        "sub_category_id": 1865,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    }
  ],
  "candidate_roles": [
    {
      "display_name": "Flutter Developer",
      "id": 74,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "flutter-developer",
      "source": "db"
    },
    {
      "display_name": "Frontend Developer",
      "id": 7,
      "rationale": null,
      "role_archetype": null,
      "slug": "frontend-engineer",
      "source": "db"
    },
    {
      "display_name": "Fullstack Developer",
      "id": 15,
      "rationale": null,
      "role_archetype": null,
      "slug": "full-stack-engineer",
      "source": "db"
    },
    {
      "display_name": "Fullstack Developer",
      "id": 435,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "fullstack-developer",
      "source": "db"
    },
    {
      "display_name": "Hybrid Mobile Developer",
      "id": 11,
      "rationale": null,
      "role_archetype": null,
      "slug": "hybrid-mobile-developer",
      "source": "db"
    },
    {
      "display_name": "Ionic Developer",
      "id": 434,
      "rationale": null,
      "role_archetype": null,
      "slug": "ionic-developer",
      "source": "db"
    },
    {
      "display_name": "Web Developer",
      "id": 25,
      "rationale": null,
      "role_archetype": null,
      "slug": "web-developer",
      "source": "db"
    },
    {
      "display_name": "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": ".NET Backend Developer",
      "id": 83,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "dotnet-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Go Backend Developer",
      "id": 81,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "go-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Kotlin Backend Developer",
      "id": 84,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "kotlin-server-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Node.js Backend Developer",
      "id": 82,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "node-backend-developer",
      "source": "db"
    },
    {
      "display_name": "PHP Backend Developer",
      "id": 86,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "php-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Python Backend Developer",
      "id": 80,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "python-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Ruby Backend Developer",
      "id": 85,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "ruby-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Scala Backend Developer",
      "id": 87,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "scala-backend-developer",
      "source": "db"
    },
    {
      "display_name": "Pega Developer",
      "id": 24,
      "rationale": null,
      "role_archetype": null,
      "slug": "pega-developer",
      "source": "db"
    },
    {
      "display_name": "Engineering Manager",
      "id": 121,
      "rationale": null,
      "role_archetype": null,
      "slug": "engineering-manager",
      "source": "db"
    },
    {
      "display_name": "Sitecore Dev",
      "id": 233,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "sitecore-dev",
      "source": "db"
    },
    {
      "display_name": "Angular Frontend Developer",
      "id": 90,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "angular-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "React Frontend Developer",
      "id": 89,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "react-frontend-developer",
      "source": "db"
    },
    {
      "display_name": "Android Developer",
      "id": 4,
      "rationale": null,
      "role_archetype": null,
      "slug": "android-engineer",
      "source": "db"
    },
    {
      "display_name": "Native Mobile Developer",
      "id": 75,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "native-mobile-developer",
      "source": "db"
    },
    {
      "display_name": "React Native Developer",
      "id": 73,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "react-native-developer",
      "source": "db"
    },
    {
      "display_name": "iOS Developer",
      "id": 6,
      "rationale": null,
      "role_archetype": null,
      "slug": "ios-engineer",
      "source": "db"
    }
  ],
  "chosen_role": {
    "display_name": "Hybrid Mobile Developer",
    "id": 11,
    "rationale": "Multi-alias tie (4 roles at 1.0) resolved by TIER_A_KRA: Flutter Developer",
    "role_archetype": null,
    "slug": "hybrid-mobile-developer",
    "source": "db"
  },
  "dimensions": [
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Flutter UI Framework",
        "id": 312,
        "rationale": "Flutter framework primitives used to build screens, reusable components, and interactive client experiences. This cluster is coherent because Flutter developers spend much of their time composing widgets and managing rendering behavior.",
        "slug": "flutter-ui-framework",
        "source": "db"
      },
      "input_skill": "Flutter",
      "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": "UI Frameworks and Rendering",
        "id": 115,
        "rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
        "slug": "ui-frameworks-and-rendering",
        "source": "db"
      },
      "input_skill": "Flutter",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Frontend Developer",
          "id": 7,
          "rationale": null,
          "role_archetype": null,
          "slug": "frontend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 435,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "fullstack-developer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "Web Developer",
          "id": 25,
          "rationale": null,
          "role_archetype": null,
          "slug": "web-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Cross-Platform App Languages",
        "id": 167,
        "rationale": "Languages used to implement shared mobile features across iOS and Android from a common codebase. This is the primary coding surface for hybrid app logic, UI behavior, and platform-specific branching.",
        "slug": "cross-platform-app-languages",
        "source": "db"
      },
      "input_skill": "Dart",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-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": "Dart",
      "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": "React Frontend Development",
        "id": 96,
        "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
        "slug": "d_init_01",
        "source": "db"
      },
      "input_skill": "Android",
      "llm_role": null,
      "roles_from_db": []
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "React Frontend Development",
        "id": 96,
        "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
        "slug": "d_init_01",
        "source": "db"
      },
      "input_skill": "iOS",
      "llm_role": null,
      "roles_from_db": []
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "API Design and Contracts",
        "id": 3,
        "rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
        "slug": "api-design-and-contracts",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Backend Developer",
          "id": 1,
          "rationale": null,
          "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
          "slug": "backend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 435,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "fullstack-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "API Interface and Contract Design",
        "id": 289,
        "rationale": "Designing backend service interfaces and contracts that other systems consume, including endpoint and operation shape, request/response payloads, schema and validation, pagination, filtering, idempotency, versioning, status codes, and backward compatibility across REST, GraphQL, gRPC, and OpenAPI-based APIs.",
        "slug": "api-interface-and-contract-design",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": ".NET Backend Developer",
          "id": 83,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "dotnet-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Go Backend Developer",
          "id": 81,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "go-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Kotlin Backend Developer",
          "id": 84,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "kotlin-server-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Node.js Backend Developer",
          "id": 82,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "node-backend-developer",
          "source": "db"
        },
        {
          "display_name": "PHP Backend Developer",
          "id": 86,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "php-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Python Backend Developer",
          "id": 80,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "python-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Ruby Backend Developer",
          "id": 85,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "ruby-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Scala Backend Developer",
          "id": 87,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "scala-backend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Integration Protocols \u0026 Standards",
        "id": 271,
        "rationale": "Standards and protocols for integrating Pega applications.",
        "slug": "integration-protocols-standards",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Pega Developer",
          "id": 24,
          "rationale": null,
          "role_archetype": null,
          "slug": "pega-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Standards, Protocols \u0026 Compliance",
        "id": 452,
        "rationale": "Ensure teams adhere to industry standards, security protocols, and regulatory compliance requirements.",
        "slug": "standards-protocols-compliance",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Engineering Manager",
          "id": 121,
          "rationale": null,
          "role_archetype": null,
          "slug": "engineering-manager",
          "source": "db"
        },
        {
          "display_name": "Sitecore Dev",
          "id": 233,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "sitecore-dev",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "State Management Patterns",
        "id": 116,
        "rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
        "slug": "state-management-patterns",
        "source": "db"
      },
      "input_skill": "Provider",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Angular Frontend Developer",
          "id": 90,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "angular-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Flutter Developer",
          "id": 74,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "flutter-developer",
          "source": "db"
        },
        {
          "display_name": "Frontend Developer",
          "id": 7,
          "rationale": null,
          "role_archetype": null,
          "slug": "frontend-engineer",
          "source": "db"
        },
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "React Frontend Developer",
          "id": 89,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-frontend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Screen Navigation and State",
        "id": 83,
        "rationale": "Patterns for moving users through app flows and keeping client state consistent across screens, refreshes, and app transitions. This is central to feature work because iOS engineers own the in-app request flow and UI logic.",
        "slug": "screen-navigation-and-state",
        "source": "db"
      },
      "input_skill": "Bloc",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Developer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Flutter Developer",
          "id": 74,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "flutter-developer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 435,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "fullstack-developer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "Native Mobile Developer",
          "id": 75,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "native-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "React Native Developer",
          "id": 73,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-native-developer",
          "source": "db"
        },
        {
          "display_name": "iOS Developer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "State Management Patterns",
        "id": 116,
        "rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
        "slug": "state-management-patterns",
        "source": "db"
      },
      "input_skill": "Bloc",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Angular Frontend Developer",
          "id": 90,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "angular-frontend-developer",
          "source": "db"
        },
        {
          "display_name": "Flutter Developer",
          "id": 74,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "flutter-developer",
          "source": "db"
        },
        {
          "display_name": "Frontend Developer",
          "id": 7,
          "rationale": null,
          "role_archetype": null,
          "slug": "frontend-engineer",
          "source": "db"
        },
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "React Frontend Developer",
          "id": 89,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-frontend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Local Persistence and Offline Behavior",
        "id": 85,
        "rationale": "On-device storage used for caching, offline support, and durable client state. This cluster is coherent because iOS apps often need to preserve user progress and data when connectivity is limited.",
        "slug": "local-persistence-and-offline-behavior",
        "source": "db"
      },
      "input_skill": "SQLite",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Developer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Flutter Developer",
          "id": 74,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "flutter-developer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "Native Mobile Developer",
          "id": 75,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "native-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "React Native Developer",
          "id": 73,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-native-developer",
          "source": "db"
        },
        {
          "display_name": "iOS Developer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Offline Storage and Sync",
        "id": 378,
        "rationale": "On-device storage and synchronization patterns used to keep Ionic apps usable when connectivity is limited. This cluster covers caching, queued writes, and restoring client state after reconnecting.",
        "slug": "offline-storage-and-sync",
        "source": "db"
      },
      "input_skill": "SQLite",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Cloud Platforms \u0026 Managed Services",
        "id": 221,
        "rationale": "Operates and integrates vendor-specific cloud compute, storage, and hosting services.",
        "slug": "cloud-platforms-managed-services",
        "source": "db"
      },
      "input_skill": "Firebase",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Go Backend Developer",
          "id": 81,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "go-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Node.js Backend Developer",
          "id": 82,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "node-backend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Vendor Product Ecosystems",
        "id": 385,
        "rationale": "Leverages vendor-specific product families to build, deploy, and integrate cross-platform mobile applications.",
        "slug": "vendor-product-ecosystems",
        "source": "db"
      },
      "input_skill": "Firebase",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        }
      ]
    }
  ],
  "input_final_skills": [
    "Flutter",
    "Dart",
    "Android",
    "iOS",
    "REST",
    "Provider",
    "Bloc",
    "SQLite",
    "Firebase",
    "Mobile App Architecture",
    "Mobile App Lifecycle",
    "Third-party Libraries"
  ],
  "input_llm_skills": [
    "Flutter",
    "Dart",
    "Android",
    "iOS",
    "REST",
    "Provider",
    "Bloc",
    "SQLite",
    "Firebase",
    "Mobile App Architecture",
    "Mobile App Lifecycle",
    "Third-party Libraries"
  ],
  "new_aliases_persisted": 0,
  "run_id": "0b8d274d-4cc0-4f06-85f1-6c43d17d8e23",
  "skills_detail": [
    {
      "aliases_in_db": [
        {
          "alias_text": "Flutter",
          "alias_type": "CANONICAL",
          "id": 1658,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Flutter 3",
          "alias_type": "VERSION",
          "id": 4372,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Flutter 3.x",
          "alias_type": "VERSION",
          "id": 4373,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Flutter3",
          "alias_type": "VERSION",
          "id": 4371,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "flutter",
          "alias_type": "VERSION",
          "id": 1659,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "flutter 3",
          "alias_type": "VERSION",
          "id": 1661,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "flutter 3.x",
          "alias_type": "VERSION",
          "id": 1662,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "flutter3",
          "alias_type": "VERSION",
          "id": 1660,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Flutter",
        "id": 1041,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "flutter",
        "sub_category_id": 341,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Flutter UI Framework",
            "id": 312,
            "rationale": "Flutter framework primitives used to build screens, reusable components, and interactive client experiences. This cluster is coherent because Flutter developers spend much of their time composing widgets and managing rendering behavior.",
            "slug": "flutter-ui-framework",
            "source": "db"
          },
          "input_skill": "Flutter",
          "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": "UI Frameworks and Rendering",
            "id": 115,
            "rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
            "slug": "ui-frameworks-and-rendering",
            "source": "db"
          },
          "input_skill": "Flutter",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Frontend Developer",
              "id": 7,
              "rationale": null,
              "role_archetype": null,
              "slug": "frontend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 435,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "fullstack-developer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "Web Developer",
              "id": 25,
              "rationale": null,
              "role_archetype": null,
              "slug": "web-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Flutter",
      "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": "Dart",
          "alias_type": "CANONICAL",
          "id": 1652,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 6,
        "display_name": "Dart",
        "id": 1037,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "dart",
        "sub_category_id": 96,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Cross-Platform App Languages",
            "id": 167,
            "rationale": "Languages used to implement shared mobile features across iOS and Android from a common codebase. This is the primary coding surface for hybrid app logic, UI behavior, and platform-specific branching.",
            "slug": "cross-platform-app-languages",
            "source": "db"
          },
          "input_skill": "Dart",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-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": "Dart",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Flutter Developer",
              "id": 74,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "flutter-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Dart",
      "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": "Android",
          "alias_type": "CANONICAL",
          "id": 2541,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 9,
        "display_name": "Android",
        "id": 1595,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "android",
        "sub_category_id": 1201,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "React Frontend Development",
            "id": 96,
            "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
            "slug": "d_init_01",
            "source": "db"
          },
          "input_skill": "Android",
          "llm_role": null,
          "roles_from_db": []
        }
      ],
      "input_skill": "Android",
      "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": "iOS",
          "alias_type": "CANONICAL",
          "id": 2540,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 9,
        "display_name": "iOS",
        "id": 1594,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "ios",
        "sub_category_id": 1200,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "React Frontend Development",
            "id": 96,
            "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
            "slug": "d_init_01",
            "source": "db"
          },
          "input_skill": "iOS",
          "llm_role": null,
          "roles_from_db": []
        }
      ],
      "input_skill": "iOS",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "REST",
          "alias_type": "CANONICAL",
          "id": 106,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "REST",
        "id": 11,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "rest",
        "sub_category_id": 2122,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "API Design and Contracts",
            "id": 3,
            "rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
            "slug": "api-design-and-contracts",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Backend Developer",
              "id": 1,
              "rationale": null,
              "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
              "slug": "backend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 435,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "fullstack-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "API Interface and Contract Design",
            "id": 289,
            "rationale": "Designing backend service interfaces and contracts that other systems consume, including endpoint and operation shape, request/response payloads, schema and validation, pagination, filtering, idempotency, versioning, status codes, and backward compatibility across REST, GraphQL, gRPC, and OpenAPI-based APIs.",
            "slug": "api-interface-and-contract-design",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": ".NET Backend Developer",
              "id": 83,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "dotnet-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Go Backend Developer",
              "id": 81,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "go-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Kotlin Backend Developer",
              "id": 84,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "kotlin-server-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Node.js Backend Developer",
              "id": 82,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "node-backend-developer",
              "source": "db"
            },
            {
              "display_name": "PHP Backend Developer",
              "id": 86,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "php-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Python Backend Developer",
              "id": 80,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "python-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Ruby Backend Developer",
              "id": 85,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "ruby-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Scala Backend Developer",
              "id": 87,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "scala-backend-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Integration Protocols \u0026 Standards",
            "id": 271,
            "rationale": "Standards and protocols for integrating Pega applications.",
            "slug": "integration-protocols-standards",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Pega Developer",
              "id": 24,
              "rationale": null,
              "role_archetype": null,
              "slug": "pega-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Standards, Protocols \u0026 Compliance",
            "id": 452,
            "rationale": "Ensure teams adhere to industry standards, security protocols, and regulatory compliance requirements.",
            "slug": "standards-protocols-compliance",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Engineering Manager",
              "id": 121,
              "rationale": null,
              "role_archetype": null,
              "slug": "engineering-manager",
              "source": "db"
            },
            {
              "display_name": "Sitecore Dev",
              "id": 233,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "sitecore-dev",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "REST",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Provider",
          "alias_type": "CANONICAL",
          "id": 4380,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Provider",
        "id": 2922,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "provider",
        "sub_category_id": 2090,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "State Management Patterns",
            "id": 116,
            "rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
            "slug": "state-management-patterns",
            "source": "db"
          },
          "input_skill": "Provider",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Angular Frontend Developer",
              "id": 90,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "angular-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Flutter Developer",
              "id": 74,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "flutter-developer",
              "source": "db"
            },
            {
              "display_name": "Frontend Developer",
              "id": 7,
              "rationale": null,
              "role_archetype": null,
              "slug": "frontend-engineer",
              "source": "db"
            },
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "React Frontend Developer",
              "id": 89,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-frontend-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Provider",
      "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": "Bloc",
          "alias_type": "CANONICAL",
          "id": 4170,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Bloc",
        "id": 2726,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "bloc",
        "sub_category_id": 2090,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Screen Navigation and State",
            "id": 83,
            "rationale": "Patterns for moving users through app flows and keeping client state consistent across screens, refreshes, and app transitions. This is central to feature work because iOS engineers own the in-app request flow and UI logic.",
            "slug": "screen-navigation-and-state",
            "source": "db"
          },
          "input_skill": "Bloc",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Developer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Flutter Developer",
              "id": 74,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "flutter-developer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 435,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "fullstack-developer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "Native Mobile Developer",
              "id": 75,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "native-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "React Native Developer",
              "id": 73,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-native-developer",
              "source": "db"
            },
            {
              "display_name": "iOS Developer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "State Management Patterns",
            "id": 116,
            "rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
            "slug": "state-management-patterns",
            "source": "db"
          },
          "input_skill": "Bloc",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Angular Frontend Developer",
              "id": 90,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "angular-frontend-developer",
              "source": "db"
            },
            {
              "display_name": "Flutter Developer",
              "id": 74,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "flutter-developer",
              "source": "db"
            },
            {
              "display_name": "Frontend Developer",
              "id": 7,
              "rationale": null,
              "role_archetype": null,
              "slug": "frontend-engineer",
              "source": "db"
            },
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "React Frontend Developer",
              "id": 89,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-frontend-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Bloc",
      "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": "SQLite",
          "alias_type": "CANONICAL",
          "id": 786,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 3,
        "display_name": "SQLite",
        "id": 460,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "sqlite",
        "sub_category_id": 2714,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Local Persistence and Offline Behavior",
            "id": 85,
            "rationale": "On-device storage used for caching, offline support, and durable client state. This cluster is coherent because iOS apps often need to preserve user progress and data when connectivity is limited.",
            "slug": "local-persistence-and-offline-behavior",
            "source": "db"
          },
          "input_skill": "SQLite",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Developer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Flutter Developer",
              "id": 74,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "flutter-developer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "Native Mobile Developer",
              "id": 75,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "native-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "React Native Developer",
              "id": 73,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-native-developer",
              "source": "db"
            },
            {
              "display_name": "iOS Developer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Offline Storage and Sync",
            "id": 378,
            "rationale": "On-device storage and synchronization patterns used to keep Ionic apps usable when connectivity is limited. This cluster covers caching, queued writes, and restoring client state after reconnecting.",
            "slug": "offline-storage-and-sync",
            "source": "db"
          },
          "input_skill": "SQLite",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "SQLite",
      "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": "Firebase",
          "alias_type": "CANONICAL",
          "id": 3773,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 9,
        "display_name": "Firebase",
        "id": 2468,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "firebase",
        "sub_category_id": 1865,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Cloud Platforms \u0026 Managed Services",
            "id": 221,
            "rationale": "Operates and integrates vendor-specific cloud compute, storage, and hosting services.",
            "slug": "cloud-platforms-managed-services",
            "source": "db"
          },
          "input_skill": "Firebase",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Go Backend Developer",
              "id": 81,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "go-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Node.js Backend Developer",
              "id": 82,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "node-backend-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Vendor Product Ecosystems",
            "id": 385,
            "rationale": "Leverages vendor-specific product families to build, deploy, and integrate cross-platform mobile applications.",
            "slug": "vendor-product-ecosystems",
            "source": "db"
          },
          "input_skill": "Firebase",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Firebase",
      "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": "Mobile App Architecture",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Concepts",
          "skill_nature": "CONCEPT",
          "sub_category": "general",
          "typical_lifespan": "EVERGREEN",
          "version_strategy": "UNVERSIONED",
          "volatility": "STABLE"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "mobile-app-architecture",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Mobile App Lifecycle",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Concepts",
          "skill_nature": "CONCEPT",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "mobile-app-lifecycle",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Third-party Libraries",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Development Tools",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "third-party-libraries",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    }
  ],
  "unmatched_skills": [
    "Mobile App Architecture",
    "Mobile App Lifecycle",
    "Third-party Libraries"
  ]
}
API 3 — final-role-output
{
  "chosen_role": {
    "display_name": "Hybrid Mobile Developer",
    "id": 11,
    "rationale": "Multi-alias tie (4 roles at 1.0) resolved by TIER_A_KRA: Flutter Developer",
    "role_archetype": null,
    "slug": "hybrid-mobile-developer",
    "source": "db"
  },
  "chosen_role_resolution": "in_db",
  "final_input_skills": [
    {
      "skill": "Flutter",
      "tag": "in_db"
    },
    {
      "skill": "Dart",
      "tag": "in_db"
    },
    {
      "skill": "Android",
      "tag": "in_db"
    },
    {
      "skill": "iOS",
      "tag": "in_db"
    },
    {
      "skill": "REST",
      "tag": "in_db"
    },
    {
      "skill": "Provider",
      "tag": "in_db"
    },
    {
      "skill": "Bloc",
      "tag": "in_db"
    },
    {
      "skill": "SQLite",
      "tag": "in_db"
    },
    {
      "skill": "Firebase",
      "tag": "in_db"
    },
    {
      "skill": "Mobile App Architecture",
      "tag": "new"
    },
    {
      "skill": "Mobile App Lifecycle",
      "tag": "new"
    },
    {
      "skill": "Third-party Libraries",
      "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": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Flutter UI Framework",
          "id": 312,
          "rationale": "Flutter framework primitives used to build screens, reusable components, and interactive client experiences. This cluster is coherent because Flutter developers spend much of their time composing widgets and managing rendering behavior.",
          "slug": "flutter-ui-framework",
          "source": "db"
        },
        "dimension_id": 312,
        "input_skill": "Flutter",
        "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": 1041,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "UI Frameworks and Rendering",
          "id": 115,
          "rationale": "Component frameworks and rendering models used to build browser screens, reusable UI, and interactive client flows. This is a core cluster because frontend engineers spend much of their time composing and updating view hierarchies.",
          "slug": "ui-frameworks-and-rendering",
          "source": "db"
        },
        "dimension_id": 115,
        "input_skill": "Flutter",
        "llm_role": null,
        "matched_chosen_role": true,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
        "role_dimension_saved": true,
        "roles_from_db": [
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 435,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "fullstack-developer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          },
          {
            "display_name": "Web Developer",
            "id": 25,
            "rationale": null,
            "role_archetype": null,
            "slug": "web-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1041,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Cross-Platform App Languages",
          "id": 167,
          "rationale": "Languages used to implement shared mobile features across iOS and Android from a common codebase. This is the primary coding surface for hybrid app logic, UI behavior, and platform-specific branching.",
          "slug": "cross-platform-app-languages",
          "source": "db"
        },
        "dimension_id": 167,
        "input_skill": "Dart",
        "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": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1037,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "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": "Dart",
        "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": 1037,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "React Frontend Development",
          "id": 96,
          "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
          "slug": "d_init_01",
          "source": "db"
        },
        "dimension_id": 96,
        "input_skill": "Android",
        "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": [],
        "skill_dimension_saved": true,
        "skill_id": 1595,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "React Frontend Development",
          "id": 96,
          "rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
          "slug": "d_init_01",
          "source": "db"
        },
        "dimension_id": 96,
        "input_skill": "iOS",
        "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": [],
        "skill_dimension_saved": true,
        "skill_id": 1594,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "API Design and Contracts",
          "id": 3,
          "rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
          "slug": "api-design-and-contracts",
          "source": "db"
        },
        "dimension_id": 3,
        "input_skill": "REST",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Backend Developer",
            "id": 1,
            "rationale": null,
            "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
            "slug": "backend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 435,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "fullstack-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 11,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "API Interface and Contract Design",
          "id": 289,
          "rationale": "Designing backend service interfaces and contracts that other systems consume, including endpoint and operation shape, request/response payloads, schema and validation, pagination, filtering, idempotency, versioning, status codes, and backward compatibility across REST, GraphQL, gRPC, and OpenAPI-based APIs.",
          "slug": "api-interface-and-contract-design",
          "source": "db"
        },
        "dimension_id": 289,
        "input_skill": "REST",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": ".NET Backend Developer",
            "id": 83,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "dotnet-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Go Backend Developer",
            "id": 81,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "go-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Kotlin Backend Developer",
            "id": 84,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "kotlin-server-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Node.js Backend Developer",
            "id": 82,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "node-backend-developer",
            "source": "db"
          },
          {
            "display_name": "PHP Backend Developer",
            "id": 86,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "php-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Python Backend Developer",
            "id": 80,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "python-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Ruby Backend Developer",
            "id": 85,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "ruby-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Scala Backend Developer",
            "id": 87,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "scala-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 11,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Integration Protocols \u0026 Standards",
          "id": 271,
          "rationale": "Standards and protocols for integrating Pega applications.",
          "slug": "integration-protocols-standards",
          "source": "db"
        },
        "dimension_id": 271,
        "input_skill": "REST",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Pega Developer",
            "id": 24,
            "rationale": null,
            "role_archetype": null,
            "slug": "pega-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 11,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Standards, Protocols \u0026 Compliance",
          "id": 452,
          "rationale": "Ensure teams adhere to industry standards, security protocols, and regulatory compliance requirements.",
          "slug": "standards-protocols-compliance",
          "source": "db"
        },
        "dimension_id": 452,
        "input_skill": "REST",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Engineering Manager",
            "id": 121,
            "rationale": null,
            "role_archetype": null,
            "slug": "engineering-manager",
            "source": "db"
          },
          {
            "display_name": "Sitecore Dev",
            "id": 233,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "sitecore-dev",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 11,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "State Management Patterns",
          "id": 116,
          "rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
          "slug": "state-management-patterns",
          "source": "db"
        },
        "dimension_id": 116,
        "input_skill": "Provider",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Angular Frontend Developer",
            "id": 90,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "angular-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Flutter Developer",
            "id": 74,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "flutter-developer",
            "source": "db"
          },
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          },
          {
            "display_name": "React Frontend Developer",
            "id": 89,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-frontend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2922,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Screen Navigation and State",
          "id": 83,
          "rationale": "Patterns for moving users through app flows and keeping client state consistent across screens, refreshes, and app transitions. This is central to feature work because iOS engineers own the in-app request flow and UI logic.",
          "slug": "screen-navigation-and-state",
          "source": "db"
        },
        "dimension_id": 83,
        "input_skill": "Bloc",
        "llm_role": null,
        "matched_chosen_role": true,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
        "role_dimension_saved": true,
        "roles_from_db": [
          {
            "display_name": "Android Developer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Flutter Developer",
            "id": 74,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "flutter-developer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 435,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "fullstack-developer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          },
          {
            "display_name": "Native Mobile Developer",
            "id": 75,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "native-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "React Native Developer",
            "id": 73,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-native-developer",
            "source": "db"
          },
          {
            "display_name": "iOS Developer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2726,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "State Management Patterns",
          "id": 116,
          "rationale": "Client-side state organization for forms, UI interactions, cached data, and cross-component coordination. This cluster is coherent because frontend work often hinges on predictable state transitions and data flow.",
          "slug": "state-management-patterns",
          "source": "db"
        },
        "dimension_id": 116,
        "input_skill": "Bloc",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Angular Frontend Developer",
            "id": 90,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "angular-frontend-developer",
            "source": "db"
          },
          {
            "display_name": "Flutter Developer",
            "id": 74,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "flutter-developer",
            "source": "db"
          },
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          },
          {
            "display_name": "React Frontend Developer",
            "id": 89,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-frontend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2726,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Local Persistence and Offline Behavior",
          "id": 85,
          "rationale": "On-device storage used for caching, offline support, and durable client state. This cluster is coherent because iOS apps often need to preserve user progress and data when connectivity is limited.",
          "slug": "local-persistence-and-offline-behavior",
          "source": "db"
        },
        "dimension_id": 85,
        "input_skill": "SQLite",
        "llm_role": null,
        "matched_chosen_role": true,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
        "role_dimension_saved": true,
        "roles_from_db": [
          {
            "display_name": "Android Developer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Flutter Developer",
            "id": 74,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "flutter-developer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "Native Mobile Developer",
            "id": 75,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "native-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "React Native Developer",
            "id": 73,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-native-developer",
            "source": "db"
          },
          {
            "display_name": "iOS Developer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 460,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Offline Storage and Sync",
          "id": 378,
          "rationale": "On-device storage and synchronization patterns used to keep Ionic apps usable when connectivity is limited. This cluster covers caching, queued writes, and restoring client state after reconnecting.",
          "slug": "offline-storage-and-sync",
          "source": "db"
        },
        "dimension_id": 378,
        "input_skill": "SQLite",
        "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": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 460,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Cloud Platforms \u0026 Managed Services",
          "id": 221,
          "rationale": "Operates and integrates vendor-specific cloud compute, storage, and hosting services.",
          "slug": "cloud-platforms-managed-services",
          "source": "db"
        },
        "dimension_id": 221,
        "input_skill": "Firebase",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Go Backend Developer",
            "id": 81,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "go-backend-developer",
            "source": "db"
          },
          {
            "display_name": "Node.js Backend Developer",
            "id": 82,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "node-backend-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2468,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 11,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Vendor Product Ecosystems",
          "id": 385,
          "rationale": "Leverages vendor-specific product families to build, deploy, and integrate cross-platform mobile applications.",
          "slug": "vendor-product-ecosystems",
          "source": "db"
        },
        "dimension_id": 385,
        "input_skill": "Firebase",
        "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": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2468,
        "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": "0b8d274d-4cc0-4f06-85f1-6c43d17d8e23"
}