← Back to history

Pipeline run

3daac123-f579-451d-b320-afffdda86154

Pipeline LLM cost (USD)
API 1: $0.0034 API 2: $0.0005 API 3: $0.0000 Total: $0.0039

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 · Native UI feature development
Build and ship native iOS features in Swift/Objective-C with UIKit and SwiftUI, covering navigation/deep links, notifications, secure auth/storage, performance tuning, and App Store/TestFlight releases while maintaining the small Spring Boot API backend.
"Build native iOS apps using Swift and Objective-C with UIKit and SwiftUI"
Tech stack maturity
Mainstream Modern
The skill set centers on contemporary iOS development with Swift/SwiftUI, TestFlight, App Store, provisioning, and modern auth patterns, while still including some Objective-C and Spring Boot integration that are common in established production stacks.
AI index (0 = no AI use, 5 = totally AI-dependent · v2.1)
0.20 / 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): Modal
Models / concepts (×3):
Evidence — skills matched in JD (18)
Java Swift Objective-C UIKit SwiftUI APNs Core Data Keychain Sign In with Apple OAuth 2.0 Xcode Instruments Apple App Store Code Signing Provisioning Profiles TestFlight Auto Layout Spring Boot REST
Skill cluster (11 dimension groups, role-scoped)
UIKit and SwiftUI
UIKit SwiftUI Auto Layout
Authentication and Session Handling
Sign In with Apple OAuth 2.0
Build and Release Tooling
Code Signing Provisioning Profiles
Swift and Objective-C
Swift Objective-C
App Distribution and Store Operations
TestFlight
Integration Protocols & Standards
REST
Java Language and JVM
Java
Local Persistence and Offline Behavior
Core Data
Push Notifications and Messaging
APNs
Web Service Frameworks
Spring Boot
Cross-cutting / unaligned
Keychain Xcode Instruments Apple App Store
Show KRA description ↓
- Build native iOS apps using Swift and Objective-C with UIKit and SwiftUI - Implement view controllers, tab bar navigation, modal presentations, and deep link routing - Handle push notifications via APNs, CoreData persistence, and Keychain-based secure storage - Integrate Sign In with Apple, OAuth 2.0 token flows, and biometric authentication - Optimize iOS app launch time, memory footprint, and frame rate using Xcode Instruments - Submit releases to the Apple App Store with proper code signing, provisioning profiles, and TestFlight beta rollouts - Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility - Maintain a small Java Spring Boot backend that provides the iOS app's REST API endpoints

Signals

Skill ios-engineer
0.67
Alias ios-engineer
1.00
KRA ios-engineer
0.85

Post-classification

Centroidupdated · n=29
Alias collision log
New-role queue
New skills captured2
New KRA captured

Captured for admin review

Keychain primary IOS Engineer pending
Xcode Instruments primary IOS Engineer pending
Status: completed Created: 2026-05-21T17:55:18.177321Z Updated: 2026-05-21T17:55:32.610017Z API 3 duration: 7733 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

IOS Engineer

CASE A

slug: ios-engineer · id: 6 · source: db

The role of IOS Engineer perfectly aligns with the primary skills required such as Swift, Objective-C, and UIKit.

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

Job Title: Java Developer (Mobile Apps)
Company: AppHouse Mobile Studio
Location: Mumbai, India
Experience: 3-5 years

About the Role:
We are hiring a Java Developer with a focus on native iOS mobile applications. Despite the title, this role is primarily iOS-focused — the Java refers to legacy backend context our team also maintains.

Key Responsibilities:
- Build native iOS apps using Swift and Objective-C with UIKit and SwiftUI
- Implement view controllers, tab bar navigation, modal presentations, and deep link routing
- Handle push notifications via APNs, CoreData persistence, and Keychain-based secure storage
- Integrate Sign In with Apple, OAuth 2.0 token flows, and biometric authentication
- Optimize iOS app launch time, memory footprint, and frame rate using Xcode Instruments
- Submit releases to the Apple App Store with proper code signing, provisioning profiles, and TestFlight beta rollouts
- Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility
- Maintain a small Java Spring Boot backend that provides the iOS app's REST API endpoints

Required Qualifications:
- 3+ years building native iOS apps in Swift
- Familiarity with UIKit, SwiftUI, CoreData, and modern iOS app architecture (MVVM, Combine)
- Knowledge of Java Spring Boot for backend API integration
- Apple App Store submission and code signing experience

Skills from this JD

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

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

Aliases — catalog

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

Context tags (catalog)

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

Stored enrichment (catalog DB)

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

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

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Kotlin and Java Catalog dimension db id 161

    Library dimension (catalog)

    Roles linked in library: Android Engineer

  • Programming Languages Catalog dimension db id 1

    Library dimension (catalog)

    Roles linked in library: Backend Developer, Fullstack Developer

  • Programming Languages for Data Work Catalog dimension db id 21

    Library dimension (catalog)

    Roles linked in library: Data Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Kotlin and Java
kotlin-and-java
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Programming Languages
programming-languages
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Programming Languages for Data Work
programming-languages-for-data-work
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
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)

  • Swift and Objective-C Catalog dimension db id 81

    Library dimension (catalog)

    Roles linked in library: IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Swift and Objective-C
swift-and-objective-c
Existing dimension (library) · Role↔dimension saved
Objective-C Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Objective-C id=441 · objective-c

Aliases — catalog

  • Objective-C (CANONICAL) primary

Context tags (catalog)

ARC AppKit Cocoa Cocoa Touch Core Data Foundation IBAction IBOutlet Interface Builder NSURLConnection NSURLSession Objective-C runtime Swift UIKit Xcode blocks categories delegates iOS macOS protocols selectors

Stored enrichment (catalog DB)

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

Maturity reasoning: Objective-C still appears in iOS/macOS legacy maintenance JDs, but most new Apple development listings now favor Swift, indicating a narrow, declining market signal.

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)

  • Swift and Objective-C Catalog dimension db id 81

    Library dimension (catalog)

    Roles linked in library: IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Swift and Objective-C
swift-and-objective-c
Existing dimension (library) · Role↔dimension saved
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)

  • UIKit and SwiftUI Catalog dimension db id 82

    Library dimension (catalog)

    Roles linked in library: IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
UIKit and SwiftUI
uikit-and-swiftui
Existing dimension (library) · Role↔dimension saved
SwiftUI Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: SwiftUI id=444 · swiftui

Aliases — catalog

  • SwiftUI (CANONICAL) primary

Context tags (catalog)

@Binding @State Accessibility Animations Combine Core Data Declarative syntax ForEach List MVVM Modifiers NavigationStack Preview State management Swift Swift Concurrency Swift Package Manager Swift Playgrounds UIKit Views Xcode iOS macOS tvOS watchOS

Stored enrichment (catalog DB)

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

Maturity reasoning: SwiftUI is widely listed in iOS/macOS job postings and is Apple’s primary UI framework for new apps, with strong ecosystem adoption replacing much UIKit-only greenfield work.

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)

  • UIKit and SwiftUI Catalog dimension db id 82

    Library dimension (catalog)

    Roles linked in library: IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
UIKit and SwiftUI
uikit-and-swiftui
Existing dimension (library) · Role↔dimension saved
APNs Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: APNs id=474 · apns

Aliases — catalog

  • APNs (CANONICAL) primary

Context tags (catalog)

APNs authentication APNs feedback service APNs provider APNs provider API APNs token Apple Developer account Apple Push Notification service JSON payload VoIP alert auth key badge certificate device token device tokens feedback service iOS iPad iPhone notification delivery notification payload notification service payload production production environment push notifications push token sandbox sandbox environment silent notifications silent push token-based authentication topic topic-based messaging

Stored enrichment (catalog DB)

Category
Service
Sub-category
Push Notification Service
Vendor
Apple Inc.
License
unknown
Year introduced
2010
Confidence
0.96
Version strategy
NOT_APPLICABLE

Maturity reasoning: APNs is Apple’s standard push service and appears routinely in iOS/mobile job descriptions and docs; it remains the required path for Apple device notifications, not a sunset technology.

Skill profile (library / DB)

Skill nature
CLOUD_SERVICE
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
11
Sub-category id
356
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Push Notifications and Messaging Catalog dimension db id 88

    Library dimension (catalog)

    Roles linked in library: Android Engineer, Hybrid Mobile Developer, IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Push Notifications and Messaging
push-notifications-and-messaging
Existing dimension (library) · Role↔dimension saved
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 Engineer, Hybrid Mobile Developer, IOS Engineer

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
Keychain 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
Security Tools
Sub-category
general
Skill nature
TOOL
Volatility
STABLE
Typical lifespan
EVERGREEN
Version strategy
UNVERSIONED
Sign In with Apple Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Sign in with Apple id=467 · sign-in-with-apple

Aliases — catalog

  • Sign in with Apple (CANONICAL) primary

Context tags (catalog)

App Store Connect Apple ID JWT OAuth 2.0 OpenID Connect Sign in with Google Swift authentication flow authorization code bundle ID client secret iOS macOS nonce redirect URI

Stored enrichment (catalog DB)

Category
Service
Sub-category
Identity Service
Vendor
Apple
License
proprietary
Year introduced
2019
Confidence
0.90
Version strategy
NOT_APPLICABLE

Maturity reasoning: Commonly listed in mobile/web auth JDs for iOS apps and Apple ecosystem integrations; Apple’s official docs and App Store requirements keep it a standard identity option rather than a niche add-on.

Skill profile (library / DB)

Skill nature
CLOUD_SERVICE
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
11
Sub-category id
267
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Authentication and Session Handling Catalog dimension db id 86

    Library dimension (catalog)

    Roles linked in library: Android Engineer, Frontend Developer, Fullstack Developer, Hybrid Mobile Developer, IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Authentication and Session Handling
authentication-and-session-handling
Existing dimension (library) · Role↔dimension saved
OAuth 2.0 Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: OAuth 2.0 id=26 · oauth-2-0

Aliases — catalog

  • OAuth 2.0 (CANONICAL) primary

Context tags (catalog)

API security Bearer Bearer token Bearer_token JWT OAuth 1.0 OAuth 2.0 flows OAuth 2.1 OAuth flow OAuth2 client OAuth2.0 OAuth2.1 OAuth2_client OIDC OpenID Connect PKCE SAML SSO access token access_token authorization code authorization server authorization_code authorization_server bearer token bearer_token client credentials client_credentials client_id consent consent screen grant types grant_type identity provider implicit flow implicit grant implicit_flow implicit_grant introspection redirect URI redirect_uri refresh token refresh_token resource owner resource server resource_owner resource_server scope scopes security best practices state parameter state_parameter token endpoint token exchange token introspection token revocation token_endpoint user consent user_info

Stored enrichment (catalog DB)

Category
Protocol
Sub-category
Authorization Protocol
Vendor
IETF
License
unknown
Year introduced
2010
Confidence
0.99
Version strategy
NOT_APPLICABLE

Maturity reasoning: OAuth 2.0 appears in many job descriptions for API, SSO, and identity work, and is the default authorization standard in major vendor docs (Google, Microsoft, Okta) rather than a niche add-on.

Skill profile (library / DB)

Skill nature
PROTOCOL
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
10
Sub-category id
50
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • Authentication and Authorization Catalog dimension db id 6

    Library dimension (catalog)

    Roles linked in library: Backend Developer

  • Authentication and Session Handling Catalog dimension db id 86

    Library dimension (catalog)

    Roles linked in library: Android Engineer, Frontend Developer, Fullstack Developer, Hybrid Mobile Developer, IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Authentication and Authorization
authentication-and-authorization
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Authentication and Session Handling
authentication-and-session-handling
Existing dimension (library) · Role↔dimension saved
Xcode Instruments Primary New / orchestrated API 3: new canonical path (new) New / unmatched skill (orchestrated in API 2)

Skill enrichment (orchestrator / LLM)

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

Derived legacy fields
Category
Monitoring Tools
Sub-category
general
Skill nature
TOOL
Volatility
MEDIUM
Typical lifespan
MULTI_YEAR
Version strategy
UNVERSIONED
Apple App Store Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Apple App Store id=1085 · apple-app-store

Aliases — catalog

  • Apple App Store (CANONICAL) primary

Context tags (catalog)

App Analytics App Review Guidelines App Store Connect App Store Optimization App Store listing SwiftUI TestFlight UI/UX design Xcode beta testing iOS distribution iTunes Connect in-app purchases monetization strategies user engagement

Stored enrichment (catalog DB)

Category
Platform
Sub-category
App Distribution Platform
Vendor
Apple Inc.
License
proprietary
Year introduced
2008
Confidence
0.98
Version strategy
NOT_APPLICABLE

Maturity reasoning: Broadly used app distribution platform; App Store review and release management appear in many iOS job descriptions and are a standard requirement for shipping Apple apps.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Mobile Vendor Platforms Catalog dimension db id 172

    Library dimension (catalog)

    Roles linked in library: Hybrid Mobile Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Mobile Vendor Platforms
mobile-vendor-platforms
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Code Signing Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: code signing id=482 · code-signing

Aliases — catalog

  • Code signing (CANONICAL) primary
  • code signing (CANONICAL)

Context tags (catalog)

HSM Java JAR signing OpenSSL PKCS#7 PKI Windows Authenticode application security authenticity authenticode certificate authorities certificate authority certificate chain code integrity compliance standards cryptographic signatures digital certificate digital certificates encryption entitlements hashing hashing algorithms jar signing keychain macOS Gatekeeper malware prevention notarization private key public key public key infrastructure secure boot secure distribution signature verification signing certificate signing keys signing tools software authenticity software distribution timestamping trust anchors trust models

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Software Signing Concept
Confidence
0.88
Version strategy
NOT_APPLICABLE

Maturity reasoning: Common security requirement in JDs for macOS/iOS, Windows, and mobile release pipelines; vendor docs from Apple, Microsoft, and Google treat signing as standard for distribution and trust.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Build and Release Tooling Catalog dimension db id 89

    Library dimension (catalog)

    Roles linked in library: Android Engineer, Hybrid Mobile Developer, IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Build and Release Tooling
build-and-release-tooling
Existing dimension (library) · Role↔dimension saved
Provisioning Profiles Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: provisioning profiles id=483 · provisioning-profiles

Aliases — catalog

  • provisioning profiles (CANONICAL) primary

Context tags (catalog)

App Store App Store Connect Apple Developer Apple Developer Program IPA TestFlight UDID UUID Xcode ad hoc distribution build settings bundle identifier certificate code signing developer portal development certificate device registration distribution certificate entitlement keys entitlements iOS iOS distribution keychain access mobile provisioning provisioning portal provisioning profile types push notifications team ID

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Code Signing Concept
Confidence
0.80
Version strategy
NOT_APPLICABLE

Maturity reasoning: Provisioning profiles are specific to Apple code signing and app distribution; they appear mainly in iOS/macOS job posts and docs, with far lower JD volume than general signing or CI/CD skills.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Build and Release Tooling Catalog dimension db id 89

    Library dimension (catalog)

    Roles linked in library: Android Engineer, Hybrid Mobile Developer, IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Build and Release Tooling
build-and-release-tooling
Existing dimension (library) · Role↔dimension saved
TestFlight Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: TestFlight id=485 · testflight

Aliases — catalog

  • TestFlight (CANONICAL) primary

Context tags (catalog)

App Store Connect Crashlytics Firebase IPA OTA updates TestFlight API TestFlight beta TestFlight dashboard Xcode analytics app analytics app distribution app review beta testing beta users build management build upload crash reporting crash reports deployment external testers feedback collection iOS iOS beta in-app feedback internal testers internal testing invitation link mobile app testing phased release provisioning profile release management release notes test builds testers user feedback user onboarding user testing version control

Stored enrichment (catalog DB)

Category
Service
Sub-category
Beta Distribution Service
Vendor
Apple
License
proprietary
Year introduced
2010
Confidence
0.95
Version strategy
NOT_APPLICABLE

Maturity reasoning: Commonly listed in iOS/mobile JDs for beta distribution and App Store Connect workflows; Apple’s official TestFlight service remains the standard successor to ad hoc distribution.

Skill profile (library / DB)

Skill nature
CLOUD_SERVICE
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
11
Sub-category id
715
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • App Distribution and Store Operations Catalog dimension db id 90

    Library dimension (catalog)

    Roles linked in library: Android Engineer, Hybrid Mobile Developer, IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
App Distribution and Store Operations
app-distribution-and-store-operations
Existing dimension (library) · Role↔dimension saved
Auto Layout Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Auto Layout id=447 · auto-layout

Aliases — catalog

  • Auto Layout (CANONICAL) primary

Context tags (catalog)

anchors compression resistance constraints equal height equal width hugging priority interface builder intrinsic content size leading/trailing multiplier safe area stack views storyboard top/bottom xib

Stored enrichment (catalog DB)

Category
Concept
Sub-category
Layout System Concept
Confidence
0.84
Version strategy
NOT_APPLICABLE

Maturity reasoning: Auto Layout is a standard iOS/UI design skill; it appears routinely in mobile job descriptions and Apple’s docs still center it for responsive layouts, with no announced replacement.

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • UIKit and SwiftUI Catalog dimension db id 82

    Library dimension (catalog)

    Roles linked in library: IOS Engineer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
UIKit and SwiftUI
uikit-and-swiftui
Existing dimension (library) · Role↔dimension saved
Spring Boot Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: Spring Boot id=6 · spring-boot

Aliases — catalog

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

Context tags (catalog)

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

Stored enrichment (catalog DB)

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

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

Skill profile (library / DB)

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

Dimensions (API 2 worklist)

  • Web Application Frameworks Catalog dimension db id 2

    Library dimension (catalog)

    Roles linked in library: Backend Developer, Fullstack Developer

API 3 link attempts (this skill)

Dimension Skill↔dim Role↔dim Outcome
Web Application Frameworks
web-application-frameworks
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
REST Primary Library skill API 3: existing canonical (in_db) Existing skill (matched library)
Canonical: REST id=11 · rest

Aliases — catalog

  • REST (CANONICAL) primary

Context tags (catalog)

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

Stored enrichment (catalog DB)

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

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

Skill profile (library / DB)

Skill nature
PROTOCOL
Volatility
STABLE
Typical lifespan
EVERGREEN
Category id
10
Sub-category id
48
Extractable
True
Also category
False

Dimensions (API 2 worklist)

  • API Design and Contracts Catalog dimension db id 3

    Library dimension (catalog)

    Roles linked in library: Backend Developer, Fullstack Developer

API 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)

All API 3 persistence rows

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

Skill Tag Dimension Skill↔dim Role↔dim Outcome Notes
Java in_db
Kotlin and Java
kotlin-and-java
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Java in_db
Programming Languages
programming-languages
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Java in_db
Programming Languages for Data Work
programming-languages-for-data-work
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Swift in_db
Swift and Objective-C
swift-and-objective-c
Existing dimension (library) · Role↔dimension saved
Objective-C in_db
Swift and Objective-C
swift-and-objective-c
Existing dimension (library) · Role↔dimension saved
UIKit in_db
UIKit and SwiftUI
uikit-and-swiftui
Existing dimension (library) · Role↔dimension saved
SwiftUI in_db
UIKit and SwiftUI
uikit-and-swiftui
Existing dimension (library) · Role↔dimension saved
APNs in_db
Push Notifications and Messaging
push-notifications-and-messaging
Existing dimension (library) · Role↔dimension saved
Core Data in_db
Local Persistence and Offline Behavior
local-persistence-and-offline-behavior
Existing dimension (library) · Role↔dimension saved
Sign In with Apple in_db
Authentication and Session Handling
authentication-and-session-handling
Existing dimension (library) · Role↔dimension saved
OAuth 2.0 in_db
Authentication and Authorization
authentication-and-authorization
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
OAuth 2.0 in_db
Authentication and Session Handling
authentication-and-session-handling
Existing dimension (library) · Role↔dimension saved
Apple App Store in_db
Mobile Vendor Platforms
mobile-vendor-platforms
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
Code Signing in_db
Build and Release Tooling
build-and-release-tooling
Existing dimension (library) · Role↔dimension saved
Provisioning Profiles in_db
Build and Release Tooling
build-and-release-tooling
Existing dimension (library) · Role↔dimension saved
TestFlight in_db
App Distribution and Store Operations
app-distribution-and-store-operations
Existing dimension (library) · Role↔dimension saved
Auto Layout in_db
UIKit and SwiftUI
uikit-and-swiftui
Existing dimension (library) · Role↔dimension saved
Spring Boot in_db
Web Application Frameworks
web-application-frameworks
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)
REST in_db
API Design and Contracts
api-design-and-contracts
Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role)

Library artifacts (this run)

Kind Detail DB id
canonical_skill_proposed Keychain | type=Security Tools subtype=general nature=TOOL lifespan=EVERGREEN
canonical_skill_proposed Xcode Instruments | type=Monitoring Tools subtype=general nature=TOOL lifespan=MULTI_YEAR
nano JD Parser — gpt-4.1-nano click to toggle
RoleJava Developer (Mobile Apps)
CompanyAppHouse Mobile Studio
Experience3-5 years
DomainSoftware & SaaS Products
Location Mumbai, India
JD type pass
Show raw JSON
{
  "JD_type": "pass",
  "about_company": null,
  "certifications": [],
  "company_name": "AppHouse Mobile Studio",
  "ctc": null,
  "domain": {
    "primary": {
      "aliases": [
        "SaaS",
        "Product Companies"
      ],
      "domain": "Software \u0026 SaaS Products"
    },
    "secondary": null
  },
  "education": [],
  "experience": {
    "max": 5,
    "min": 3,
    "raw": "3-5 years"
  },
  "job_locations": [
    {
      "aliases": [
        "Bombay"
      ],
      "city": "Mumbai",
      "country": "India",
      "state": null,
      "work_mode": null
    }
  ],
  "role": "Java Developer (Mobile Apps)",
  "role_aliases": [
    "iOS Developer",
    "Mobile Developer",
    "Java Developer"
  ],
  "role_archetype": "Engineering",
  "roles_and_responsibilities": [
    {
      "bullet_count": 8,
      "heading": "Key Responsibilities",
      "heading_was_present": true,
      "source_marker": {
        "first_5_words": "Build native iOS apps using",
        "last_5_words": "provides the iOS app\u0027s REST API endpoints"
      },
      "text": "- Build native iOS apps using Swift and Objective-C with UIKit and SwiftUI\n- Implement view controllers, tab bar navigation, modal presentations, and deep link routing\n- Handle push notifications via APNs, CoreData persistence, and Keychain-based secure storage\n- Integrate Sign In with Apple, OAuth 2.0 token flows, and biometric authentication\n- Optimize iOS app launch time, memory footprint, and frame rate using Xcode Instruments\n- Submit releases to the Apple App Store with proper code signing, provisioning profiles, and TestFlight beta rollouts\n- Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility\n- Maintain a small Java Spring Boot backend that provides the iOS app\u0027s REST API endpoints",
      "word_count": 108
    }
  ],
  "urls": []
}
API 1 — extract-from-jd click to toggle
{
  "final_skills": [
    {
      "is_primary": true,
      "skill_name": "Java"
    },
    {
      "is_primary": true,
      "skill_name": "Swift"
    },
    {
      "is_primary": true,
      "skill_name": "Objective-C"
    },
    {
      "is_primary": true,
      "skill_name": "UIKit"
    },
    {
      "is_primary": true,
      "skill_name": "SwiftUI"
    },
    {
      "is_primary": true,
      "skill_name": "APNs"
    },
    {
      "is_primary": true,
      "skill_name": "Core Data"
    },
    {
      "is_primary": true,
      "skill_name": "Keychain"
    },
    {
      "is_primary": true,
      "skill_name": "Sign In with Apple"
    },
    {
      "is_primary": true,
      "skill_name": "OAuth 2.0"
    },
    {
      "is_primary": true,
      "skill_name": "Xcode Instruments"
    },
    {
      "is_primary": true,
      "skill_name": "Apple App Store"
    },
    {
      "is_primary": true,
      "skill_name": "Code Signing"
    },
    {
      "is_primary": true,
      "skill_name": "Provisioning Profiles"
    },
    {
      "is_primary": true,
      "skill_name": "TestFlight"
    },
    {
      "is_primary": true,
      "skill_name": "Auto Layout"
    },
    {
      "is_primary": true,
      "skill_name": "Spring Boot"
    },
    {
      "is_primary": true,
      "skill_name": "REST"
    }
  ],
  "jd_role": {
    "display_name": "Java Developer (Mobile Apps)",
    "rationale": null,
    "role_aliases": [
      "iOS Developer",
      "Mobile Developer",
      "Java Developer"
    ],
    "role_archetype": "Engineering",
    "slug": ""
  },
  "nano_parsed": {
    "JD_type": "pass",
    "about_company": null,
    "certifications": [],
    "company_name": "AppHouse Mobile Studio",
    "ctc": null,
    "domain": {
      "primary": {
        "aliases": [
          "SaaS",
          "Product Companies"
        ],
        "domain": "Software \u0026 SaaS Products"
      },
      "secondary": null
    },
    "education": [],
    "experience": {
      "max": 5,
      "min": 3,
      "raw": "3-5 years"
    },
    "job_locations": [
      {
        "aliases": [
          "Bombay"
        ],
        "city": "Mumbai",
        "country": "India",
        "state": null,
        "work_mode": null
      }
    ],
    "role": "Java Developer (Mobile Apps)",
    "role_aliases": [
      "iOS Developer",
      "Mobile Developer",
      "Java Developer"
    ],
    "role_archetype": "Engineering",
    "roles_and_responsibilities": [
      {
        "bullet_count": 8,
        "heading": "Key Responsibilities",
        "heading_was_present": true,
        "source_marker": {
          "first_5_words": "Build native iOS apps using",
          "last_5_words": "provides the iOS app\u0027s REST API endpoints"
        },
        "text": "- Build native iOS apps using Swift and Objective-C with UIKit and SwiftUI\n- Implement view controllers, tab bar navigation, modal presentations, and deep link routing\n- Handle push notifications via APNs, CoreData persistence, and Keychain-based secure storage\n- Integrate Sign In with Apple, OAuth 2.0 token flows, and biometric authentication\n- Optimize iOS app launch time, memory footprint, and frame rate using Xcode Instruments\n- Submit releases to the Apple App Store with proper code signing, provisioning profiles, and TestFlight beta rollouts\n- Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility\n- Maintain a small Java Spring Boot backend that provides the iOS app\u0027s REST API endpoints",
        "word_count": 108
      }
    ],
    "urls": []
  },
  "rejected": false,
  "rejection_reason": null,
  "run_id": "3daac123-f579-451d-b320-afffdda86154",
  "stage3_signals": {
    "alias_found": true,
    "alias_match_roles": [
      {
        "display_name": "IOS Engineer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 6,
        "score": 1.0,
        "slug": "ios-engineer",
        "total_count": null
      },
      {
        "display_name": "Android Engineer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 4,
        "score": 1.0,
        "slug": "android-engineer",
        "total_count": null
      },
      {
        "display_name": "Backend Developer",
        "kra_matches": null,
        "matched_count": null,
        "matched_skills": null,
        "role_id": 1,
        "score": 1.0,
        "slug": "backend-engineer",
        "total_count": null
      }
    ],
    "kra_match_roles": [
      {
        "display_name": "IOS Engineer",
        "kra_matches": [
          {
            "kra_text": "Implements view controller navigation flows, tab bar controllers, modal presentations, and deep link routing in iOS applications.",
            "sentence": "Implement view controllers, tab bar navigation, modal presentations, and deep link routing",
            "similarity": 0.8591
          },
          {
            "kra_text": "Instruments and optimizes iOS app performance including launch time, memory footprint, main-thread blocking, and frame rate using Instruments.",
            "sentence": "Optimize iOS app launch time, memory footprint, and frame rate using Xcode Instruments",
            "similarity": 0.8444
          },
          {
            "kra_text": "Diagnoses and fixes iOS-specific defects including memory retain cycles, Auto Layout constraint conflicts, and device-model compatibility issues.",
            "sentence": "Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility",
            "similarity": 0.8378
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 6,
        "score": 0.8471,
        "slug": "ios-engineer",
        "total_count": null
      },
      {
        "display_name": "Hybrid Mobile Developer",
        "kra_matches": [
          {
            "kra_text": "Builds mobile navigation flows, tab bar routing, modal sheets, and deep link handling using React Navigation or Flutter Navigator.",
            "sentence": "Implement view controllers, tab bar navigation, modal presentations, and deep link routing",
            "similarity": 0.6629
          },
          {
            "kra_text": "Manages build configurations, code signing certificates, and app store release submissions for both Google Play and Apple App Store.",
            "sentence": "Submit releases to the Apple App Store with proper code signing, provisioning profiles, and TestFlight beta rollouts",
            "similarity": 0.6167
          },
          {
            "kra_text": "Debugs cross-platform mobile issues including native module bridge failures, platform-specific rendering differences, and build configuration conflicts.",
            "sentence": "Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility",
            "similarity": 0.5939
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 11,
        "score": 0.6245,
        "slug": "hybrid-mobile-developer",
        "total_count": null
      },
      {
        "display_name": "Android Engineer",
        "kra_matches": [
          {
            "kra_text": "Implements screen navigation, fragment and activity management, bottom navigation, and deep link handling in Android applications using Navigation Component.",
            "sentence": "Implement view controllers, tab bar navigation, modal presentations, and deep link routing",
            "similarity": 0.5429
          },
          {
            "kra_text": "Integrates Android apps with RESTful backend APIs using Retrofit and OkHttp, handling JSON parsing, authentication headers, and network error recovery.",
            "sentence": "Maintain a small Java Spring Boot backend that provides the iOS app\u0027s REST API endpoints",
            "similarity": 0.5076
          },
          {
            "kra_text": "Investigates and resolves app crashes, ANR issues, and device-specific compatibility bugs using Crashlytics, Firebase, and Android Logcat.",
            "sentence": "Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility",
            "similarity": 0.5035
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 4,
        "score": 0.518,
        "slug": "android-engineer",
        "total_count": null
      },
      {
        "display_name": "Frontend Developer",
        "kra_matches": [
          {
            "kra_text": "Integrates frontend views with RESTful or GraphQL backend APIs, handling async data fetching, loading states, error boundaries, and cache invalidation.",
            "sentence": "Maintain a small Java Spring Boot backend that provides the iOS app\u0027s REST API endpoints",
            "similarity": 0.4542
          },
          {
            "kra_text": "Optimizes web application performance through code splitting, lazy loading, tree shaking, bundle size reduction, and Core Web Vitals improvements.",
            "sentence": "Optimize iOS app launch time, memory footprint, and frame rate using Xcode Instruments",
            "similarity": 0.447
          },
          {
            "kra_text": "Supports production releases by diagnosing cross-browser compatibility issues, investigating UI regressions, and resolving frontend performance degradation.",
            "sentence": "Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility",
            "similarity": 0.433
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 7,
        "score": 0.4447,
        "slug": "frontend-engineer",
        "total_count": null
      },
      {
        "display_name": "AR/VR Engineer",
        "kra_matches": [
          {
            "kra_text": "Handles device-specific SDK differences and capability gaps across Meta Quest, HoloLens, ARKit, and ARCore runtime environments.",
            "sentence": "Debug iOS-specific issues including memory retain cycles, Auto Layout constraint conflicts, and device compatibility",
            "similarity": 0.4508
          },
          {
            "kra_text": "Optimizes rendering pipelines and maintains stable 90fps frame rates through draw call batching, occlusion culling, and level-of-detail management.",
            "sentence": "Optimize iOS app launch time, memory footprint, and frame rate using Xcode Instruments",
            "similarity": 0.4152
          },
          {
            "kra_text": "Designs and implements immersive user interaction flows and spatial UI elements for augmented reality and virtual reality applications using Unity or Unreal Engine.",
            "sentence": "Implement view controllers, tab bar navigation, modal presentations, and deep link routing",
            "similarity": 0.3528
          }
        ],
        "matched_count": null,
        "matched_skills": null,
        "role_id": 8,
        "score": 0.4063,
        "slug": "ar-vr-engineer",
        "total_count": null
      }
    ],
    "skill_match_roles": [
      {
        "display_name": "IOS Engineer",
        "kra_matches": null,
        "matched_count": 12,
        "matched_skills": [
          "APNs",
          "Auto Layout",
          "Core Data",
          "OAuth 2.0",
          "Objective-C",
          "Sign in with Apple",
          "Swift",
          "SwiftUI",
          "TestFlight",
          "UIKit",
          "code signing",
          "provisioning profiles"
        ],
        "role_id": 6,
        "score": 0.6667,
        "slug": "ios-engineer",
        "total_count": 18
      },
      {
        "display_name": "Android Engineer",
        "kra_matches": null,
        "matched_count": 8,
        "matched_skills": [
          "APNs",
          "Core Data",
          "Java",
          "OAuth 2.0",
          "Sign in with Apple",
          "TestFlight",
          "code signing",
          "provisioning profiles"
        ],
        "role_id": 4,
        "score": 0.4444,
        "slug": "android-engineer",
        "total_count": 18
      },
      {
        "display_name": "Hybrid Mobile Developer",
        "kra_matches": null,
        "matched_count": 8,
        "matched_skills": [
          "APNs",
          "Apple App Store",
          "Core Data",
          "OAuth 2.0",
          "Sign in with Apple",
          "TestFlight",
          "code signing",
          "provisioning profiles"
        ],
        "role_id": 11,
        "score": 0.4444,
        "slug": "hybrid-mobile-developer",
        "total_count": 18
      },
      {
        "display_name": "Fullstack Developer",
        "kra_matches": null,
        "matched_count": 5,
        "matched_skills": [
          "Java",
          "OAuth 2.0",
          "REST",
          "Sign in with Apple",
          "Spring Boot"
        ],
        "role_id": 15,
        "score": 0.2778,
        "slug": "full-stack-engineer",
        "total_count": 18
      },
      {
        "display_name": "Backend Developer",
        "kra_matches": null,
        "matched_count": 4,
        "matched_skills": [
          "Java",
          "OAuth 2.0",
          "REST",
          "Spring Boot"
        ],
        "role_id": 1,
        "score": 0.2222,
        "slug": "backend-engineer",
        "total_count": 18
      }
    ]
  },
  "stage4_decision": {
    "alias_collision_detected": false,
    "case": "A",
    "chosen_role": {
      "display_name": "IOS Engineer",
      "kra_matches": null,
      "matched_count": null,
      "matched_skills": null,
      "role_id": 6,
      "score": 0.8471,
      "slug": "ios-engineer",
      "total_count": null
    },
    "confidence": 0.8471,
    "is_new_role": false,
    "llm2_fired": false,
    "llm2_reasoning": null,
    "new_role_display_name": null,
    "new_role_slug": null,
    "queued": false,
    "reasoning": "All 3 signals top-rank ios-engineer"
  },
  "stage5_updates": {
    "centroid_n_after": 29,
    "centroid_updated": true,
    "collision_log_id": null,
    "new_kra_attached": null,
    "new_skills_attached": [
      {
        "is_primary": true,
        "queue_id": 2202,
        "role_display_name": "IOS Engineer",
        "role_slug": "ios-engineer",
        "skill_name": "Keychain",
        "status": "pending"
      },
      {
        "is_primary": true,
        "queue_id": 2203,
        "role_display_name": "IOS Engineer",
        "role_slug": "ios-engineer",
        "skill_name": "Xcode Instruments",
        "status": "pending"
      }
    ],
    "queue_entry_id": null,
    "v3_pipeline_triggered": false,
    "v3_role_slug": null,
    "v3_run_id": null
  }
}
API 2 — extract-details
{
  "alias_matches": [
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 1,
      "existing_alias_text": "Java",
      "input_term": "Java",
      "matched_canonical": {
        "category_id": 6,
        "display_name": "Java",
        "id": 1,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "java",
        "sub_category_id": 96,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    },
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 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": 767,
      "existing_alias_text": "Objective-C",
      "input_term": "Objective-C",
      "matched_canonical": {
        "category_id": 6,
        "display_name": "Objective-C",
        "id": 441,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "objective-c",
        "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": 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": 770,
      "existing_alias_text": "SwiftUI",
      "input_term": "SwiftUI",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "SwiftUI",
        "id": 444,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "swiftui",
        "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": 800,
      "existing_alias_text": "APNs",
      "input_term": "APNs",
      "matched_canonical": {
        "category_id": 11,
        "display_name": "APNs",
        "id": 474,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CLOUD_SERVICE",
        "slug": "apns",
        "sub_category_id": 356,
        "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": 793,
      "existing_alias_text": "Sign in with Apple",
      "input_term": "Sign In with Apple",
      "matched_canonical": {
        "category_id": 11,
        "display_name": "Sign in with Apple",
        "id": 467,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CLOUD_SERVICE",
        "slug": "sign-in-with-apple",
        "sub_category_id": 267,
        "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": 163,
      "existing_alias_text": "OAuth 2.0",
      "input_term": "OAuth 2.0",
      "matched_canonical": {
        "category_id": 10,
        "display_name": "OAuth 2.0",
        "id": 26,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PROTOCOL",
        "slug": "oauth-2-0",
        "sub_category_id": 50,
        "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": 1711,
      "existing_alias_text": "Apple App Store",
      "input_term": "Apple App Store",
      "matched_canonical": {
        "category_id": 9,
        "display_name": "Apple App Store",
        "id": 1085,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "apple-app-store",
        "sub_category_id": 347,
        "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": 808,
      "existing_alias_text": "code signing",
      "input_term": "Code Signing",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "code signing",
        "id": 482,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "code-signing",
        "sub_category_id": 323,
        "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": 809,
      "existing_alias_text": "provisioning profiles",
      "input_term": "Provisioning Profiles",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "provisioning profiles",
        "id": 483,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "provisioning-profiles",
        "sub_category_id": 312,
        "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": 811,
      "existing_alias_text": "TestFlight",
      "input_term": "TestFlight",
      "matched_canonical": {
        "category_id": 11,
        "display_name": "TestFlight",
        "id": 485,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CLOUD_SERVICE",
        "slug": "testflight",
        "sub_category_id": 715,
        "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": 773,
      "existing_alias_text": "Auto Layout",
      "input_term": "Auto Layout",
      "matched_canonical": {
        "category_id": 2,
        "display_name": "Auto Layout",
        "id": 447,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "auto-layout",
        "sub_category_id": 315,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    },
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 79,
      "existing_alias_text": "Spring Boot",
      "input_term": "Spring Boot",
      "matched_canonical": {
        "category_id": 5,
        "display_name": "Spring Boot",
        "id": 6,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-boot",
        "sub_category_id": 35,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    },
    {
      "alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
      "alias_persisted": false,
      "existing_alias_id": 106,
      "existing_alias_text": "REST",
      "input_term": "REST",
      "matched_canonical": {
        "category_id": 10,
        "display_name": "REST",
        "id": 11,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PROTOCOL",
        "slug": "rest",
        "sub_category_id": 48,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "matched_via": "alias"
    }
  ],
  "candidate_roles": [
    {
      "display_name": "Android Engineer",
      "id": 4,
      "rationale": null,
      "role_archetype": null,
      "slug": "android-engineer",
      "source": "db"
    },
    {
      "display_name": "Backend Developer",
      "id": 1,
      "rationale": null,
      "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
      "slug": "backend-engineer",
      "source": "db"
    },
    {
      "display_name": "Fullstack Developer",
      "id": 15,
      "rationale": null,
      "role_archetype": null,
      "slug": "full-stack-engineer",
      "source": "db"
    },
    {
      "display_name": "Data Engineer",
      "id": 2,
      "rationale": null,
      "role_archetype": null,
      "slug": "data-engineer",
      "source": "db"
    },
    {
      "display_name": "IOS Engineer",
      "id": 6,
      "rationale": null,
      "role_archetype": null,
      "slug": "ios-engineer",
      "source": "db"
    },
    {
      "display_name": "Hybrid Mobile Developer",
      "id": 11,
      "rationale": null,
      "role_archetype": null,
      "slug": "hybrid-mobile-developer",
      "source": "db"
    },
    {
      "display_name": "Frontend Developer",
      "id": 7,
      "rationale": null,
      "role_archetype": null,
      "slug": "frontend-engineer",
      "source": "db"
    }
  ],
  "chosen_role": {
    "display_name": "IOS Engineer",
    "id": 6,
    "rationale": "The role of IOS Engineer perfectly aligns with the primary skills required such as Swift, Objective-C, and UIKit.",
    "role_archetype": null,
    "slug": "ios-engineer",
    "source": "db"
  },
  "dimensions": [
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Kotlin and Java",
        "id": 161,
        "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
        "slug": "kotlin-and-java",
        "source": "db"
      },
      "input_skill": "Java",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Engineer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Programming Languages",
        "id": 1,
        "rationale": "Primary implementation languages used to build client and server feature code. Full stack engineers need enough fluency to move across layers and implement product behavior end to end.",
        "slug": "programming-languages",
        "source": "db"
      },
      "input_skill": "Java",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Backend Developer",
          "id": 1,
          "rationale": null,
          "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
          "slug": "backend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Programming Languages for Data Work",
        "id": 21,
        "rationale": "Languages used to implement data pipelines, transformations, and operational glue. This is the primary coding surface for building ingestion, enrichment, and automation logic in data engineering.",
        "slug": "programming-languages-for-data-work",
        "source": "db"
      },
      "input_skill": "Java",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Data Engineer",
          "id": 2,
          "rationale": null,
          "role_archetype": null,
          "slug": "data-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "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 Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "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": "Objective-C",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "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 Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "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": "SwiftUI",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Push Notifications and Messaging",
        "id": 88,
        "rationale": "Mechanisms for receiving, presenting, and acting on remote notifications and message-driven entry points on iOS. This cluster is distinct because notifications affect app engagement, deep linking, and background updates.",
        "slug": "push-notifications-and-messaging",
        "source": "db"
      },
      "input_skill": "APNs",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Engineer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "IOS Engineer",
          "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 Engineer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Authentication and Session Handling",
        "id": 86,
        "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
        "slug": "authentication-and-session-handling",
        "source": "db"
      },
      "input_skill": "Sign In with Apple",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Engineer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Frontend Developer",
          "id": 7,
          "rationale": null,
          "role_archetype": null,
          "slug": "frontend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Authentication and Authorization",
        "id": 6,
        "rationale": "Identity and access control mechanisms used by backend services to protect resources and enforce permissions. Includes session handling, token-based auth, and role or policy enforcement.",
        "slug": "authentication-and-authorization",
        "source": "db"
      },
      "input_skill": "OAuth 2.0",
      "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"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Authentication and Session Handling",
        "id": 86,
        "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
        "slug": "authentication-and-session-handling",
        "source": "db"
      },
      "input_skill": "OAuth 2.0",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Engineer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Frontend Developer",
          "id": 7,
          "rationale": null,
          "role_archetype": null,
          "slug": "frontend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Mobile Vendor Platforms",
        "id": 172,
        "rationale": "Knowledge of major mobile vendor platforms and their services for app distribution, testing, and analytics.",
        "slug": "mobile-vendor-platforms",
        "source": "db"
      },
      "input_skill": "Apple App Store",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Build and Release Tooling",
        "id": 89,
        "rationale": "Tooling used to compile, sign, package, and automate iOS app builds. iOS engineers rely on this stack to produce reproducible release artifacts and manage build-time configuration.",
        "slug": "build-and-release-tooling",
        "source": "db"
      },
      "input_skill": "Code Signing",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Engineer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Build and Release Tooling",
        "id": 89,
        "rationale": "Tooling used to compile, sign, package, and automate iOS app builds. iOS engineers rely on this stack to produce reproducible release artifacts and manage build-time configuration.",
        "slug": "build-and-release-tooling",
        "source": "db"
      },
      "input_skill": "Provisioning Profiles",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Engineer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "App Distribution and Store Operations",
        "id": 90,
        "rationale": "Processes and consoles used to publish iOS apps, manage test builds, and coordinate staged releases. This is a coherent cluster because release readiness on iOS depends on App Store workflows and review constraints.",
        "slug": "app-distribution-and-store-operations",
        "source": "db"
      },
      "input_skill": "TestFlight",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Android Engineer",
          "id": 4,
          "rationale": null,
          "role_archetype": null,
          "slug": "android-engineer",
          "source": "db"
        },
        {
          "display_name": "Hybrid Mobile Developer",
          "id": 11,
          "rationale": null,
          "role_archetype": null,
          "slug": "hybrid-mobile-developer",
          "source": "db"
        },
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "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": "Auto Layout",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "IOS Engineer",
          "id": 6,
          "rationale": null,
          "role_archetype": null,
          "slug": "ios-engineer",
          "source": "db"
        }
      ]
    },
    {
      "dimension": {
        "difficulty_hint": "well_known",
        "display_name": "Web Application Frameworks",
        "id": 2,
        "rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
        "slug": "web-application-frameworks",
        "source": "db"
      },
      "input_skill": "Spring Boot",
      "llm_role": null,
      "roles_from_db": [
        {
          "display_name": "Backend Developer",
          "id": 1,
          "rationale": null,
          "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
          "slug": "backend-engineer",
          "source": "db"
        },
        {
          "display_name": "Fullstack Developer",
          "id": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-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": 15,
          "rationale": null,
          "role_archetype": null,
          "slug": "full-stack-engineer",
          "source": "db"
        }
      ]
    }
  ],
  "input_final_skills": [
    "Java",
    "Swift",
    "Objective-C",
    "UIKit",
    "SwiftUI",
    "APNs",
    "Core Data",
    "Keychain",
    "Sign In with Apple",
    "OAuth 2.0",
    "Xcode Instruments",
    "Apple App Store",
    "Code Signing",
    "Provisioning Profiles",
    "TestFlight",
    "Auto Layout",
    "Spring Boot",
    "REST"
  ],
  "input_llm_skills": [
    "Java",
    "Swift",
    "Objective-C",
    "UIKit",
    "SwiftUI",
    "APNs",
    "Core Data",
    "Keychain",
    "Sign In with Apple",
    "OAuth 2.0",
    "Xcode Instruments",
    "Apple App Store",
    "Code Signing",
    "Provisioning Profiles",
    "TestFlight",
    "Auto Layout",
    "Spring Boot",
    "REST"
  ],
  "new_aliases_persisted": 0,
  "run_id": "3daac123-f579-451d-b320-afffdda86154",
  "skills_detail": [
    {
      "aliases_in_db": [
        {
          "alias_text": "Java",
          "alias_type": "CANONICAL",
          "id": 1,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 10",
          "alias_type": "VERSION",
          "id": 2194,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 11",
          "alias_type": "VERSION",
          "id": 4,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 12",
          "alias_type": "VERSION",
          "id": 2196,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 13",
          "alias_type": "VERSION",
          "id": 2197,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 14",
          "alias_type": "VERSION",
          "id": 2198,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 15",
          "alias_type": "VERSION",
          "id": 2199,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 16",
          "alias_type": "VERSION",
          "id": 2200,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 17",
          "alias_type": "VERSION",
          "id": 5,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 18",
          "alias_type": "VERSION",
          "id": 2202,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 19",
          "alias_type": "VERSION",
          "id": 2203,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 20",
          "alias_type": "VERSION",
          "id": 2204,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 21",
          "alias_type": "VERSION",
          "id": 6,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 5",
          "alias_type": "VERSION",
          "id": 2189,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 6",
          "alias_type": "VERSION",
          "id": 2190,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 7",
          "alias_type": "VERSION",
          "id": 2191,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 8",
          "alias_type": "VERSION",
          "id": 3,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "JDK 9",
          "alias_type": "VERSION",
          "id": 2193,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.0",
          "alias_type": "VERSION",
          "id": 11,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.1",
          "alias_type": "VERSION",
          "id": 12,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.2",
          "alias_type": "VERSION",
          "id": 13,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.3",
          "alias_type": "VERSION",
          "id": 14,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.4",
          "alias_type": "VERSION",
          "id": 15,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.5",
          "alias_type": "VERSION",
          "id": 16,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.6",
          "alias_type": "VERSION",
          "id": 17,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.7",
          "alias_type": "VERSION",
          "id": 18,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 1.8",
          "alias_type": "VERSION",
          "id": 19,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 10",
          "alias_type": "VERSION",
          "id": 2211,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 11",
          "alias_type": "VERSION",
          "id": 8,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 12",
          "alias_type": "VERSION",
          "id": 2213,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 13",
          "alias_type": "VERSION",
          "id": 2214,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 14",
          "alias_type": "VERSION",
          "id": 2215,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 15",
          "alias_type": "VERSION",
          "id": 2216,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 16",
          "alias_type": "VERSION",
          "id": 2217,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 17",
          "alias_type": "VERSION",
          "id": 9,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 18",
          "alias_type": "VERSION",
          "id": 2219,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 19",
          "alias_type": "VERSION",
          "id": 2220,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 20",
          "alias_type": "VERSION",
          "id": 2221,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 21",
          "alias_type": "VERSION",
          "id": 10,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 5",
          "alias_type": "VERSION",
          "id": 288,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 6",
          "alias_type": "VERSION",
          "id": 289,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 7",
          "alias_type": "VERSION",
          "id": 290,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 8",
          "alias_type": "VERSION",
          "id": 7,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Java 9",
          "alias_type": "VERSION",
          "id": 2210,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "OpenJDK 11",
          "alias_type": "VERSION",
          "id": 21,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "OpenJDK 17",
          "alias_type": "VERSION",
          "id": 22,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "OpenJDK 21",
          "alias_type": "VERSION",
          "id": 23,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "OpenJDK 8",
          "alias_type": "VERSION",
          "id": 20,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 11",
          "alias_type": "VERSION",
          "id": 1512,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 17",
          "alias_type": "VERSION",
          "id": 1513,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 21",
          "alias_type": "VERSION",
          "id": 1514,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 4",
          "alias_type": "VERSION",
          "id": 1496,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 5",
          "alias_type": "VERSION",
          "id": 1497,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 6",
          "alias_type": "VERSION",
          "id": 1498,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 7",
          "alias_type": "VERSION",
          "id": 1499,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java 8",
          "alias_type": "VERSION",
          "id": 1500,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-11",
          "alias_type": "VERSION",
          "id": 1515,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-17",
          "alias_type": "VERSION",
          "id": 1516,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-21",
          "alias_type": "VERSION",
          "id": 1517,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-4",
          "alias_type": "VERSION",
          "id": 1501,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-5",
          "alias_type": "VERSION",
          "id": 1502,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-6",
          "alias_type": "VERSION",
          "id": 1503,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-7",
          "alias_type": "VERSION",
          "id": 1504,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java-8",
          "alias_type": "VERSION",
          "id": 1505,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java11",
          "alias_type": "VERSION",
          "id": 1506,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java17",
          "alias_type": "VERSION",
          "id": 1507,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java21",
          "alias_type": "VERSION",
          "id": 1508,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java4",
          "alias_type": "VERSION",
          "id": 1482,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java5",
          "alias_type": "VERSION",
          "id": 1483,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java6",
          "alias_type": "VERSION",
          "id": 1484,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java7",
          "alias_type": "VERSION",
          "id": 1485,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "java8",
          "alias_type": "VERSION",
          "id": 1486,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 11",
          "alias_type": "VERSION",
          "id": 1509,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 17",
          "alias_type": "VERSION",
          "id": 1510,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 21",
          "alias_type": "VERSION",
          "id": 1511,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 4",
          "alias_type": "VERSION",
          "id": 1487,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 5",
          "alias_type": "VERSION",
          "id": 1488,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 6",
          "alias_type": "VERSION",
          "id": 1489,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 7",
          "alias_type": "VERSION",
          "id": 1490,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk 8",
          "alias_type": "VERSION",
          "id": 1491,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk11",
          "alias_type": "VERSION",
          "id": 1492,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk17",
          "alias_type": "VERSION",
          "id": 1493,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk21",
          "alias_type": "VERSION",
          "id": 1494,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk4",
          "alias_type": "VERSION",
          "id": 1477,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk5",
          "alias_type": "VERSION",
          "id": 1478,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk6",
          "alias_type": "VERSION",
          "id": 1479,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk7",
          "alias_type": "VERSION",
          "id": 1480,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jdk8",
          "alias_type": "VERSION",
          "id": 1481,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "jvm21",
          "alias_type": "VERSION",
          "id": 1495,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 6,
        "display_name": "Java",
        "id": 1,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "java",
        "sub_category_id": 96,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Kotlin and Java",
            "id": 161,
            "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
            "slug": "kotlin-and-java",
            "source": "db"
          },
          "input_skill": "Java",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Engineer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Programming Languages",
            "id": 1,
            "rationale": "Primary implementation languages used to build client and server feature code. Full stack engineers need enough fluency to move across layers and implement product behavior end to end.",
            "slug": "programming-languages",
            "source": "db"
          },
          "input_skill": "Java",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Backend Developer",
              "id": 1,
              "rationale": null,
              "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
              "slug": "backend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Programming Languages for Data Work",
            "id": 21,
            "rationale": "Languages used to implement data pipelines, transformations, and operational glue. This is the primary coding surface for building ingestion, enrichment, and automation logic in data engineering.",
            "slug": "programming-languages-for-data-work",
            "source": "db"
          },
          "input_skill": "Java",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Data Engineer",
              "id": 2,
              "rationale": null,
              "role_archetype": null,
              "slug": "data-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Java",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "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": "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 Engineer",
              "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": "Objective-C",
          "alias_type": "CANONICAL",
          "id": 767,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 6,
        "display_name": "Objective-C",
        "id": 441,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "LANGUAGE",
        "slug": "objective-c",
        "sub_category_id": 96,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "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": "Objective-C",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Objective-C",
      "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": "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": "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 Engineer",
              "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": [
        {
          "alias_text": "SwiftUI",
          "alias_type": "CANONICAL",
          "id": 770,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "SwiftUI",
        "id": 444,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "swiftui",
        "sub_category_id": 341,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "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": "SwiftUI",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "SwiftUI",
      "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": "APNs",
          "alias_type": "CANONICAL",
          "id": 800,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 11,
        "display_name": "APNs",
        "id": 474,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CLOUD_SERVICE",
        "slug": "apns",
        "sub_category_id": 356,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Push Notifications and Messaging",
            "id": 88,
            "rationale": "Mechanisms for receiving, presenting, and acting on remote notifications and message-driven entry points on iOS. This cluster is distinct because notifications affect app engagement, deep linking, and background updates.",
            "slug": "push-notifications-and-messaging",
            "source": "db"
          },
          "input_skill": "APNs",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Engineer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "APNs",
      "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 Engineer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "IOS Engineer",
              "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": [],
      "canonical": null,
      "dimensions": [],
      "input_skill": "Keychain",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Security Tools",
          "skill_nature": "TOOL",
          "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": "keychain",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Sign in with Apple",
          "alias_type": "CANONICAL",
          "id": 793,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 11,
        "display_name": "Sign in with Apple",
        "id": 467,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CLOUD_SERVICE",
        "slug": "sign-in-with-apple",
        "sub_category_id": 267,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Authentication and Session Handling",
            "id": 86,
            "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
            "slug": "authentication-and-session-handling",
            "source": "db"
          },
          "input_skill": "Sign In with Apple",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Engineer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Frontend Developer",
              "id": 7,
              "rationale": null,
              "role_archetype": null,
              "slug": "frontend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Sign In with Apple",
      "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": "OAuth 2.0",
          "alias_type": "CANONICAL",
          "id": 163,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 10,
        "display_name": "OAuth 2.0",
        "id": 26,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PROTOCOL",
        "slug": "oauth-2-0",
        "sub_category_id": 50,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Authentication and Authorization",
            "id": 6,
            "rationale": "Identity and access control mechanisms used by backend services to protect resources and enforce permissions. Includes session handling, token-based auth, and role or policy enforcement.",
            "slug": "authentication-and-authorization",
            "source": "db"
          },
          "input_skill": "OAuth 2.0",
          "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"
            }
          ]
        },
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Authentication and Session Handling",
            "id": 86,
            "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
            "slug": "authentication-and-session-handling",
            "source": "db"
          },
          "input_skill": "OAuth 2.0",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Engineer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Frontend Developer",
              "id": 7,
              "rationale": null,
              "role_archetype": null,
              "slug": "frontend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "OAuth 2.0",
      "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": "Xcode Instruments",
      "matched_via": null,
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": {
        "derived": {
          "category": "Monitoring Tools",
          "skill_nature": "TOOL",
          "sub_category": "general",
          "typical_lifespan": "MULTI_YEAR",
          "version_strategy": "UNVERSIONED",
          "volatility": "MEDIUM"
        },
        "enrichment": null,
        "keep_log": [],
        "locked_dimensions": [],
        "merge_log": [],
        "placed": null,
        "relationships": null,
        "skill_id": "xcode-instruments",
        "split_log": [],
        "typed": null,
        "warnings": []
      },
      "source_tag": "llm",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Apple App Store",
          "alias_type": "CANONICAL",
          "id": 1711,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 9,
        "display_name": "Apple App Store",
        "id": 1085,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PLATFORM",
        "slug": "apple-app-store",
        "sub_category_id": 347,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Mobile Vendor Platforms",
            "id": 172,
            "rationale": "Knowledge of major mobile vendor platforms and their services for app distribution, testing, and analytics.",
            "slug": "mobile-vendor-platforms",
            "source": "db"
          },
          "input_skill": "Apple App Store",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Apple App Store",
      "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": "code signing",
          "alias_type": "CANONICAL",
          "id": 808,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "code signing",
        "id": 482,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "code-signing",
        "sub_category_id": 323,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Build and Release Tooling",
            "id": 89,
            "rationale": "Tooling used to compile, sign, package, and automate iOS app builds. iOS engineers rely on this stack to produce reproducible release artifacts and manage build-time configuration.",
            "slug": "build-and-release-tooling",
            "source": "db"
          },
          "input_skill": "Code Signing",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Engineer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Code Signing",
      "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": "provisioning profiles",
          "alias_type": "CANONICAL",
          "id": 809,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "provisioning profiles",
        "id": 483,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "provisioning-profiles",
        "sub_category_id": 312,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Build and Release Tooling",
            "id": 89,
            "rationale": "Tooling used to compile, sign, package, and automate iOS app builds. iOS engineers rely on this stack to produce reproducible release artifacts and manage build-time configuration.",
            "slug": "build-and-release-tooling",
            "source": "db"
          },
          "input_skill": "Provisioning Profiles",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Engineer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Provisioning Profiles",
      "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": "TestFlight",
          "alias_type": "CANONICAL",
          "id": 811,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 11,
        "display_name": "TestFlight",
        "id": 485,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CLOUD_SERVICE",
        "slug": "testflight",
        "sub_category_id": 715,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "App Distribution and Store Operations",
            "id": 90,
            "rationale": "Processes and consoles used to publish iOS apps, manage test builds, and coordinate staged releases. This is a coherent cluster because release readiness on iOS depends on App Store workflows and review constraints.",
            "slug": "app-distribution-and-store-operations",
            "source": "db"
          },
          "input_skill": "TestFlight",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Android Engineer",
              "id": 4,
              "rationale": null,
              "role_archetype": null,
              "slug": "android-engineer",
              "source": "db"
            },
            {
              "display_name": "Hybrid Mobile Developer",
              "id": 11,
              "rationale": null,
              "role_archetype": null,
              "slug": "hybrid-mobile-developer",
              "source": "db"
            },
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "TestFlight",
      "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": "Auto Layout",
          "alias_type": "CANONICAL",
          "id": 773,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 2,
        "display_name": "Auto Layout",
        "id": 447,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "CONCEPT",
        "slug": "auto-layout",
        "sub_category_id": 315,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "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": "Auto Layout",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "IOS Engineer",
              "id": 6,
              "rationale": null,
              "role_archetype": null,
              "slug": "ios-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Auto Layout",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "Spring Boot",
          "alias_type": "CANONICAL",
          "id": 79,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "SB2",
          "alias_type": "VERSION",
          "id": 2278,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "SB3",
          "alias_type": "VERSION",
          "id": 2279,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Boot 2",
          "alias_type": "VERSION",
          "id": 2280,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Boot 2.x",
          "alias_type": "VERSION",
          "id": 2282,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Boot 3",
          "alias_type": "VERSION",
          "id": 2281,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        },
        {
          "alias_text": "Spring Boot 3.x",
          "alias_type": "VERSION",
          "id": 2283,
          "is_primary": false,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 5,
        "display_name": "Spring Boot",
        "id": 6,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "FRAMEWORK",
        "slug": "spring-boot",
        "sub_category_id": 35,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "Web Application Frameworks",
            "id": 2,
            "rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
            "slug": "web-application-frameworks",
            "source": "db"
          },
          "input_skill": "Spring Boot",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Backend Developer",
              "id": 1,
              "rationale": null,
              "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
              "slug": "backend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "input_skill": "Spring Boot",
      "matched_via": "alias",
      "new_alias_persisted": false,
      "new_alias_text": null,
      "new_skill_meta": null,
      "source_tag": "db",
      "was_in_llm_skills": true
    },
    {
      "aliases_in_db": [
        {
          "alias_text": "REST",
          "alias_type": "CANONICAL",
          "id": 106,
          "is_primary": true,
          "match_strategy": "CASE_INSENSITIVE"
        }
      ],
      "canonical": {
        "category_id": 10,
        "display_name": "REST",
        "id": 11,
        "is_also_category": false,
        "is_extractable": true,
        "skill_nature": "PROTOCOL",
        "slug": "rest",
        "sub_category_id": 48,
        "typical_lifespan": "EVERGREEN",
        "volatility": "STABLE"
      },
      "dimensions": [
        {
          "dimension": {
            "difficulty_hint": "well_known",
            "display_name": "API Design and Contracts",
            "id": 3,
            "rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
            "slug": "api-design-and-contracts",
            "source": "db"
          },
          "input_skill": "REST",
          "llm_role": null,
          "roles_from_db": [
            {
              "display_name": "Backend Developer",
              "id": 1,
              "rationale": null,
              "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
              "slug": "backend-engineer",
              "source": "db"
            },
            {
              "display_name": "Fullstack Developer",
              "id": 15,
              "rationale": null,
              "role_archetype": null,
              "slug": "full-stack-engineer",
              "source": "db"
            }
          ]
        }
      ],
      "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
    }
  ],
  "unmatched_skills": [
    "Keychain",
    "Xcode Instruments"
  ]
}
API 3 — final-role-output
{
  "chosen_role": {
    "display_name": "IOS Engineer",
    "id": 6,
    "rationale": "The role of IOS Engineer perfectly aligns with the primary skills required such as Swift, Objective-C, and UIKit.",
    "role_archetype": null,
    "slug": "ios-engineer",
    "source": "db"
  },
  "chosen_role_resolution": "in_db",
  "final_input_skills": [
    {
      "skill": "Java",
      "tag": "in_db"
    },
    {
      "skill": "Swift",
      "tag": "in_db"
    },
    {
      "skill": "Objective-C",
      "tag": "in_db"
    },
    {
      "skill": "UIKit",
      "tag": "in_db"
    },
    {
      "skill": "SwiftUI",
      "tag": "in_db"
    },
    {
      "skill": "APNs",
      "tag": "in_db"
    },
    {
      "skill": "Core Data",
      "tag": "in_db"
    },
    {
      "skill": "Keychain",
      "tag": "new"
    },
    {
      "skill": "Sign In with Apple",
      "tag": "in_db"
    },
    {
      "skill": "OAuth 2.0",
      "tag": "in_db"
    },
    {
      "skill": "Xcode Instruments",
      "tag": "new"
    },
    {
      "skill": "Apple App Store",
      "tag": "in_db"
    },
    {
      "skill": "Code Signing",
      "tag": "in_db"
    },
    {
      "skill": "Provisioning Profiles",
      "tag": "in_db"
    },
    {
      "skill": "TestFlight",
      "tag": "in_db"
    },
    {
      "skill": "Auto Layout",
      "tag": "in_db"
    },
    {
      "skill": "Spring Boot",
      "tag": "in_db"
    },
    {
      "skill": "REST",
      "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": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Kotlin and Java",
          "id": 161,
          "rationale": "Primary implementation languages for Android app features, platform integration, and client-side business logic. Android engineers use these languages to build screens, state flows, service adapters, and device-aware behavior.",
          "slug": "kotlin-and-java",
          "source": "db"
        },
        "dimension_id": 161,
        "input_skill": "Java",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Android Engineer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Programming Languages",
          "id": 1,
          "rationale": "Primary implementation languages used to build client and server feature code. Full stack engineers need enough fluency to move across layers and implement product behavior end to end.",
          "slug": "programming-languages",
          "source": "db"
        },
        "dimension_id": 1,
        "input_skill": "Java",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Backend Developer",
            "id": 1,
            "rationale": null,
            "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
            "slug": "backend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Programming Languages for Data Work",
          "id": 21,
          "rationale": "Languages used to implement data pipelines, transformations, and operational glue. This is the primary coding surface for building ingestion, enrichment, and automation logic in data engineering.",
          "slug": "programming-languages-for-data-work",
          "source": "db"
        },
        "dimension_id": 21,
        "input_skill": "Java",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Data Engineer",
            "id": 2,
            "rationale": null,
            "role_archetype": null,
            "slug": "data-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "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": true,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
        "role_dimension_saved": true,
        "roles_from_db": [
          {
            "display_name": "IOS Engineer",
            "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": 6,
        "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": "Objective-C",
        "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": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 441,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "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": true,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
        "role_dimension_saved": true,
        "roles_from_db": [
          {
            "display_name": "IOS Engineer",
            "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": 6,
        "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": "SwiftUI",
        "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": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 444,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Push Notifications and Messaging",
          "id": 88,
          "rationale": "Mechanisms for receiving, presenting, and acting on remote notifications and message-driven entry points on iOS. This cluster is distinct because notifications affect app engagement, deep linking, and background updates.",
          "slug": "push-notifications-and-messaging",
          "source": "db"
        },
        "dimension_id": 88,
        "input_skill": "APNs",
        "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 Engineer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 474,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "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 Engineer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "IOS Engineer",
            "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": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Authentication and Session Handling",
          "id": 86,
          "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
          "slug": "authentication-and-session-handling",
          "source": "db"
        },
        "dimension_id": 86,
        "input_skill": "Sign In with Apple",
        "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 Engineer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 467,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Authentication and Authorization",
          "id": 6,
          "rationale": "Identity and access control mechanisms used by backend services to protect resources and enforce permissions. Includes session handling, token-based auth, and role or policy enforcement.",
          "slug": "authentication-and-authorization",
          "source": "db"
        },
        "dimension_id": 6,
        "input_skill": "OAuth 2.0",
        "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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 26,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Authentication and Session Handling",
          "id": 86,
          "rationale": "Client-side identity flows and secure session management used to sign users in and keep them authenticated. This includes token handling, login UX, and protecting secrets on device.",
          "slug": "authentication-and-session-handling",
          "source": "db"
        },
        "dimension_id": 86,
        "input_skill": "OAuth 2.0",
        "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 Engineer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Frontend Developer",
            "id": 7,
            "rationale": null,
            "role_archetype": null,
            "slug": "frontend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 26,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Mobile Vendor Platforms",
          "id": 172,
          "rationale": "Knowledge of major mobile vendor platforms and their services for app distribution, testing, and analytics.",
          "slug": "mobile-vendor-platforms",
          "source": "db"
        },
        "dimension_id": 172,
        "input_skill": "Apple App Store",
        "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"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 1085,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Build and Release Tooling",
          "id": 89,
          "rationale": "Tooling used to compile, sign, package, and automate iOS app builds. iOS engineers rely on this stack to produce reproducible release artifacts and manage build-time configuration.",
          "slug": "build-and-release-tooling",
          "source": "db"
        },
        "dimension_id": 89,
        "input_skill": "Code Signing",
        "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 Engineer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 482,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Build and Release Tooling",
          "id": 89,
          "rationale": "Tooling used to compile, sign, package, and automate iOS app builds. iOS engineers rely on this stack to produce reproducible release artifacts and manage build-time configuration.",
          "slug": "build-and-release-tooling",
          "source": "db"
        },
        "dimension_id": 89,
        "input_skill": "Provisioning Profiles",
        "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 Engineer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 483,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "App Distribution and Store Operations",
          "id": 90,
          "rationale": "Processes and consoles used to publish iOS apps, manage test builds, and coordinate staged releases. This is a coherent cluster because release readiness on iOS depends on App Store workflows and review constraints.",
          "slug": "app-distribution-and-store-operations",
          "source": "db"
        },
        "dimension_id": 90,
        "input_skill": "TestFlight",
        "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 Engineer",
            "id": 4,
            "rationale": null,
            "role_archetype": null,
            "slug": "android-engineer",
            "source": "db"
          },
          {
            "display_name": "Hybrid Mobile Developer",
            "id": 11,
            "rationale": null,
            "role_archetype": null,
            "slug": "hybrid-mobile-developer",
            "source": "db"
          },
          {
            "display_name": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 485,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "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": "Auto Layout",
        "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": "IOS Engineer",
            "id": 6,
            "rationale": null,
            "role_archetype": null,
            "slug": "ios-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 447,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "Web Application Frameworks",
          "id": 2,
          "rationale": "Server frameworks and runtimes used to build HTTP services, controllers, middleware, and request pipelines. These frameworks shape how backend endpoints are structured and delivered.",
          "slug": "web-application-frameworks",
          "source": "db"
        },
        "dimension_id": 2,
        "input_skill": "Spring Boot",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Backend Developer",
            "id": 1,
            "rationale": null,
            "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
            "slug": "backend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 6,
        "skill_tag": "in_db",
        "skipped_reason": null
      },
      {
        "chosen_role_id": 6,
        "dimension": {
          "difficulty_hint": "well_known",
          "display_name": "API Design and Contracts",
          "id": 3,
          "rationale": "Designing request/response shapes and the rules that govern client-server interaction. This cluster is coherent because full stack engineers often own the contract between UI behavior and backend implementation.",
          "slug": "api-design-and-contracts",
          "source": "db"
        },
        "dimension_id": 3,
        "input_skill": "REST",
        "llm_role": null,
        "matched_chosen_role": false,
        "outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
        "role_dimension_saved": false,
        "roles_from_db": [
          {
            "display_name": "Backend Developer",
            "id": 1,
            "rationale": null,
            "role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
            "slug": "backend-engineer",
            "source": "db"
          },
          {
            "display_name": "Fullstack Developer",
            "id": 15,
            "rationale": null,
            "role_archetype": null,
            "slug": "full-stack-engineer",
            "source": "db"
          }
        ],
        "skill_dimension_saved": true,
        "skill_id": 11,
        "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": "3daac123-f579-451d-b320-afffdda86154"
}

LLM Calls

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

Loading…