Pipeline run
874749e9-3db4-4fd1-9806-35065daf8d42
Client output enrichment
v2 Skill cluster · Nature of work · AI index · Tech stack maturity · Evidence · KRA descriptionvocab breakdown (legacy)
Signals
Post-classification
Captured for admin review
1 POST /skills/extract-from-jd
2 POST /skills/extract-details
3 POST /skills/final-role-output
Native Mobile Developer
→iOS Developer
sub-role · 0.99 domain · Software Engineering CASE DOMAINslug: native-mobile-developer · id: 75 · source: db · sub-role slug: ios-engineer
Domain=Software Engineering → sub-role ios-engineer; The JD is for an iPhone app role using Apple-native technologies like SwiftUI, Combine, CoreData, and CoreText, which best matches native mobile development.
Matched skills
Matched dimensions
Matched KRAs
Resolution:
in_db
— role exists in library; skill↔dim and role↔dim links saved when applicable.
Job description
Are you interested in making Apps for regular people? PLEASE READ this post properly and view our apps before you apply. DO NOT APPLY IF You are into in Data Analytics, Data science or full stack development. We want to make high quality, easy to use apps for regular people (B2C). Apps that people are happy to directly pay us for. We're working on a new iPhone app , it's a notes app with a unique twist. You don't need to have experience with iPhone app development but you must be good with data structures and algorithms . See our current apps at https://fusionengineeringtech.com We will be working with the latest Apple technologies. SwiftUI, Combine, CoreData, CoreText and more The team size will be four people and you must travel to our office (No remote work) Qualifications No degree required but you must be good with data structures and algorithms.
Skills from this JD
Each row merges API 1 extraction, API 2 library match / v3 orchestration (dimensions + locked dims), and API 3 persistence tags.
Skill enrichment (orchestrator / LLM)
No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).
- Category
- Platforms
- Sub-category
- general
- Skill nature
- PLATFORM
- Volatility
- MEDIUM
- Typical lifespan
- MULTI_YEAR
- Version strategy
- UNVERSIONED
Aliases — catalog
- SwiftUI (CANONICAL) primary
Context tags (catalog)
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)
-
Android UI Frameworks Catalog dimension db id 162
Library dimension (catalog)
Roles linked in library: Android Developer, Native Mobile Developer
-
UIKit and SwiftUI Catalog dimension db id 82
Library dimension (catalog)
Roles linked in library: iOS Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Android UI Frameworks
android-ui-frameworks
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
|
UIKit and SwiftUI
uikit-and-swiftui
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
Skill enrichment (orchestrator / LLM)
No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).
- Category
- Frameworks
- Sub-category
- general
- Skill nature
- TOOL
- Volatility
- MEDIUM
- Typical lifespan
- MULTI_YEAR
- Version strategy
- UNVERSIONED
Aliases — catalog
- Core Data (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Framework
- Sub-category
- Persistence Framework
- Vendor
- Apple
- License
- proprietary
- Year introduced
- 2008
- Confidence
- 0.90
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Core Data appears mainly in Apple/iOS-specific job postings and legacy Cocoa codebases; market demand is far narrower than cross-platform persistence stacks like SQLite/Realm, with no broad hiring-pipeline ubiquity.
Skill profile (library / DB)
- Skill nature
- FRAMEWORK
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 5
- Sub-category id
- 336
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Local Persistence and Offline Behavior Catalog dimension db id 85
Library dimension (catalog)
Roles linked in library: Android Developer, Flutter Developer, Hybrid Mobile Developer, Native Mobile Developer, React Native Developer, iOS Developer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Local Persistence and Offline Behavior
local-persistence-and-offline-behavior
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Skill enrichment (orchestrator / LLM)
No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).
- Category
- Frameworks
- Sub-category
- general
- Skill nature
- TOOL
- Volatility
- MEDIUM
- Typical lifespan
- MULTI_YEAR
- Version strategy
- UNVERSIONED
Aliases — catalog
- Data Structures (CANONICAL)
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Concept
- Sub-category
- Data Structures
- Confidence
- 0.98
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Core CS concept in nearly all software engineering JDs and interview loops; widely taught and expected across roles, with no sunset or replacement signal.
Skill profile (library / DB)
- Skill nature
- CONCEPT
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 2
- Sub-category id
- 731
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
React Frontend Development Catalog dimension db id 96
Library dimension (catalog)
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
React Frontend Development
d_init_01
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
Aliases — catalog
- Algorithms (CANONICAL)
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Concept
- Sub-category
- Algorithms
- Confidence
- 0.98
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Algorithms are a core hiring staple in software JDs and interview loops across FAANG and general SWE roles; they remain a standard CS curriculum topic rather than a niche tool or sunset technology.
Skill profile (library / DB)
- Skill nature
- CONCEPT
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 2
- Sub-category id
- 732
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
React Frontend Development Catalog dimension db id 96
Library dimension (catalog)
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
React Frontend Development
d_init_01
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
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 |
|---|---|---|---|---|---|---|
| SwiftUI | in_db |
Android UI Frameworks
android-ui-frameworks
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| SwiftUI | in_db |
UIKit and SwiftUI
uikit-and-swiftui
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Core Data | in_db |
Local Persistence and Offline Behavior
local-persistence-and-offline-behavior
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| Data Structures | in_db |
React Frontend Development
d_init_01
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Algorithms | in_db |
React Frontend Development
d_init_01
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
Library artifacts (this run)
| Kind | Detail | DB id |
|---|---|---|
| canonical_skill_proposed | iPhone | type=Platforms subtype=general nature=PLATFORM lifespan=MULTI_YEAR | |
| canonical_skill_proposed | Combine | type=Frameworks subtype=general nature=TOOL lifespan=MULTI_YEAR | |
| canonical_skill_proposed | Core Text | type=Frameworks subtype=general nature=TOOL lifespan=MULTI_YEAR |
nano JD Parser — gpt-4.1-nano click to toggle
Show raw JSON
{
"JD_type": "fail",
"archetype_override_applied": true,
"archetype_override_matched_skills": [
"Make",
"Algorithms",
"Data Structures",
"Analytics",
"SwiftUI"
],
"role_archetype": "Engineering"
}
API 1 — extract-from-jd click to toggle
{
"final_skills": [
{
"is_primary": true,
"skill_name": "iPhone"
},
{
"is_primary": true,
"skill_name": "SwiftUI"
},
{
"is_primary": true,
"skill_name": "Combine"
},
{
"is_primary": true,
"skill_name": "Core Data"
},
{
"is_primary": true,
"skill_name": "Core Text"
},
{
"is_primary": true,
"skill_name": "Data Structures"
},
{
"is_primary": true,
"skill_name": "Algorithms"
}
],
"jd_role": null,
"nano_parsed": {
"JD_type": "fail",
"archetype_override_applied": true,
"archetype_override_matched_skills": [
"Make",
"Algorithms",
"Data Structures",
"Analytics",
"SwiftUI"
],
"role_archetype": "Engineering"
},
"rejected": false,
"rejection_reason": null,
"run_id": "874749e9-3db4-4fd1-9806-35065daf8d42",
"stage3_signals": {
"alias_found": false,
"alias_match_roles": [],
"kra_match_roles": [
{
"display_name": "iOS Developer",
"kra_matches": [
{
"kra_text": "Develops native iOS features using Swift or Objective-C with UIKit or SwiftUI, following Apple Human Interface Guidelines for iPhone and iPad applications.",
"sentence": "SwiftUI, Combine, CoreData, CoreText and more The team size will be four people and you must travel to our office (No remote work) Qualifications No degree required but you must be good with data structures and algorithms.",
"similarity": 0.4907
},
{
"kra_text": "Develops native iOS features using Swift or Objective-C with UIKit or SwiftUI, following Apple Human Interface Guidelines for iPhone and iPad applications.",
"sentence": "See our current apps at https://fusionengineeringtech.com We will be working with the latest Apple technologies.",
"similarity": 0.4674
},
{
"kra_text": "Develops native iOS features using Swift or Objective-C with UIKit or SwiftUI, following Apple Human Interface Guidelines for iPhone and iPad applications.",
"sentence": "You don\u0027t need to have experience with iPhone app development but you must be good with data structures and algorithms .",
"similarity": 0.4429
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 6,
"score": 0.467,
"slug": "ios-engineer",
"total_count": null
},
{
"display_name": "Ionic Developer",
"kra_matches": [
{
"kra_text": "Mobile app screens and navigation",
"sentence": "See our current apps at https://fusionengineeringtech.com We will be working with the latest Apple technologies.",
"similarity": 0.4101
},
{
"kra_text": "Mobile app screens and navigation",
"sentence": "Are you interested in making Apps for regular people? PLEASE READ this post properly and view our apps before you apply.",
"similarity": 0.3994
},
{
"kra_text": "Mobile app screens and navigation",
"sentence": "We want to make high quality, easy to use apps for regular people (B2C).",
"similarity": 0.3749
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 434,
"score": 0.3948,
"slug": "ionic-developer",
"total_count": null
},
{
"display_name": "Hybrid Mobile Developer",
"kra_matches": [
{
"kra_text": "Implements cross-platform mobile features using React Native, Flutter, or Ionic targeting both iOS and Android platforms from a shared codebase.",
"sentence": "See our current apps at https://fusionengineeringtech.com We will be working with the latest Apple technologies.",
"similarity": 0.443
},
{
"kra_text": "Implements cross-platform mobile features using React Native, Flutter, or Ionic targeting both iOS and Android platforms from a shared codebase.",
"sentence": "We want to make high quality, easy to use apps for regular people (B2C).",
"similarity": 0.3693
},
{
"kra_text": "Implements cross-platform mobile features using React Native, Flutter, or Ionic targeting both iOS and Android platforms from a shared codebase.",
"sentence": "Are you interested in making Apps for regular people? PLEASE READ this post properly and view our apps before you apply.",
"similarity": 0.3507
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 11,
"score": 0.3877,
"slug": "hybrid-mobile-developer",
"total_count": null
},
{
"display_name": "Flutter Developer",
"kra_matches": [
{
"kra_text": "collaborate with design, product, and backend teams",
"sentence": "SwiftUI, Combine, CoreData, CoreText and more The team size will be four people and you must travel to our office (No remote work) Qualifications No degree required but you must be good with data structures and algorithms.",
"similarity": 0.3936
},
{
"kra_text": "Implement user-facing screens and flows",
"sentence": "We want to make high quality, easy to use apps for regular people (B2C).",
"similarity": 0.3915
},
{
"kra_text": "collaborate with design, product, and backend teams",
"sentence": "See our current apps at https://fusionengineeringtech.com We will be working with the latest Apple technologies.",
"similarity": 0.3674
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 74,
"score": 0.3842,
"slug": "flutter-developer",
"total_count": null
},
{
"display_name": "Shopify Dev",
"kra_matches": [
{
"kra_text": "app and extension behavior",
"sentence": "Are you interested in making Apps for regular people? PLEASE READ this post properly and view our apps before you apply.",
"similarity": 0.3696
},
{
"kra_text": "app and extension behavior",
"sentence": "Apps that people are happy to directly pay us for.",
"similarity": 0.3653
},
{
"kra_text": "app and extension behavior",
"sentence": "See our current apps at https://fusionengineeringtech.com We will be working with the latest Apple technologies.",
"similarity": 0.3592
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 230,
"score": 0.3647,
"slug": "shopify-dev",
"total_count": null
}
],
"skill_match_roles": [
{
"display_name": "Android Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Core Data",
"SwiftUI"
],
"role_id": 4,
"score": 0.2857,
"slug": "android-engineer",
"total_count": 7
},
{
"display_name": "iOS Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Core Data",
"SwiftUI"
],
"role_id": 6,
"score": 0.2857,
"slug": "ios-engineer",
"total_count": 7
},
{
"display_name": "Native Mobile Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Core Data",
"SwiftUI"
],
"role_id": 75,
"score": 0.2857,
"slug": "native-mobile-developer",
"total_count": 7
},
{
"display_name": "Hybrid Mobile Developer",
"kra_matches": null,
"matched_count": 1,
"matched_skills": [
"Core Data"
],
"role_id": 11,
"score": 0.1429,
"slug": "hybrid-mobile-developer",
"total_count": 7
},
{
"display_name": "React Native Developer",
"kra_matches": null,
"matched_count": 1,
"matched_skills": [
"Core Data"
],
"role_id": 73,
"score": 0.1429,
"slug": "react-native-developer",
"total_count": 7
}
]
},
"stage4_decision": {
"alias_collision_detected": false,
"case": "DOMAIN",
"chosen_role": {
"display_name": "Native Mobile Developer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 75,
"score": 0.96,
"slug": "native-mobile-developer",
"total_count": null
},
"confidence": 0.96,
"is_new_role": false,
"llm2_fired": false,
"llm2_reasoning": null,
"matched_dimensions": [
"Native iOS App Development",
"Consumer B2C App Development",
"Mobile App UX/Usability",
"Algorithmic Problem Solving"
],
"matched_kras": [
"Make high quality, easy to use apps for regular people",
"Work on a new iPhone app",
"Build apps that people are happy to directly pay for",
"Use the latest Apple technologies"
],
"matched_skills": [
"iPhone app development",
"SwiftUI",
"Combine",
"CoreData",
"CoreText",
"data structures and algorithms",
"latest Apple technologies"
],
"new_role_display_name": null,
"new_role_slug": null,
"queued": false,
"reasoning": "Domain=Software Engineering \u2192 sub-role ios-engineer; The JD is for an iPhone app role using Apple-native technologies like SwiftUI, Combine, CoreData, and CoreText, which best matches native mobile development.",
"sub_role": {
"confidence": 0.99,
"display_name": "iOS Developer",
"reasoning": "The JD explicitly targets a new iPhone app and names Apple-specific technologies like SwiftUI, Combine, CoreData, and CoreText, which strongly indicates iOS development.",
"role_id": 6,
"slug": "ios-engineer"
}
},
"stage5_updates": {
"centroid_n_after": 105,
"centroid_updated": true,
"collision_log_id": null,
"new_kra_attached": null,
"new_skills_attached": [
{
"is_primary": true,
"queue_id": 22044,
"role_display_name": "Native Mobile Developer",
"role_slug": "native-mobile-developer",
"skill_name": "iPhone",
"status": "pending"
},
{
"is_primary": true,
"queue_id": 22045,
"role_display_name": "Native Mobile Developer",
"role_slug": "native-mobile-developer",
"skill_name": "Combine",
"status": "pending"
},
{
"is_primary": true,
"queue_id": 22046,
"role_display_name": "Native Mobile Developer",
"role_slug": "native-mobile-developer",
"skill_name": "Core Text",
"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": 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": 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": 1614,
"existing_alias_text": "Data Structures",
"input_term": "Data Structures",
"matched_canonical": {
"category_id": 2,
"display_name": "Data Structures",
"id": 1003,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "data-structures",
"sub_category_id": 731,
"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": 1615,
"existing_alias_text": "Algorithms",
"input_term": "Algorithms",
"matched_canonical": {
"category_id": 2,
"display_name": "Algorithms",
"id": 1004,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "algorithms",
"sub_category_id": 732,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "alias"
}
],
"candidate_roles": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "React Native Developer",
"id": 73,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-native-developer",
"source": "db"
}
],
"chosen_role": {
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": "Domain=Software Engineering \u2192 sub-role ios-engineer; The JD is for an iPhone app role using Apple-native technologies like SwiftUI, Combine, CoreData, and CoreText, which best matches native mobile development.",
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Android UI Frameworks",
"id": 162,
"rationale": "Frameworks and component models used to build Android screens, layouts, and interactive UI behavior. This cluster covers both modern declarative UI and legacy view-based interfaces that Android engineers maintain in real products.",
"slug": "android-ui-frameworks",
"source": "db"
},
"input_skill": "SwiftUI",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UIKit and SwiftUI",
"id": 82,
"rationale": "Frameworks and component models used to build screens, layouts, and interactive UI behavior on iOS. This cluster covers both declarative and imperative UI work needed to implement app flows.",
"slug": "uikit-and-swiftui",
"source": "db"
},
"input_skill": "SwiftUI",
"llm_role": null,
"roles_from_db": [
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Local Persistence and Offline Behavior",
"id": 85,
"rationale": "On-device storage used for caching, offline support, and durable client state. This cluster is coherent because iOS apps often need to preserve user progress and data when connectivity is limited.",
"slug": "local-persistence-and-offline-behavior",
"source": "db"
},
"input_skill": "Core Data",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "React Native Developer",
"id": 73,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-native-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Frontend Development",
"id": 96,
"rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
"slug": "d_init_01",
"source": "db"
},
"input_skill": "Data Structures",
"llm_role": null,
"roles_from_db": []
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Frontend Development",
"id": 96,
"rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
"slug": "d_init_01",
"source": "db"
},
"input_skill": "Algorithms",
"llm_role": null,
"roles_from_db": []
}
],
"input_final_skills": [
"iPhone",
"SwiftUI",
"Combine",
"Core Data",
"Core Text",
"Data Structures",
"Algorithms"
],
"input_llm_skills": [
"iPhone",
"SwiftUI",
"Combine",
"Core Data",
"Core Text",
"Data Structures",
"Algorithms"
],
"new_aliases_persisted": 0,
"run_id": "874749e9-3db4-4fd1-9806-35065daf8d42",
"skills_detail": [
{
"aliases_in_db": [],
"canonical": null,
"dimensions": [],
"input_skill": "iPhone",
"matched_via": null,
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": {
"derived": {
"category": "Platforms",
"skill_nature": "PLATFORM",
"sub_category": "general",
"typical_lifespan": "MULTI_YEAR",
"version_strategy": "UNVERSIONED",
"volatility": "MEDIUM"
},
"enrichment": null,
"keep_log": [],
"locked_dimensions": [],
"merge_log": [],
"placed": null,
"relationships": null,
"skill_id": "iphone",
"split_log": [],
"typed": null,
"warnings": []
},
"source_tag": "llm",
"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": "Android UI Frameworks",
"id": 162,
"rationale": "Frameworks and component models used to build Android screens, layouts, and interactive UI behavior. This cluster covers both modern declarative UI and legacy view-based interfaces that Android engineers maintain in real products.",
"slug": "android-ui-frameworks",
"source": "db"
},
"input_skill": "SwiftUI",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UIKit and SwiftUI",
"id": 82,
"rationale": "Frameworks and component models used to build screens, layouts, and interactive UI behavior on iOS. This cluster covers both declarative and imperative UI work needed to implement app flows.",
"slug": "uikit-and-swiftui",
"source": "db"
},
"input_skill": "SwiftUI",
"llm_role": null,
"roles_from_db": [
{
"display_name": "iOS Developer",
"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": [],
"canonical": null,
"dimensions": [],
"input_skill": "Combine",
"matched_via": null,
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": {
"derived": {
"category": "Frameworks",
"skill_nature": "TOOL",
"sub_category": "general",
"typical_lifespan": "MULTI_YEAR",
"version_strategy": "UNVERSIONED",
"volatility": "MEDIUM"
},
"enrichment": null,
"keep_log": [],
"locked_dimensions": [],
"merge_log": [],
"placed": null,
"relationships": null,
"skill_id": "combine",
"split_log": [],
"typed": null,
"warnings": []
},
"source_tag": "llm",
"was_in_llm_skills": true
},
{
"aliases_in_db": [
{
"alias_text": "Core Data",
"alias_type": "CANONICAL",
"id": 785,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 5,
"display_name": "Core Data",
"id": 459,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "core-data",
"sub_category_id": 336,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Local Persistence and Offline Behavior",
"id": 85,
"rationale": "On-device storage used for caching, offline support, and durable client state. This cluster is coherent because iOS apps often need to preserve user progress and data when connectivity is limited.",
"slug": "local-persistence-and-offline-behavior",
"source": "db"
},
"input_skill": "Core Data",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "React Native Developer",
"id": 73,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-native-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
]
}
],
"input_skill": "Core Data",
"matched_via": "alias",
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": null,
"source_tag": "db",
"was_in_llm_skills": true
},
{
"aliases_in_db": [],
"canonical": null,
"dimensions": [],
"input_skill": "Core Text",
"matched_via": null,
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": {
"derived": {
"category": "Frameworks",
"skill_nature": "TOOL",
"sub_category": "general",
"typical_lifespan": "MULTI_YEAR",
"version_strategy": "UNVERSIONED",
"volatility": "MEDIUM"
},
"enrichment": null,
"keep_log": [],
"locked_dimensions": [],
"merge_log": [],
"placed": null,
"relationships": null,
"skill_id": "core-text",
"split_log": [],
"typed": null,
"warnings": []
},
"source_tag": "llm",
"was_in_llm_skills": true
},
{
"aliases_in_db": [
{
"alias_text": "Data Structures",
"alias_type": "CANONICAL",
"id": 1614,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 2,
"display_name": "Data Structures",
"id": 1003,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "data-structures",
"sub_category_id": 731,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Frontend Development",
"id": 96,
"rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
"slug": "d_init_01",
"source": "db"
},
"input_skill": "Data Structures",
"llm_role": null,
"roles_from_db": []
}
],
"input_skill": "Data Structures",
"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": "Algorithms",
"alias_type": "CANONICAL",
"id": 1615,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 2,
"display_name": "Algorithms",
"id": 1004,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "CONCEPT",
"slug": "algorithms",
"sub_category_id": 732,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Frontend Development",
"id": 96,
"rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
"slug": "d_init_01",
"source": "db"
},
"input_skill": "Algorithms",
"llm_role": null,
"roles_from_db": []
}
],
"input_skill": "Algorithms",
"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": [
"iPhone",
"Combine",
"Core Text"
]
}
API 3 — final-role-output
{
"chosen_role": {
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": "Domain=Software Engineering \u2192 sub-role ios-engineer; The JD is for an iPhone app role using Apple-native technologies like SwiftUI, Combine, CoreData, and CoreText, which best matches native mobile development.",
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
"chosen_role_resolution": "in_db",
"final_input_skills": [
{
"skill": "iPhone",
"tag": "new"
},
{
"skill": "SwiftUI",
"tag": "in_db"
},
{
"skill": "Combine",
"tag": "new"
},
{
"skill": "Core Data",
"tag": "in_db"
},
{
"skill": "Core Text",
"tag": "new"
},
{
"skill": "Data Structures",
"tag": "in_db"
},
{
"skill": "Algorithms",
"tag": "in_db"
}
],
"llm_cost_api1_usd": null,
"llm_cost_api2_usd": null,
"llm_cost_api3_usd": null,
"llm_cost_total_usd": null,
"persistence": {
"items": [
{
"chosen_role_id": 75,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Android UI Frameworks",
"id": 162,
"rationale": "Frameworks and component models used to build Android screens, layouts, and interactive UI behavior. This cluster covers both modern declarative UI and legacy view-based interfaces that Android engineers maintain in real products.",
"slug": "android-ui-frameworks",
"source": "db"
},
"dimension_id": 162,
"input_skill": "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": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 444,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 75,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "UIKit and SwiftUI",
"id": 82,
"rationale": "Frameworks and component models used to build screens, layouts, and interactive UI behavior on iOS. This cluster covers both declarative and imperative UI work needed to implement app flows.",
"slug": "uikit-and-swiftui",
"source": "db"
},
"dimension_id": 82,
"input_skill": "SwiftUI",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 444,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 75,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Local Persistence and Offline Behavior",
"id": 85,
"rationale": "On-device storage used for caching, offline support, and durable client state. This cluster is coherent because iOS apps often need to preserve user progress and data when connectivity is limited.",
"slug": "local-persistence-and-offline-behavior",
"source": "db"
},
"dimension_id": 85,
"input_skill": "Core Data",
"llm_role": null,
"matched_chosen_role": true,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
"role_dimension_saved": true,
"roles_from_db": [
{
"display_name": "Android Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
},
{
"display_name": "Flutter Developer",
"id": 74,
"rationale": null,
"role_archetype": "Engineering",
"slug": "flutter-developer",
"source": "db"
},
{
"display_name": "Hybrid Mobile Developer",
"id": 11,
"rationale": null,
"role_archetype": null,
"slug": "hybrid-mobile-developer",
"source": "db"
},
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
},
{
"display_name": "React Native Developer",
"id": 73,
"rationale": null,
"role_archetype": "Engineering",
"slug": "react-native-developer",
"source": "db"
},
{
"display_name": "iOS Developer",
"id": 6,
"rationale": null,
"role_archetype": null,
"slug": "ios-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 459,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 75,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Frontend Development",
"id": 96,
"rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
"slug": "d_init_01",
"source": "db"
},
"dimension_id": 96,
"input_skill": "Data Structures",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [],
"skill_dimension_saved": true,
"skill_id": 1003,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 75,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "React Frontend Development",
"id": 96,
"rationale": "Building interactive web user interfaces with React.js, including component composition, state management, hooks, and rendering patterns. React.js belongs here because it is a core library for client-side UI development in modern web applications.",
"slug": "d_init_01",
"source": "db"
},
"dimension_id": 96,
"input_skill": "Algorithms",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [],
"skill_dimension_saved": true,
"skill_id": 1004,
"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": "874749e9-3db4-4fd1-9806-35065daf8d42"
}