← Back to history

Pipeline run

ab69a369-3d8a-44d2-9fe1-3b6e29399e7f

Pipeline LLM cost (USD)
API 1: $0.0039 API 2: $0.0004 API 3: $0.0000 Total: $0.0043

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 · Local data and sync handling
Build and tune native iOS features in Swift, including offline persistence, REST/backend integration, push notifications, and location/map functionality. Also handle app performance, memory, accessibility, and App Store releases.
"Experience with offline storage, threading, and performance tuning."
Tech stack maturity
Mainstream Modern
The skill set centers on Swift, UIKit, Core Data, Core Location, and standard mobile practices like Git, REST, and push notifications, which aligns with established modern native iOS development rather than cutting-edge cloud-native or legacy pre-cloud stacks.
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 (21)
Swift Core Data Core Location REST Object-Oriented Programming Design Patterns Accessibility Foundation UIKit MapKit Core Graphics Core Animation Security Framework Keychain Instruments Push Notifications Git SVN Continuous Integration Agile Flutter
Skill cluster (8 dimension groups, role-scoped)
Android UI Frameworks
UIKit
Device APIs and Hardware Features
Core Location
Flutter UI Framework
Flutter
Integration Protocols & Standards
REST
Local Persistence and Offline Behavior
Core Data
Native Mobile Languages
Swift
Push Notifications and Deep Links
Push Notifications
Cross-cutting / unaligned
Object-Oriented Programming Design Patterns Accessibility Foundation MapKit Core Graphics Core Animation Security Framework Keychain Instruments Git SVN Continuous Integration Agile
Show KRA description ↓
Highly proficient with Swift.. Expertise in iOS frameworks such as Core Data, Core Location, etc. Experience with offline storage, threading, and performance tuning. Familiarity with RESTful APIs to connect iOS applications to back-end services. Strong understanding of Object-Oriented principles and design patterns. Knowledge of accessibility issues on iOS. Deep understanding of Apple’s design principles and interface guidelines. Experience in releasing apps via the store and other distribution methods. Knowledge of common iOS frameworks (Foundation, Core Location, UIKit, MapKit, CoreData, CoreGraphics, CoreAnimation, Security Framework, Key-chain) Competency with performance and memory tuning with tools such as Instruments. Familiarity with cloud message APIs and push notifications. Knowledge of iOS App State transitions. A knack for bench-marking and optimization will be valued. Proficient understanding of code versioning tools (GIT and SVN) Knowledge of best practices in continuous integration will be an added advantage. Understanding and experience of Agile development. Excellent verbal and written communication skills in English. Knowledge on Flutter will be an advantage.

Signals

Skill ios-engineer
0.30
Alias ios-engineer
1.00
KRA go-backend-developer
0.50
Status: completed Created: 2026-05-27T15:29:02.541085Z Updated: 2026-06-12T16:21:39.694732Z API 3 duration: 42844 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

Native Mobile Developer

iOS Developer

sub-role · 0.95 CASE A

slug: native-mobile-developer · id: 75 · source: db · sub-role slug: ios-engineer

Multi-alias tie (3 roles at 1.0) resolved by TIER_B_TITLE: iOS 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

Below are the details of the opportunity...


We are looking for a IOS Developer on an urgent basis for a Reputed Company. Please read the job description and company profile given below. Also, acknowledge in the mail if you are interested. This will be a permanent opportunity with direct payroll to NeoSoft. 


Profile: IOS Developer
Company: Neo Soft
Experience: 3 to 7 years
Location: Pune, Mumbai
Notice: Immediate to 30 Days


Skillset :
Highly proficient with Swift..
Expertise in iOS frameworks such as Core Data, Core Location, etc.
Experience with offline storage, threading, and performance tuning.
Familiarity with RESTful APIs to connect iOS applications to back-end services.
Strong understanding of Object-Oriented principles and design patterns.
Knowledge of accessibility issues on iOS.
Deep understanding of Apple’s design principles and interface guidelines.
Experience in releasing apps via the store and other distribution methods.
Knowledge of common iOS frameworks (Foundation, Core Location, UIKit, MapKit, CoreData, CoreGraphics, CoreAnimation, Security Framework, Key-chain)
Competency with performance and memory tuning with tools such as Instruments.
Familiarity with cloud message APIs and push notifications.
Knowledge of iOS App State transitions.
A knack for bench-marking and optimization will be valued.
Proficient understanding of code versioning tools (GIT and SVN)
Knowledge of best practices in continuous integration will be an added advantage.
Understanding and experience of Agile development.
Excellent verbal and written communication skills in English.
Knowledge on Flutter will be an advantage.
​
Company Profile:


NeoSOFT is a SEI-CMMI Level 5 and ISO 9001:2008 certified global IT consulting & software solutions provider with 5000+ software consultants working full time across 8 delivery centers. Established in 1996, NeoSOFT is headquartered in Mumbai, India with offices in USA, UK, Dubai, Italy, Germany, Japan & Australia. Our commitment to quality and 25+ years of experience has made us serve over 1500+ clients across 50+ countries with 85% client retention.
Our objective is to deliver robust, scalable, innovative and quality solutions while adhering to strict deadlines, for small-medium businesses as well as Fortune 500 Companies.


Company Deck - https://www.neosofttech.com/

Skills from this JD

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

Swift Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Swift id=440 · swift

Aliases — catalog

  • Swift (CANONICAL) primary
  • Swift 2.0 (VERSION)
  • Swift 2.x (VERSION)
  • Swift 3.0 (VERSION)
  • Swift 3.x (VERSION)
  • Swift 4.0 (VERSION)
  • Swift 4.x (VERSION)
  • Swift 5.0 (VERSION)
  • Swift 5.x (VERSION)
  • Swift 6.0 (VERSION)
  • Swift 6.x (VERSION)

Context tags (catalog)

ARC Cocoa Cocoa Touch CocoaPods Combine Core Data Grand Central Dispatch MVVM Objective-C Optionals SPM Swift Package Manager SwiftUI UIKit Xcode async/await asynchronous programming closure closures error handling iOS Development protocol-oriented programming type safety

Stored enrichment (catalog DB)

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

Maturity reasoning: Swift is broadly used for iOS/macOS hiring; job postings commonly list it alongside UIKit/SwiftUI, and Apple continues to invest in it as the primary language for new app development.

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)

  • Native Mobile Languages Catalog dimension db id 274

    Library dimension (catalog)

    Roles linked in library: Native Mobile Developer

  • Swift and Objective-C Catalog dimension db id 81

    Library dimension (catalog)

    Roles linked in library: iOS Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Native Mobile Languages
native-mobile-languages
Existing dimension (library) · Role↔dimension saved
Swift and Objective-C
swift-and-objective-c
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Core Data Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Core Data id=459 · core-data

Aliases — catalog

  • Core Data (CANONICAL) primary

Context tags (catalog)

Batch Updates Concurrency Context Core Data Framework Core Data Stack Data Model Entity Faulting Fetch Request Migration NSFetchRequest NSFetchedResultsController NSManagedObject NSManagedObjectContext NSPersistentContainer NSPredicate Relationships SQLite store SwiftUI Xcode batch updates entity model faulting fetch predicates iOS merge policies migration object graph xcdatamodeld

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Persistence Framework
Vendor
Apple
License
proprietary
Year introduced
2008
Confidence
0.90
Version strategy
NOT_APPLICABLE

Maturity reasoning: Core Data appears mainly in Apple/iOS-specific job postings and legacy Cocoa codebases; market demand is far narrower than cross-platform persistence stacks like SQLite/Realm, with no broad hiring-pipeline ubiquity.

Skill profile (library / DB)

Skill nature
FRAMEWORK
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
5
Sub-category id
336
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

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
Core Location Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Core Location id=509 · core-location

Aliases — catalog

  • Core Location (CANONICAL) primary

Context tags (catalog)

Always Allow CLLocation CLLocationManager Core Motion GPS MapKit When In Use accuracy authorization background location geofencing heading latitude/longitude location services region monitoring significant location changes

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Mobile Framework
Vendor
Apple
License
proprietary
Year introduced
2009
Confidence
0.90
Version strategy
NOT_APPLICABLE

Maturity reasoning: Core Location is a standard Apple iOS framework; it appears routinely in iOS job descriptions for GPS/geofencing and has no announced successor or sunset.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Device APIs and Hardware Features Catalog dimension db id 95

    Library dimension (catalog)

    Roles linked in library: Android Developer, Native Mobile Developer, iOS Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Device APIs and Hardware Features
device-apis-and-hardware-features
Existing dimension (library) · Role↔dimension saved
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)
Object-Oriented Programming Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

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

Derived legacy fields
Category
Concepts
Sub-category
general
Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Design Patterns Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: design patterns id=1654 · design-patterns

Aliases — catalog

  • design patterns (CANONICAL)

Context tags (catalog)

Adapter Builder Command Composite Decorator Dependency Injection Facade Factory MVC Observer Prototype SOLID Singleton Strategy Visitor

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Software Design Patterns
Confidence
0.94
Version strategy
NOT_APPLICABLE

Maturity reasoning: Design patterns are a standard interview/JD topic across backend and frontend roles; job postings commonly mention them alongside OOP and system design, and they remain core in books, courses, and code reviews.

Skill profile (library / DB)

Skill nature
CONCEPT
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
2
Sub-category id
1247
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)
Accessibility Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

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

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

Skill enrichment (orchestrator / LLM)

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

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

Aliases — catalog

  • UIKit (CANONICAL) primary

Context tags (catalog)

Accessibility Animation Blocks Auto Layout Cocoa Touch Core Animation Custom Views Delegate pattern Interface Builder Storyboard Swift SwiftUI Target-Action Touch Gestures UICollectionView UIKit Dynamics UIKit Extensions UINavigationController UIScrollView UITableView UIView UIViewController XIB Xcode iOS

Stored enrichment (catalog DB)

Category
Framework
Sub-category
Ui Framework
Vendor
Apple
License
other_open
Year introduced
2008
Confidence
0.98
Version strategy
NOT_APPLICABLE

Maturity reasoning: UIKit remains a core iOS framework and appears in many iOS job descriptions; Apple still actively maintains it alongside SwiftUI, not as a sunset product.

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)

  • Android UI Frameworks Catalog dimension db id 162

    Library dimension (catalog)

    Roles linked in library: Android Developer, Native Mobile Developer

  • UIKit and SwiftUI Catalog dimension db id 82

    Library dimension (catalog)

    Roles linked in library: iOS Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Android UI Frameworks
android-ui-frameworks
Existing dimension (library) · Role↔dimension saved
UIKit and SwiftUI
uikit-and-swiftui
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
MapKit Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

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

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

Skill enrichment (orchestrator / LLM)

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

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

Skill enrichment (orchestrator / LLM)

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

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

Skill enrichment (orchestrator / LLM)

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

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

Aliases — catalog

  • Keychain (CANONICAL) primary

Context tags (catalog)

API integration access control asymmetric encryption authentication credential management data protection encryption key management multi-factor authentication password vault secure access secure storage symmetric encryption tokenization user authentication

Stored enrichment (catalog DB)

Category
Datastore
Sub-category
Secure Credential Store
Vendor
Apple
License
unknown
Year introduced
2003
Confidence
0.66
Version strategy
NOT_APPLICABLE

Maturity reasoning: Keychain is mainly an Apple platform secure credential store; it appears in iOS/macOS security JDs far less often than general datastores, with most market demand centered on platform-specific auth/storage work.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Mobile Client Authentication and Secure Credential Storage Catalog dimension db id 310

    Library dimension (catalog)

    Roles linked in library: Flutter Developer, React Native Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Mobile Client Authentication and Secure Credential Storage
mobile-client-authentication-and-secure-credential-storage
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Instruments Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Instruments id=494 · instruments

Aliases — catalog

  • Instruments (CANONICAL) primary

Context tags (catalog)

Allocations CPU usage Core Animation Energy Log Leaks Metal System Trace System Trace Time Profiler call tree memory leaks performance bottleneck retain cycle sampling profiler signposts

Stored enrichment (catalog DB)

Category
Tool
Sub-category
Profiling Tool
Vendor
Apple
License
proprietary
Year introduced
2003
Confidence
0.97
Version strategy
NOT_APPLICABLE

Maturity reasoning: Apple Instruments is a standard profiling tool in iOS/macOS job descriptions and docs; it’s commonly paired with Xcode for performance debugging rather than being a niche or sunset product.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Performance and Stability Tuning Catalog dimension db id 92

    Library dimension (catalog)

    Roles linked in library: Android Developer, iOS Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Performance and Stability Tuning
performance-and-stability-tuning
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Push Notifications Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: push notifications id=1605 · push-notifications

Aliases — catalog

  • push notifications (CANONICAL) primary
  • Push Notifications (CANONICAL)

Context tags (catalog)

A/B testing APNs Firebase Cloud Messaging analytics background updates delivery tracking message queue mobile push notification center notification channels notification payload opt-in push analytics real-time updates rich notifications scheduling service workers subscription model user engagement user segmentation web push

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Notification Delivery Concept
Confidence
0.88
Version strategy
NOT_APPLICABLE

Maturity reasoning: Push notifications are a standard mobile/web capability and appear routinely in JDs for iOS, Android, and frontend roles; major vendors like Apple APNs and Firebase Cloud Messaging actively support them.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Background Execution and Lifecycle Catalog dimension db id 87

    Library dimension (catalog)

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

  • Push Notifications and Deep Links Catalog dimension db id 320

    Library dimension (catalog)

    Roles linked in library: Ionic Developer, React Native Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Background Execution and Lifecycle
background-execution-and-lifecycle
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Push Notifications and Deep Links
push-notifications-and-deep-links
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Git Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Git id=1002 · git

Aliases — catalog

  • Git (CANONICAL)

Context tags (catalog)

CI/CD GitHub GitLab branching checkout clone commit fork merging pull request rebase remote repository stash versioning

Stored enrichment (catalog DB)

Category
Tool
Sub-category
Version Control Tool
Vendor
Linus Torvalds
License
gpl_v2
Year introduced
2005
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: Git is a hiring-pipeline staple: it appears in the vast majority of software engineering job descriptions and is the default VCS on GitHub/GitLab/Bitbucket.

Skill profile (library / DB)

Skill nature
TOOL
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
13
Sub-category id
730
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)
SVN Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

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

Derived legacy fields
Category
Version Control
Sub-category
general
Skill nature
TOOL
Volatility
FAST
Typical lifespan
SHORT_LIVED
Version strategy
VERSIONED
Continuous Integration Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

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

Derived legacy fields
Category
Practices
Sub-category
general
Skill nature
PRACTICE
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Agile Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Agile id=520 · agile

Aliases — catalog

  • Agile (CANONICAL) primary

Context tags (catalog)

Kanban SAFe Scrum backlog backlog grooming burndown burndown chart continuous delivery continuous improvement cross-functional daily standup epics incremental development iteration iteration planning lean product backlog product owner retrospective sprint sprint planning stand-up story points user stories velocity

Stored enrichment (catalog DB)

Category
Methodology
Sub-category
Agile
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: Agile appears in a large share of software job descriptions and is a standard hiring-pipeline requirement; Scrum/Kanban are commonly listed alongside it, showing broad market adoption.

Skill profile (library / DB)

Skill nature
METHODOLOGY
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
8
Sub-category id
3594
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • React Frontend Development Catalog dimension db id 96

    Library dimension (catalog)

  • Software Concepts, Patterns & Practices Catalog dimension db id 478

    Library dimension (catalog)

    Roles linked in library: Engineering Manager

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)
Software Concepts, Patterns & Practices
software-concepts-patterns-practices
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Flutter Secondary 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 skipped (dimension not under chosen role)

All API 3 persistence rows

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

Skill Tag Dimension Skill↔dim Role↔dim Outcome Notes
Swift in_db
Native Mobile Languages
native-mobile-languages
Existing dimension (library) · Role↔dimension saved
Swift in_db
Swift and Objective-C
swift-and-objective-c
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Core Data in_db
Local Persistence and Offline Behavior
local-persistence-and-offline-behavior
Existing dimension (library) · Role↔dimension saved
Core Location in_db
Device APIs and Hardware Features
device-apis-and-hardware-features
Existing dimension (library) · Role↔dimension saved
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)
Design Patterns in_db
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
UIKit in_db
Android UI Frameworks
android-ui-frameworks
Existing dimension (library) · Role↔dimension saved
UIKit in_db
UIKit and SwiftUI
uikit-and-swiftui
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Keychain in_db
Mobile Client Authentication and Secure Credential Storage
mobile-client-authentication-and-secure-credential-storage
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Instruments in_db
Performance and Stability Tuning
performance-and-stability-tuning
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Push Notifications in_db
Background Execution and Lifecycle
background-execution-and-lifecycle
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Push Notifications in_db
Push Notifications and Deep Links
push-notifications-and-deep-links
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Git in_db
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Agile in_db
React Frontend Development
d_init_01
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Agile in_db
Software Concepts, Patterns & Practices
software-concepts-patterns-practices
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
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 skipped (dimension not under chosen role)

Library artifacts (this run)

Kind Detail DB id
canonical_skill_proposed Object-Oriented Programming | type=Concepts subtype=general nature=CONCEPT lifespan=EVERGREEN
canonical_skill_proposed Accessibility | type=Concepts subtype=general nature=CONCEPT lifespan=MULTI_YEAR
canonical_skill_proposed Foundation | type=Frameworks subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed MapKit | type=Frameworks subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Core Graphics | type=Frameworks subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Core Animation | type=Frameworks subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed Security Framework | type=Frameworks subtype=general nature=TOOL lifespan=MULTI_YEAR
canonical_skill_proposed SVN | type=Version Control subtype=general nature=TOOL lifespan=SHORT_LIVED
canonical_skill_proposed Continuous Integration | type=Practices subtype=general nature=PRACTICE lifespan=MULTI_YEAR
nano JD Parser — gpt-4.1-nano click to toggle
RoleIOS Developer
CompanyNeo Soft
Experience3 to 7 years
DomainIT Services & Consulting
Location Pune, India
JD type pass
Show raw JSON
{
  "JD_type": "pass",
  "about_company": {
    "source_marker": {
      "first_5_words": "NeoSOFT is a SEI-CMMI Level",
      "last_5_words": "as well as Fortune 500 Companies."
    },
    "text": "NeoSOFT is a SEI-CMMI Level 5 and ISO 9001:2008 certified global IT consulting \u0026 software solutions provider with 5000+ software consultants working full time across 8 delivery centers. Established in 1996, NeoSOFT is headquartered in Mumbai, India with offices in USA, UK, Dubai, Italy, Germany, Japan \u0026 Australia. Our commitment to quality and 25+ years of experience has made us serve over 1500+ clients across 50+ countries with 85% client retention. Our objective is to deliver robust, scalable, innovative and quality solutions while adhering to strict deadlines, for small-medium businesses as well as Fortune 500 Companies.",
    "word_count": 84
  },
  "certifications": [],
  "company_name": "Neo Soft",
  "ctc": null,
  "domain": {
    "primary": {
      "aliases": [
        "Software Solutions",
        "IT Consulting"
      ],
      "domain": "IT Services \u0026 Consulting"
    },
    "secondary": null
  },
  "education": [],
  "experience": {
    "max": 7,
    "min": 3,
    "raw": "3 to 7 years"
  },
  "job_locations": [
    {
      "aliases": [
        "Pune, Maharashtra"
      ],
      "city": "Pune",
      "country": "India",
      "state": null,
      "work_mode": null
    },
    {
      "aliases": [
        "Bombay"
      ],
      "city": "Mumbai",
      "country": "India",
      "state": "Maharashtra",
      "work_mode": null
    }
  ],
  "role": "IOS Developer",
  "role_aliases": [
    "iOS Developer",
    "iOS Engineer",
    "Mobile Developer"
  ],
  "role_archetype": "Engineering",
  "roles_and_responsibilities": [
    {
      "bullet_count": 15,
      "heading": "Skillset",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "Highly proficient with Swift..",
        "last_5_words": "will be an advantage."
      },
      "text": "Highly proficient with Swift..\nExpertise in iOS frameworks such as Core Data, Core Location, etc.\nExperience with offline storage, threading, and performance tuning.\nFamiliarity with RESTful APIs to connect iOS applications to back-end services.\nStrong understanding of Object-Oriented principles and design patterns.\nKnowledge of accessibility issues on iOS.\nDeep understanding of Apple\u2019s design principles and interface guidelines.\nExperience in releasing apps via the store and other distribution methods.\nKnowledge of common iOS frameworks (Foundation, Core Location, UIKit, MapKit, CoreData, CoreGraphics, CoreAnimation, Security Framework, Key-chain)\nCompetency with performance and memory tuning with tools such as Instruments.\nFamiliarity with cloud message APIs and push notifications.\nKnowledge of iOS App State transitions.\nA knack for bench-marking and optimization will be valued.\nProficient understanding of code versioning tools (GIT and SVN)\nKnowledge of best practices in continuous integration will be an added advantage.\nUnderstanding and experience of Agile development.\nExcellent verbal and written communication skills in English.\nKnowledge on Flutter will be an advantage.",
      "word_count": 233
    }
  ],
  "urls": [
    {
      "type": "website",
      "url": "https://www.neosofttech.com/"
    }
  ]
}
API 1 — extract-from-jd click to toggle
{
  "final_skills": [
    {
      "is_primary": true,
      "skill_name": "Swift"
    },
    {
      "is_primary": true,
      "skill_name": "Core Data"
    },
    {
      "is_primary": true,
      "skill_name": "Core Location"
    },
    {
      "is_primary": true,
      "skill_name": "REST"
    },
    {
      "is_primary": true,
      "skill_name": "Object-Oriented Programming"
    },
    {
      "is_primary": true,
      "skill_name": "Design Patterns"
    },
    {
      "is_primary": true,
      "skill_name": "Accessibility"
    },
    {
      "is_primary": true,
      "skill_name": "Foundation"
    },
    {
      "is_primary": true,
      "skill_name": "UIKit"
    },
    {
      "is_primary": true,
      "skill_name": "MapKit"
    },
    {
      "is_primary": true,
      "skill_name": "Core Graphics"
    },
    {
      "is_primary": true,
      "skill_name": "Core Animation"
    },
    {
      "is_primary": true,
      "skill_name": "Security Framework"
    },
    {
      "is_primary": true,
      "skill_name": "Keychain"
    },
    {
      "is_primary": true,
      "skill_name": "Instruments"
    },
    {
      "is_primary": true,
      "skill_name": "Push Notifications"
    },
    {
      "is_primary": true,
      "skill_name": "Git"
    },
    {
      "is_primary": true,
      "skill_name": "SVN"
    },
    {
      "is_primary": true,
      "skill_name": "Continuous Integration"
    },
    {
      "is_primary": true,
      "skill_name": "Agile"
    },
    {
      "is_primary": false,
      "skill_name": "Flutter"
    }
  ],
  "jd_role": {
    "display_name": "IOS Developer",
    "rationale": null,
    "role_aliases": [
      "iOS Developer",
      "iOS Engineer",
      "Mobile Developer"
    ],
    "role_archetype": "Engineering",
    "slug": ""
  },
  "nano_parsed": {
    "JD_type": "pass",
    "about_company": {
      "source_marker": {
        "first_5_words": "NeoSOFT is a SEI-CMMI Level",
        "last_5_words": "as well as Fortune 500 Companies."
      },
      "text": "NeoSOFT is a SEI-CMMI Level 5 and ISO 9001:2008 certified global IT consulting \u0026 software solutions provider with 5000+ software consultants working full time across 8 delivery centers. Established in 1996, NeoSOFT is headquartered in Mumbai, India with offices in USA, UK, Dubai, Italy, Germany, Japan \u0026 Australia. Our commitment to quality and 25+ years of experience has made us serve over 1500+ clients across 50+ countries with 85% client retention. Our objective is to deliver robust, scalable, innovative and quality solutions while adhering to strict deadlines, for small-medium businesses as well as Fortune 500 Companies.",
      "word_count": 84
    },
    "certifications": [],
    "company_name": "Neo Soft",
    "ctc": null,
    "domain": {
      "primary": {
        "aliases": [
          "Software Solutions",
          "IT Consulting"
        ],
        "domain": "IT Services \u0026 Consulting"
      },
      "secondary": null
    },
    "education": [],
    "experience": {
      "max": 7,
      "min": 3,
      "raw": "3 to 7 years"
    },
    "job_locations": [
      {
        "aliases": [
          "Pune, Maharashtra"
        ],
        "city": "Pune",
        "country": "India",
        "state": null,
        "work_mode": null
      },
      {
        "aliases": [
          "Bombay"
        ],
        "city": "Mumbai",
        "country": "India",
        "state": "Maharashtra",
        "work_mode": null
      }
    ],
    "role": "IOS Developer",
    "role_aliases": [
      "iOS Developer",
      "iOS Engineer",
      "Mobile Developer"
    ],
    "role_archetype": "Engineering",
    "roles_and_responsibilities": [
      {
        "bullet_count": 15,
        "heading": "Skillset",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "Highly proficient with Swift..",
          "last_5_words": "will be an advantage."
        },
        "text": "Highly proficient with Swift..\nExpertise in iOS frameworks such as Core Data, Core Location, etc.\nExperience with offline storage, threading, and performance tuning.\nFamiliarity with RESTful APIs to connect iOS applications to back-end services.\nStrong understanding of Object-Oriented principles and design patterns.\nKnowledge of accessibility issues on iOS.\nDeep understanding of Apple\u2019s design principles and interface guidelines.\nExperience in releasing apps via the store and other distribution methods.\nKnowledge of common iOS frameworks (Foundation, Core Location, UIKit, MapKit, CoreData, CoreGraphics, CoreAnimation, Security Framework, Key-chain)\nCompetency with performance and memory tuning with tools such as Instruments.\nFamiliarity with cloud message APIs and push notifications.\nKnowledge of iOS App State transitions.\nA knack for bench-marking and optimization will be valued.\nProficient understanding of code versioning tools (GIT and SVN)\nKnowledge of best practices in continuous integration will be an added advantage.\nUnderstanding and experience of Agile development.\nExcellent verbal and written communication skills in English.\nKnowledge on Flutter will be an advantage.",
        "word_count": 233
      }
    ],
    "urls": [
      {
        "type": "website",
        "url": "https://www.neosofttech.com/"
      }
    ]
  },
  "rejected": false,
  "rejection_reason": null,
  "run_id": "ab69a369-3d8a-44d2-9fe1-3b6e29399e7f",
  "stage3_signals": {
    "alias_found": true,
    "alias_match_roles": [
      {
        "display_name": "iOS Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 6,
        "score": 1.0,
        "slug": "ios-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
      },
      {
        "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
      }
    ],
    "kra_match_roles": [
      {
        "display_name": "Go Backend Developer",
        "kra_matches": [
          {
            "kra_text": "performance tuning and resource efficiency",
            "sentence": "Competency with performance and memory tuning with tools such as Instruments.",
            "similarity": 0.5446
          },
          {
            "kra_text": "code review and testing support",
            "sentence": "Proficient understanding of code versioning tools (GIT and SVN)",
            "similarity": 0.4851
          },
          {
            "kra_text": "performance tuning and resource efficiency",
            "sentence": "A knack for bench-marking and optimization will be valued.",
            "similarity": 0.4605
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 81,
        "score": 0.4968,
        "slug": "go-backend-developer",
        "total_count": null
      },
      {
        "display_name": "Kotlin Backend Developer",
        "kra_matches": [
          {
            "kra_text": "performance and reliability tuning",
            "sentence": "Competency with performance and memory tuning with tools such as Instruments.",
            "similarity": 0.6193
          },
          {
            "kra_text": "performance and reliability tuning",
            "sentence": "A knack for bench-marking and optimization will be valued.",
            "similarity": 0.4491
          },
          {
            "kra_text": "backend refactoring and maintenance",
            "sentence": "Proficient understanding of code versioning tools (GIT and SVN)",
            "similarity": 0.3665
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 84,
        "score": 0.4783,
        "slug": "kotlin-server-backend-developer",
        "total_count": null
      },
      {
        "display_name": "Java Backend Developer",
        "kra_matches": [
          {
            "kra_text": "backend performance tuning",
            "sentence": "Competency with performance and memory tuning with tools such as Instruments.",
            "similarity": 0.5672
          },
          {
            "kra_text": "code refactoring and defect fixes",
            "sentence": "Proficient understanding of code versioning tools (GIT and SVN)",
            "similarity": 0.4366
          },
          {
            "kra_text": "backend performance tuning",
            "sentence": "A knack for bench-marking and optimization will be valued.",
            "similarity": 0.4178
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 79,
        "score": 0.4739,
        "slug": "java-backend-developer",
        "total_count": null
      },
      {
        "display_name": "PHP Backend Developer",
        "kra_matches": [
          {
            "kra_text": "performance and reliability tuning",
            "sentence": "Competency with performance and memory tuning with tools such as Instruments.",
            "similarity": 0.6193
          },
          {
            "kra_text": "performance and reliability tuning",
            "sentence": "A knack for bench-marking and optimization will be valued.",
            "similarity": 0.4491
          },
          {
            "kra_text": "automated backend regression checks",
            "sentence": "Proficient understanding of code versioning tools (GIT and SVN)",
            "similarity": 0.3313
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 86,
        "score": 0.4666,
        "slug": "php-backend-developer",
        "total_count": null
      },
      {
        "display_name": "Node.js Backend Developer",
        "kra_matches": [
          {
            "kra_text": "defect diagnosis and performance tuning",
            "sentence": "Competency with performance and memory tuning with tools such as Instruments.",
            "similarity": 0.5497
          },
          {
            "kra_text": "code review and refactoring",
            "sentence": "Proficient understanding of code versioning tools (GIT and SVN)",
            "similarity": 0.4533
          },
          {
            "kra_text": "defect diagnosis and performance tuning",
            "sentence": "A knack for bench-marking and optimization will be valued.",
            "similarity": 0.3751
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 82,
        "score": 0.4593,
        "slug": "node-backend-developer",
        "total_count": null
      }
    ],
    "skill_match_roles": [
      {
        "display_name": "iOS Developer",
        "kra_matches": null,
        "matched_count": 6,
        "matched_skills": [
          "Core Data",
          "Core Location",
          "Instruments",
          "Swift",
          "UIKit",
          "push notifications"
        ],
        "role_id": 6,
        "score": 0.3,
        "slug": "ios-engineer",
        "total_count": 20
      },
      {
        "display_name": "Native Mobile Developer",
        "kra_matches": null,
        "matched_count": 4,
        "matched_skills": [
          "Core Data",
          "Core Location",
          "Swift",
          "UIKit"
        ],
        "role_id": 75,
        "score": 0.2,
        "slug": "native-mobile-developer",
        "total_count": 20
      },
      {
        "display_name": "Android Developer",
        "kra_matches": null,
        "matched_count": 4,
        "matched_skills": [
          "Core Data",
          "Core Location",
          "Instruments",
          "UIKit"
        ],
        "role_id": 4,
        "score": 0.2,
        "slug": "android-engineer",
        "total_count": 20
      },
      {
        "display_name": "React Native Developer",
        "kra_matches": null,
        "matched_count": 3,
        "matched_skills": [
          "Core Data",
          "Keychain",
          "push notifications"
        ],
        "role_id": 73,
        "score": 0.15,
        "slug": "react-native-developer",
        "total_count": 20
      },
      {
        "display_name": "Hybrid Mobile Developer",
        "kra_matches": null,
        "matched_count": 2,
        "matched_skills": [
          "Core Data",
          "push notifications"
        ],
        "role_id": 11,
        "score": 0.1,
        "slug": "hybrid-mobile-developer",
        "total_count": 20
      }
    ]
  },
  "stage4_decision": {
    "alias_collision_detected": true,
    "case": "A",
    "chosen_role": {
      "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
    },
    "confidence": 0.95,
    "is_new_role": false,
    "llm2_fired": false,
    "llm2_reasoning": null,
    "matched_dimensions": [],
    "matched_kras": [],
    "matched_skills": [],
    "new_role_display_name": null,
    "new_role_slug": null,
    "queued": false,
    "reasoning": "Multi-alias tie (3 roles at 1.0) resolved by TIER_B_TITLE: iOS Developer",
    "sub_role": {
      "confidence": 0.95,
      "display_name": "iOS Developer",
      "reasoning": "hoisted from chosen leaf (case=A)",
      "role_id": 6,
      "slug": "ios-engineer"
    }
  },
  "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": 756,
      "existing_alias_text": "Swift",
      "input_term": "Swift",
      "matched_canonical": {
        "category_id": 6,
        "display_name": "Swift",
        "id": 440,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "swift",
        "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": 785,
      "existing_alias_text": "Core Data",
      "input_term": "Core Data",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Core Data",
        "id": 459,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "core-data",
        "sub_category_id": 336,
        "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": 835,
      "existing_alias_text": "Core Location",
      "input_term": "Core Location",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Core Location",
        "id": 509,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "core-location",
        "sub_category_id": 332,
        "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": 2624,
      "existing_alias_text": "design patterns",
      "input_term": "Design Patterns",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "design patterns",
        "id": 1654,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "design-patterns",
        "sub_category_id": 1247,
        "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": 771,
      "existing_alias_text": "UIKit",
      "input_term": "UIKit",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "UIKit",
        "id": 445,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "uikit",
        "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": 4287,
      "existing_alias_text": "Keychain",
      "input_term": "Keychain",
      "matched_canonical": {
        "category_id": 3,
        "display_name": "Keychain",
        "id": 2835,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "keychain",
        "sub_category_id": 765,
        "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": 820,
      "existing_alias_text": "Instruments",
      "input_term": "Instruments",
      "matched_canonical": {
        "category_id": 13,
        "display_name": "Instruments",
        "id": 494,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "instruments",
        "sub_category_id": 362,
        "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": 2557,
      "existing_alias_text": "Push Notifications",
      "input_term": "Push Notifications",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "push notifications",
        "id": 1605,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "push-notifications",
        "sub_category_id": 2134,
        "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": 1613,
      "existing_alias_text": "Git",
      "input_term": "Git",
      "matched_canonical": {
        "category_id": 13,
        "display_name": "Git",
        "id": 1002,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "git",
        "sub_category_id": 730,
        "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": 868,
      "existing_alias_text": "Agile",
      "input_term": "Agile",
      "matched_canonical": {
        "category_id": 8,
        "display_name": "Agile",
        "id": 520,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "METHODOLOGY",
        "slug": "agile",
        "sub_category_id": 3594,
        "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": 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"
    }
  ],
  "candidate_roles": [
    {
      "display_name": "Native Mobile Developer",
      "id": 75,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "native-mobile-developer",
      "source": "db"
    },
    {
      "display_name": "iOS Developer",
      "id": 6,
      "rationale": null,
      "role_archetype": null,
      "slug": "ios-engineer",
      "source": "db"
    },
    {
      "display_name": "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": "React Native Developer",
      "id": 73,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "react-native-developer",
      "source": "db"
    },
    {
      "display_name": "Backend Developer",
      "id": 1,
      "rationale": null,
      "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
      "slug": "backend-engineer",
      "source": "db"
    },
    {
      "display_name": "Fullstack Developer",
      "id": 435,
      "rationale": null,
      "role_archetype": "Engineering",
      "slug": "fullstack-developer",
      "source": "db"
    },
    {
      "display_name": "Fullstack Developer",
      "id": 15,
      "rationale": null,
      "role_archetype": null,
      "slug": "full-stack-engineer",
      "source": "db"
    },
    {
      "display_name": ".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": "Ionic Developer",
      "id": 434,
      "rationale": null,
      "role_archetype": null,
      "slug": "ionic-developer",
      "source": "db"
    },
    {
      "display_name": "Frontend Developer",
      "id": 7,
      "rationale": null,
      "role_archetype": null,
      "slug": "frontend-engineer",
      "source": "db"
    },
    {
      "display_name": "Web Developer",
      "id": 25,
      "rationale": null,
      "role_archetype": null,
      "slug": "web-developer",
      "source": "db"
    }
  ],
  "chosen_role": {
    "display_name": "Native Mobile Developer",
    "id": 75,
    "rationale": "Multi-alias tie (3 roles at 1.0) resolved by TIER_B_TITLE: iOS Developer",
    "role_archetype": "Engineering",
    "slug": "native-mobile-developer",
    "source": "db"
  },
  "dimensions": [
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Native Mobile Languages",
        "id": 274,
        "rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
        "slug": "native-mobile-languages",
        "source": "db"
      },
      "input_skill": "Swift",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Native Mobile Developer",
          "id": 75,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "native-mobile-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Swift and Objective-C",
        "id": 81,
        "rationale": "Primary implementation languages for native iOS app features, platform APIs, and client-side business logic. This is the core coding surface for building and maintaining iPhone and iPad experiences.",
        "slug": "swift-and-objective-c",
        "source": "db"
      },
      "input_skill": "Swift",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "iOS Developer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "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": "Core Data",
      "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": "Device APIs and Hardware Features",
        "id": 95,
        "rationale": "iOS platform APIs that expose hardware and device capabilities to apps. This cluster covers the concrete integrations iOS engineers use for camera, sensors, location, and media experiences.",
        "slug": "device-apis-and-hardware-features",
        "source": "db"
      },
      "input_skill": "Core Location",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Developer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Native Mobile Developer",
          "id": 75,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "native-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "iOS Developer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "API Design and Contracts",
        "id": 3,
        "rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
        "slug": "api-design-and-contracts",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Backend Developer",
          "id": 1,
          "rationale": null,
          "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
          "slug": "backend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 435,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "fullstack-developer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "API Interface and Contract Design",
        "id": 289,
        "rationale": "Designing backend service interfaces and contracts that other systems consume, including endpoint and operation shape, request/response payloads, schema and validation, pagination, filtering, idempotency, versioning, status codes, and backward compatibility across REST, GraphQL, gRPC, and OpenAPI-based APIs.",
        "slug": "api-interface-and-contract-design",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": ".NET Backend Developer",
          "id": 83,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "dotnet-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Go Backend Developer",
          "id": 81,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "go-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Kotlin Backend Developer",
          "id": 84,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "kotlin-server-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Node.js Backend Developer",
          "id": 82,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "node-backend-developer",
          "source": "db"
        },
        {
          "display_name": "PHP Backend Developer",
          "id": 86,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "php-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Python Backend Developer",
          "id": 80,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "python-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Ruby Backend Developer",
          "id": 85,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "ruby-backend-developer",
          "source": "db"
        },
        {
          "display_name": "Scala Backend Developer",
          "id": 87,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "scala-backend-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Integration Protocols \u0026 Standards",
        "id": 271,
        "rationale": "Standards and protocols for integrating Pega applications.",
        "slug": "integration-protocols-standards",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Pega Developer",
          "id": 24,
          "rationale": null,
          "role_archetype": null,
          "slug": "pega-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Standards, Protocols \u0026 Compliance",
        "id": 452,
        "rationale": "Ensure teams adhere to industry standards, security protocols, and regulatory compliance requirements.",
        "slug": "standards-protocols-compliance",
        "source": "db"
      },
      "input_skill": "REST",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Engineering Manager",
          "id": 121,
          "rationale": null,
          "role_archetype": null,
          "slug": "engineering-manager",
          "source": "db"
        },
        {
          "display_name": "Sitecore Dev",
          "id": 233,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "sitecore-dev",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "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": "Design Patterns",
      "llm_role": null,
      "roles_from_db": []
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Android UI Frameworks",
        "id": 162,
        "rationale": "Frameworks and component models used to build Android screens, layouts, and interactive UI behavior. This cluster covers both modern declarative UI and legacy view-based interfaces that Android engineers maintain in real products.",
        "slug": "android-ui-frameworks",
        "source": "db"
      },
      "input_skill": "UIKit",
      "llm_role": null,
      "roles_from_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"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "UIKit and SwiftUI",
        "id": 82,
        "rationale": "Frameworks and component models used to build screens, layouts, and interactive UI behavior on iOS. This cluster covers both declarative and imperative UI work needed to implement app flows.",
        "slug": "uikit-and-swiftui",
        "source": "db"
      },
      "input_skill": "UIKit",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "iOS Developer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Mobile Client Authentication and Secure Credential Storage",
        "id": 310,
        "rationale": "Client-side identity and sign-in flows for mobile apps, including OAuth 2.0/OpenID Connect/PKCE login, provider sign-in, token and session lifecycle handling, secure on-device storage of secrets and refresh tokens, biometric unlock, and platform credential stores such as Flutter secure storage and iOS Keychain. Excludes backend authorization policy, identity provider administration, and unrelated app navigation or networking.",
        "slug": "mobile-client-authentication-and-secure-credential-storage",
        "source": "db"
      },
      "input_skill": "Keychain",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Flutter Developer",
          "id": 74,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "flutter-developer",
          "source": "db"
        },
        {
          "display_name": "React Native Developer",
          "id": 73,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-native-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Performance and Stability Tuning",
        "id": 92,
        "rationale": "Techniques for improving responsiveness, startup time, memory use, and overall app stability on iOS devices. This cluster is important because client performance directly affects user experience and release readiness.",
        "slug": "performance-and-stability-tuning",
        "source": "db"
      },
      "input_skill": "Instruments",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Developer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "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": "Background Execution and Lifecycle",
        "id": 87,
        "rationale": "App lifecycle handling and deferred work mechanisms that keep iOS behavior reliable when the app is backgrounded, suspended, or relaunched. This is important for sync, refresh, and user-visible continuity.",
        "slug": "background-execution-and-lifecycle",
        "source": "db"
      },
      "input_skill": "Push Notifications",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-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": "Push Notifications and Deep Links",
        "id": 320,
        "rationale": "Mechanisms for receiving notifications and routing users into the right in-app destination from external entry points. React Native developers use these flows to re-engage users and restore context after taps or app launches.",
        "slug": "push-notifications-and-deep-links",
        "source": "db"
      },
      "input_skill": "Push Notifications",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "React Native Developer",
          "id": 73,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "react-native-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": "Git",
      "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": "Agile",
      "llm_role": null,
      "roles_from_db": []
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Software Concepts, Patterns \u0026 Practices",
        "id": 478,
        "rationale": "Champion foundational software design patterns, development methodologies, and engineering best practices.",
        "slug": "software-concepts-patterns-practices",
        "source": "db"
      },
      "input_skill": "Agile",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Engineering Manager",
          "id": 121,
          "rationale": null,
          "role_archetype": null,
          "slug": "engineering-manager",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "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": 435,
          "rationale": null,
          "role_archetype": "Engineering",
          "slug": "fullstack-developer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "Ionic Developer",
          "id": 434,
          "rationale": null,
          "role_archetype": null,
          "slug": "ionic-developer",
          "source": "db"
        },
        {
          "display_name": "Web Developer",
          "id": 25,
          "rationale": null,
          "role_archetype": null,
          "slug": "web-developer",
          "source": "db"
        }
      ]
    }
  ],
  "input_final_skills": [
    "Swift",
    "Core Data",
    "Core Location",
    "REST",
    "Object-Oriented Programming",
    "Design Patterns",
    "Accessibility",
    "Foundation",
    "UIKit",
    "MapKit",
    "Core Graphics",
    "Core Animation",
    "Security Framework",
    "Keychain",
    "Instruments",
    "Push Notifications",
    "Git",
    "SVN",
    "Continuous Integration",
    "Agile",
    "Flutter"
  ],
  "input_llm_skills": [
    "Swift",
    "Core Data",
    "Core Location",
    "REST",
    "Object-Oriented Programming",
    "Design Patterns",
    "Accessibility",
    "Foundation",
    "UIKit",
    "MapKit",
    "Core Graphics",
    "Core Animation",
    "Security Framework",
    "Keychain",
    "Instruments",
    "Push Notifications",
    "Git",
    "SVN",
    "Continuous Integration",
    "Agile",
    "Flutter"
  ],
  "new_aliases_persisted": 0,
  "run_id": "ab69a369-3d8a-44d2-9fe1-3b6e29399e7f",
  "skills_detail": [
    {
      "aliases_in_db": [
        {
          "alias_text": "Swift",
          "alias_type": "CANONICAL",
          "id": 756,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 2.0",
          "alias_type": "VERSION",
          "id": 757,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 2.x",
          "alias_type": "VERSION",
          "id": 758,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 3.0",
          "alias_type": "VERSION",
          "id": 759,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 3.x",
          "alias_type": "VERSION",
          "id": 760,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 4.0",
          "alias_type": "VERSION",
          "id": 761,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 4.x",
          "alias_type": "VERSION",
          "id": 762,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 5.0",
          "alias_type": "VERSION",
          "id": 763,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 5.x",
          "alias_type": "VERSION",
          "id": 764,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 6.0",
          "alias_type": "VERSION",
          "id": 765,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Swift 6.x",
          "alias_type": "VERSION",
          "id": 766,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 6,
        "display_name": "Swift",
        "id": 440,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "swift",
        "sub_category_id": 96,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Native Mobile Languages",
            "id": 274,
            "rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
            "slug": "native-mobile-languages",
            "source": "db"
          },
          "input_skill": "Swift",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Native Mobile Developer",
              "id": 75,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "native-mobile-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Swift and Objective-C",
            "id": 81,
            "rationale": "Primary implementation languages for native iOS app features, platform APIs, and client-side business logic. This is the core coding surface for building and maintaining iPhone and iPad experiences.",
            "slug": "swift-and-objective-c",
            "source": "db"
          },
          "input_skill": "Swift",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "iOS Developer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Swift",
      "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": "Core Data",
          "alias_type": "CANONICAL",
          "id": 785,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Core Data",
        "id": 459,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "core-data",
        "sub_category_id": 336,
        "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": "Core Data",
          "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"
            }
          ]
        }
      ],
      "input_skill": "Core Data",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Core Location",
          "alias_type": "CANONICAL",
          "id": 835,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Core Location",
        "id": 509,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "core-location",
        "sub_category_id": 332,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Device APIs and Hardware Features",
            "id": 95,
            "rationale": "iOS platform APIs that expose hardware and device capabilities to apps. This cluster covers the concrete integrations iOS engineers use for camera, sensors, location, and media experiences.",
            "slug": "device-apis-and-hardware-features",
            "source": "db"
          },
          "input_skill": "Core Location",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Developer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Native Mobile Developer",
              "id": 75,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "native-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "iOS Developer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Core Location",
      "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": 435,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "fullstack-developer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "API Interface and Contract Design",
            "id": 289,
            "rationale": "Designing backend service interfaces and contracts that other systems consume, including endpoint and operation shape, request/response payloads, schema and validation, pagination, filtering, idempotency, versioning, status codes, and backward compatibility across REST, GraphQL, gRPC, and OpenAPI-based APIs.",
            "slug": "api-interface-and-contract-design",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": ".NET Backend Developer",
              "id": 83,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "dotnet-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Go Backend Developer",
              "id": 81,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "go-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Kotlin Backend Developer",
              "id": 84,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "kotlin-server-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Node.js Backend Developer",
              "id": 82,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "node-backend-developer",
              "source": "db"
            },
            {
              "display_name": "PHP Backend Developer",
              "id": 86,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "php-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Python Backend Developer",
              "id": 80,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "python-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Ruby Backend Developer",
              "id": 85,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "ruby-backend-developer",
              "source": "db"
            },
            {
              "display_name": "Scala Backend Developer",
              "id": 87,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "scala-backend-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Integration Protocols \u0026 Standards",
            "id": 271,
            "rationale": "Standards and protocols for integrating Pega applications.",
            "slug": "integration-protocols-standards",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Pega Developer",
              "id": 24,
              "rationale": null,
              "role_archetype": null,
              "slug": "pega-developer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Standards, Protocols \u0026 Compliance",
            "id": 452,
            "rationale": "Ensure teams adhere to industry standards, security protocols, and regulatory compliance requirements.",
            "slug": "standards-protocols-compliance",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Engineering Manager",
              "id": 121,
              "rationale": null,
              "role_archetype": null,
              "slug": "engineering-manager",
              "source": "db"
            },
            {
              "display_name": "Sitecore Dev",
              "id": 233,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "sitecore-dev",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "REST",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Object-Oriented Programming",
      "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": "object-oriented-programming",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "design patterns",
          "alias_type": "CANONICAL",
          "id": 2624,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "design patterns",
        "id": 1654,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "design-patterns",
        "sub_category_id": 1247,
        "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": "Design Patterns",
          "llm_role": null,
          "roles_from_db": []
        }
      ],
      "input_skill": "Design Patterns",
      "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": "Accessibility",
      "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": "accessibility",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Foundation",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Frameworks",
          "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": "foundation",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "UIKit",
          "alias_type": "CANONICAL",
          "id": 771,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "UIKit",
        "id": 445,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "uikit",
        "sub_category_id": 341,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Android UI Frameworks",
            "id": 162,
            "rationale": "Frameworks and component models used to build Android screens, layouts, and interactive UI behavior. This cluster covers both modern declarative UI and legacy view-based interfaces that Android engineers maintain in real products.",
            "slug": "android-ui-frameworks",
            "source": "db"
          },
          "input_skill": "UIKit",
          "llm_role": null,
          "roles_from_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"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "UIKit and SwiftUI",
            "id": 82,
            "rationale": "Frameworks and component models used to build screens, layouts, and interactive UI behavior on iOS. This cluster covers both declarative and imperative UI work needed to implement app flows.",
            "slug": "uikit-and-swiftui",
            "source": "db"
          },
          "input_skill": "UIKit",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "iOS Developer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "UIKit",
      "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": "MapKit",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Frameworks",
          "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": "mapkit",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Core Graphics",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Frameworks",
          "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": "core-graphics",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Core Animation",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Frameworks",
          "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": "core-animation",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Security Framework",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Frameworks",
          "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": "security-framework",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Keychain",
          "alias_type": "CANONICAL",
          "id": 4287,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 3,
        "display_name": "Keychain",
        "id": 2835,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "keychain",
        "sub_category_id": 765,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Mobile Client Authentication and Secure Credential Storage",
            "id": 310,
            "rationale": "Client-side identity and sign-in flows for mobile apps, including OAuth 2.0/OpenID Connect/PKCE login, provider sign-in, token and session lifecycle handling, secure on-device storage of secrets and refresh tokens, biometric unlock, and platform credential stores such as Flutter secure storage and iOS Keychain. Excludes backend authorization policy, identity provider administration, and unrelated app navigation or networking.",
            "slug": "mobile-client-authentication-and-secure-credential-storage",
            "source": "db"
          },
          "input_skill": "Keychain",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Flutter Developer",
              "id": 74,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "flutter-developer",
              "source": "db"
            },
            {
              "display_name": "React Native Developer",
              "id": 73,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-native-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Keychain",
      "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": "Instruments",
          "alias_type": "CANONICAL",
          "id": 820,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 13,
        "display_name": "Instruments",
        "id": 494,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "instruments",
        "sub_category_id": 362,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Performance and Stability Tuning",
            "id": 92,
            "rationale": "Techniques for improving responsiveness, startup time, memory use, and overall app stability on iOS devices. This cluster is important because client performance directly affects user experience and release readiness.",
            "slug": "performance-and-stability-tuning",
            "source": "db"
          },
          "input_skill": "Instruments",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Developer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "iOS Developer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Instruments",
      "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": "push notifications",
          "alias_type": "CANONICAL",
          "id": 4339,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Push Notifications",
          "alias_type": "CANONICAL",
          "id": 2557,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "push notifications",
        "id": 1605,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "push-notifications",
        "sub_category_id": 2134,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Background Execution and Lifecycle",
            "id": 87,
            "rationale": "App lifecycle handling and deferred work mechanisms that keep iOS behavior reliable when the app is backgrounded, suspended, or relaunched. This is important for sync, refresh, and user-visible continuity.",
            "slug": "background-execution-and-lifecycle",
            "source": "db"
          },
          "input_skill": "Push Notifications",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-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": "Push Notifications and Deep Links",
            "id": 320,
            "rationale": "Mechanisms for receiving notifications and routing users into the right in-app destination from external entry points. React Native developers use these flows to re-engage users and restore context after taps or app launches.",
            "slug": "push-notifications-and-deep-links",
            "source": "db"
          },
          "input_skill": "Push Notifications",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "React Native Developer",
              "id": 73,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "react-native-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Push Notifications",
      "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": "Git",
          "alias_type": "CANONICAL",
          "id": 1613,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 13,
        "display_name": "Git",
        "id": 1002,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "TOOL",
        "slug": "git",
        "sub_category_id": 730,
        "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": "Git",
          "llm_role": null,
          "roles_from_db": []
        }
      ],
      "input_skill": "Git",
      "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": "SVN",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Version Control",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "SHORT_LIVED",
          "version_strategy": "VERSIONED",
          "volatility": "FAST"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "svn",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Continuous Integration",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Practices",
          "skill_nature": "PRACTICE",
          "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": "continuous-integration",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Agile",
          "alias_type": "CANONICAL",
          "id": 868,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 8,
        "display_name": "Agile",
        "id": 520,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "METHODOLOGY",
        "slug": "agile",
        "sub_category_id": 3594,
        "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": "Agile",
          "llm_role": null,
          "roles_from_db": []
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Software Concepts, Patterns \u0026 Practices",
            "id": 478,
            "rationale": "Champion foundational software design patterns, development methodologies, and engineering best practices.",
            "slug": "software-concepts-patterns-practices",
            "source": "db"
          },
          "input_skill": "Agile",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Engineering Manager",
              "id": 121,
              "rationale": null,
              "role_archetype": null,
              "slug": "engineering-manager",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Agile",
      "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": "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": 435,
              "rationale": null,
              "role_archetype": "Engineering",
              "slug": "fullstack-developer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "Ionic Developer",
              "id": 434,
              "rationale": null,
              "role_archetype": null,
              "slug": "ionic-developer",
              "source": "db"
            },
            {
              "display_name": "Web Developer",
              "id": 25,
              "rationale": null,
              "role_archetype": null,
              "slug": "web-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Flutter",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    }
  ],
  "unmatched_skills": [
    "Object-Oriented Programming",
    "Accessibility",
    "Foundation",
    "MapKit",
    "Core Graphics",
    "Core Animation",
    "Security Framework",
    "SVN",
    "Continuous Integration"
  ]
}
API 3 — final-role-output
{
  "chosen_role": {
    "display_name": "Native Mobile Developer",
    "id": 75,
    "rationale": "Multi-alias tie (3 roles at 1.0) resolved by TIER_B_TITLE: iOS Developer",
    "role_archetype": "Engineering",
    "slug": "native-mobile-developer",
    "source": "db"
  },
  "chosen_role_resolution": "in_db",
  "final_input_skills": [
    {
      "skill": "Swift",
      "tag": "in_db"
    },
    {
      "skill": "Core Data",
      "tag": "in_db"
    },
    {
      "skill": "Core Location",
      "tag": "in_db"
    },
    {
      "skill": "REST",
      "tag": "in_db"
    },
    {
      "skill": "Object-Oriented Programming",
      "tag": "new"
    },
    {
      "skill": "Design Patterns",
      "tag": "in_db"
    },
    {
      "skill": "Accessibility",
      "tag": "new"
    },
    {
      "skill": "Foundation",
      "tag": "new"
    },
    {
      "skill": "UIKit",
      "tag": "in_db"
    },
    {
      "skill": "MapKit",
      "tag": "new"
    },
    {
      "skill": "Core Graphics",
      "tag": "new"
    },
    {
      "skill": "Core Animation",
      "tag": "new"
    },
    {
      "skill": "Security Framework",
      "tag": "new"
    },
    {
      "skill": "Keychain",
      "tag": "in_db"
    },
    {
      "skill": "Instruments",
      "tag": "in_db"
    },
    {
      "skill": "Push Notifications",
      "tag": "in_db"
    },
    {
      "skill": "Git",
      "tag": "in_db"
    },
    {
      "skill": "SVN",
      "tag": "new"
    },
    {
      "skill": "Continuous Integration",
      "tag": "new"
    },
    {
      "skill": "Agile",
      "tag": "in_db"
    },
    {
      "skill": "Flutter",
      "tag": "in_db"
    }
  ],
  "llm_cost_api1_usd": null,
  "llm_cost_api2_usd": null,
  "llm_cost_api3_usd": null,
  "llm_cost_total_usd": null,
  "persistence": {
    "items": [
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Native Mobile Languages",
          "id": 274,
          "rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
          "slug": "native-mobile-languages",
          "source": "db"
        },
        "dimension_id": 274,
        "input_skill": "Swift",
        "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": "Native Mobile Developer",
            "id": 75,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "native-mobile-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 440,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Swift and Objective-C",
          "id": 81,
          "rationale": "Primary implementation languages for native iOS app features, platform APIs, and client-side business logic. This is the core coding surface for building and maintaining iPhone and iPad experiences.",
          "slug": "swift-and-objective-c",
          "source": "db"
        },
        "dimension_id": 81,
        "input_skill": "Swift",
        "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": "iOS Developer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 440,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "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": "Core Data",
        "llm_role": null,
        "matched_chosen_role": true,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
        "role_dimension_saved": true,
        "roles_from_db": [
          {
            "display_name": "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": 459,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Device APIs and Hardware Features",
          "id": 95,
          "rationale": "iOS platform APIs that expose hardware and device capabilities to apps. This cluster covers the concrete integrations iOS engineers use for camera, sensors, location, and media experiences.",
          "slug": "device-apis-and-hardware-features",
          "source": "db"
        },
        "dimension_id": 95,
        "input_skill": "Core Location",
        "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": "Native Mobile Developer",
            "id": 75,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "native-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "iOS Developer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 509,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "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": 435,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "fullstack-developer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 11,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "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": 75,
        "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": 75,
        "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": 75,
        "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": "Design Patterns",
        "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": 1654,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Android UI Frameworks",
          "id": 162,
          "rationale": "Frameworks and component models used to build Android screens, layouts, and interactive UI behavior. This cluster covers both modern declarative UI and legacy view-based interfaces that Android engineers maintain in real products.",
          "slug": "android-ui-frameworks",
          "source": "db"
        },
        "dimension_id": 162,
        "input_skill": "UIKit",
        "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": "Native Mobile Developer",
            "id": 75,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "native-mobile-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 445,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "UIKit and SwiftUI",
          "id": 82,
          "rationale": "Frameworks and component models used to build screens, layouts, and interactive UI behavior on iOS. This cluster covers both declarative and imperative UI work needed to implement app flows.",
          "slug": "uikit-and-swiftui",
          "source": "db"
        },
        "dimension_id": 82,
        "input_skill": "UIKit",
        "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": "iOS Developer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 445,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Mobile Client Authentication and Secure Credential Storage",
          "id": 310,
          "rationale": "Client-side identity and sign-in flows for mobile apps, including OAuth 2.0/OpenID Connect/PKCE login, provider sign-in, token and session lifecycle handling, secure on-device storage of secrets and refresh tokens, biometric unlock, and platform credential stores such as Flutter secure storage and iOS Keychain. Excludes backend authorization policy, identity provider administration, and unrelated app navigation or networking.",
          "slug": "mobile-client-authentication-and-secure-credential-storage",
          "source": "db"
        },
        "dimension_id": 310,
        "input_skill": "Keychain",
        "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"
          },
          {
            "display_name": "React Native Developer",
            "id": 73,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-native-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 2835,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Performance and Stability Tuning",
          "id": 92,
          "rationale": "Techniques for improving responsiveness, startup time, memory use, and overall app stability on iOS devices. This cluster is important because client performance directly affects user experience and release readiness.",
          "slug": "performance-and-stability-tuning",
          "source": "db"
        },
        "dimension_id": 92,
        "input_skill": "Instruments",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Android Developer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "iOS Developer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 494,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Background Execution and Lifecycle",
          "id": 87,
          "rationale": "App lifecycle handling and deferred work mechanisms that keep iOS behavior reliable when the app is backgrounded, suspended, or relaunched. This is important for sync, refresh, and user-visible continuity.",
          "slug": "background-execution-and-lifecycle",
          "source": "db"
        },
        "dimension_id": 87,
        "input_skill": "Push Notifications",
        "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": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-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": 1605,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Push Notifications and Deep Links",
          "id": 320,
          "rationale": "Mechanisms for receiving notifications and routing users into the right in-app destination from external entry points. React Native developers use these flows to re-engage users and restore context after taps or app launches.",
          "slug": "push-notifications-and-deep-links",
          "source": "db"
        },
        "dimension_id": 320,
        "input_skill": "Push Notifications",
        "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"
          },
          {
            "display_name": "React Native Developer",
            "id": 73,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "react-native-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1605,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "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": "Git",
        "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": 1002,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "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": "Agile",
        "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": 520,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Software Concepts, Patterns \u0026 Practices",
          "id": 478,
          "rationale": "Champion foundational software design patterns, development methodologies, and engineering best practices.",
          "slug": "software-concepts-patterns-practices",
          "source": "db"
        },
        "dimension_id": 478,
        "input_skill": "Agile",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Engineering Manager",
            "id": 121,
            "rationale": null,
            "role_archetype": null,
            "slug": "engineering-manager",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 520,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 75,
        "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": 75,
        "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": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 435,
            "rationale": null,
            "role_archetype": "Engineering",
            "slug": "fullstack-developer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "Ionic Developer",
            "id": 434,
            "rationale": null,
            "role_archetype": null,
            "slug": "ionic-developer",
            "source": "db"
          },
          {
            "display_name": "Web Developer",
            "id": 25,
            "rationale": null,
            "role_archetype": null,
            "slug": "web-developer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1041,
        "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": "ab69a369-3d8a-44d2-9fe1-3b6e29399e7f"
}

LLM Calls

Every model call made for this run, in pipeline order. Click a card to see the model's response.

Loading…