Pipeline run
45180a43-bbd2-436e-9ee7-77d895a4325d
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
Data Engineer
CASE Aslug: data-engineer · id: 2 · source: db
Exact alias hit on data-engineer (1.0) — no other alias at this confidence; skill_top data-engineer 0.80 does not contradict
Resolution:
in_db
— role exists in library; skill↔dim and role↔dim links saved when applicable.
Job description
Welcome to EPAM Anywhere - a global job platform offering remote work opportunities for tech professionals. Join us to build a career around your lifestyle working on modern projects for global brands and exciting startups. Currently we are looking for a remote Senior Big Data Developer. EPAM invites talented and ambitious engineers to become part of our Big Data Solution Practice. We are looking for people with strive for self-development who are keen on data science and eager to work with Big Data tools and frameworks, NoSQL databases, and cutting edge technologies. This project is about building microservices-oriented E-commerce solution and API layer in front of IT. We are not building everything from scratch, we are starting to build each service on top of the customer`s existing systems (order management system, customers storages, and CRMs, etc.), but some services like a catalog where we have the freedom to provide storage and code architecture from the very beginning. Responsibilities Work on high-quality architecture and implementation design, collaborating with the customer, system/business analysts and onshore architectsDesign and implement production Big Data environments using modern technologiesWork with the team on modelling complex relationships in heterogeneous data environmentsBuild, validate and optimize large-scale, corporate-wide Big Data solutionsWork with business stakeholders to translate their data/reporting needs to algorithms, analyses and reports Requirements 3+ years' experience in JavaExperience with Big Data (Hadoop, Spark, Kafka, etc.)Good command of English (B2)Desire to develop professionally in Big Data practice We offer Insurance Coverage Paid Leaves – including maternity, bereavement, paternity, and special COVID-19 leaves. Financial assistance for medical crisis Retiral Benefits – VPF and NPS Customized Mindfulness and Wellness programs EPAM Hobby ClubsHybrid Work Model Soft loans to set up workspace at home Stable workload Relocation opportunities with ‘EPAM without Borders’ programCertification trainings for technical and soft skills Access to unlimited LinkedIn Learning platform Access to internal learning programs set up by world class trainers Community networking and idea creation platforms Mentorship programs Self-driven career progression tool This is a remote position and we welcome applications from anywhere in India Once you apply, you'll receive a confirmation email with a link to EPAM Anywhere platform. Sign up with this link to automate your prescreening, be able to monitor your application statuses, and enjoy a faster job application process. We accept CVs only in English. Please note that even though you are applying for this position, you may be offered other projects to join within EPAM Anywhere. EPAM Anywhere is a part of EPAM Systems, Inc. (NYSE: EPAM). Since 1993, EPAM has leveraged its advanced software engineering heritage to become the foremost global digital transformation services provider.
Skills from this JD
Each row merges API 1 extraction, API 2 library match / v3 orchestration (dimensions + locked dims), and API 3 persistence tags.
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)
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)
-
Java Language and JVM Catalog dimension db id 279
Library dimension (catalog)
Roles linked in library: Java Backend Developer, Kotlin Backend Developer, Scala Backend Developer
-
Kotlin and Java Catalog dimension db id 161
Library dimension (catalog)
Roles linked in library: Android Developer
-
Native Mobile Languages Catalog dimension db id 274
Library dimension (catalog)
Roles linked in library: Native Mobile Developer
-
Pega Programming Languages & DSLs Catalog dimension db id 267
Library dimension (catalog)
Roles linked in library: Pega Developer
-
Programming Languages Catalog dimension db id 1
Library dimension (catalog)
Roles linked in library: Backend Developer, Fullstack 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 |
|---|---|---|---|
|
Java Language and JVM
java-language-and-jvm
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Kotlin and Java
kotlin-and-java
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Native Mobile Languages
native-mobile-languages
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Pega Programming Languages & DSLs
pega-programming-languages-dsls
|
✓ | — | 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 saved |
Aliases — catalog
- Hadoop (CANONICAL)
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Framework
- Sub-category
- Data Processing Framework
- Vendor
- Apache Software Foundation
- License
- apache_2
- Year introduced
- 2006
- Confidence
- 0.90
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Job postings still mention Hadoop for legacy big-data stacks, but JD volume has fallen as Spark and cloud warehouses replaced MapReduce-era clusters.
Skill profile (library / DB)
- Skill nature
- FRAMEWORK
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 5
- Sub-category id
- 91
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
ETL and ELT Tooling Catalog dimension db id 24
Library dimension (catalog)
Roles linked in library: Data Engineer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
ETL and ELT Tooling
etl-and-elt-tooling
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Aliases — catalog
- Apache Spark (CANONICAL)
- apache spark 3 (VERSION)
- spark (VERSION)
- spark 3 (VERSION)
- spark 3.x (VERSION)
- spark3 (VERSION)
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Framework
- Sub-category
- Distributed Data Processing Framework
- Vendor
- Apache Software Foundation
- License
- apache_2
- Year introduced
- 2010
- Confidence
- 0.94
- Version strategy
- SEPARATE_ENTITY
- Version tag
- 3.x
Maturity reasoning: Apache Spark appears in many data engineering JDs and remains a standard for distributed ETL/ELT; its GitHub and vendor ecosystem activity stay strong, with Databricks and cloud platforms still promoting it.
Skill profile (library / DB)
- Skill nature
- FRAMEWORK
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 5
- Sub-category id
- 1021
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
ETL and ELT Tooling Catalog dimension db id 24
Library dimension (catalog)
Roles linked in library: Data Engineer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
ETL and ELT Tooling
etl-and-elt-tooling
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Aliases — catalog
- Kafka (CANONICAL) primary
Context tags (catalog)
Stored enrichment (catalog DB)
- Category
- Datastore
- Sub-category
- Event Stream Store
- Vendor
- Confluent
- License
- apache_2
- Year introduced
- 2011
- Confidence
- 0.90
- Version strategy
- NOT_APPLICABLE
Maturity reasoning: Kafka appears in many production JDs for event streaming and data pipelines, and remains a standard platform in cloud/vendor offerings (e.g., Confluent, AWS MSK), indicating broad hiring demand.
Skill profile (library / DB)
- Skill nature
- TOOL
- Volatility
- STABLE
- Typical lifespan
- EVERGREEN
- Category id
- 3
- Sub-category id
- 3533
- Extractable
- True
- Also category
- False
Dimensions (API 2 worklist)
-
Asynchronous Messaging and Event Streaming Catalog dimension db id 297
Library dimension (catalog)
Roles linked in library: .NET Backend Developer, Go Backend Developer, Kotlin Backend Developer, Node.js Backend Developer, Scala Backend Developer
-
Messaging and Background Jobs Catalog dimension db id 291
Library dimension (catalog)
Roles linked in library: PHP Backend Developer, Python Backend Developer, Ruby Backend Developer
-
Messaging and Event Streaming Catalog dimension db id 8
Library dimension (catalog)
Roles linked in library: Backend Developer, Data Engineer
API 3 link attempts (this skill)
| Dimension | Skill↔dim | Role↔dim | Outcome |
|---|---|---|---|
|
Asynchronous Messaging and Event Streaming
asynchronous-messaging-and-event-streaming
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Messaging and Background Jobs
messaging-and-background-jobs
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) |
|
Messaging and Event Streaming
messaging-and-event-streaming
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Skill enrichment (orchestrator / LLM)
No Stage 7 enrichment blob on this skill (orchestrator skipped enrichment).
- Category
- Data Engineering Tools
- Sub-category
- general
- Skill nature
- CONCEPT
- Volatility
- MEDIUM
- Typical lifespan
- MULTI_YEAR
- Version strategy
- UNVERSIONED
All API 3 persistence rows
Same grid as the skill-extractor “Persistence items” table: one row per (skill × dimension) work item.
| Skill | Tag | Dimension | Skill↔dim | Role↔dim | Outcome | Notes |
|---|---|---|---|---|---|---|
| Java | in_db |
Java Language and JVM
java-language-and-jvm
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Java | in_db |
Kotlin and Java
kotlin-and-java
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Java | in_db |
Native Mobile Languages
native-mobile-languages
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Java | in_db |
Pega Programming Languages & DSLs
pega-programming-languages-dsls
|
✓ | — | 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 saved | |
| Hadoop | in_db |
ETL and ELT Tooling
etl-and-elt-tooling
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| Spark | in_db |
ETL and ELT Tooling
etl-and-elt-tooling
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved | |
| Kafka | in_db |
Asynchronous Messaging and Event Streaming
asynchronous-messaging-and-event-streaming
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Kafka | in_db |
Messaging and Background Jobs
messaging-and-background-jobs
|
✓ | — | Existing dimension (library) · Role↔dimension skipped (dimension not under chosen role) | |
| Kafka | in_db |
Messaging and Event Streaming
messaging-and-event-streaming
|
✓ | ✓ | Existing dimension (library) · Role↔dimension saved |
Library artifacts (this run)
| Kind | Detail | DB id |
|---|---|---|
| canonical_skill_proposed | Big Data | type=Data Engineering Tools subtype=general nature=CONCEPT lifespan=MULTI_YEAR |
nano JD Parser — gpt-4.1-nano click to toggle
Show raw JSON
{
"JD_type": "pass",
"about_company": {
"source_marker": {
"first_5_words": "EPAM Anywhere is a part",
"last_5_words": "transformation services provider."
},
"text": "EPAM Anywhere is a part of EPAM Systems, Inc. (NYSE: EPAM). Since 1993, EPAM has leveraged its advanced software engineering heritage to become the foremost global digital transformation services provider.",
"word_count": 32
},
"certifications": [],
"company_name": "EPAM Anywhere",
"ctc": null,
"domain": {
"primary": {
"aliases": [
"ITES",
"BPO",
"Tech Consulting"
],
"domain": "IT Services \u0026 Consulting"
},
"secondary": null
},
"education": [],
"experience": {
"max": null,
"min": 3,
"raw": "3+ years\u0027 experience in Java"
},
"job_locations": [
{
"aliases": [],
"city": null,
"country": "India",
"state": null,
"work_mode": "remote"
}
],
"role": "Senior Big Data Developer",
"role_aliases": [
"Big Data Engineer",
"Senior Data Engineer",
"Big Data Developer"
],
"role_archetype": "Engineering",
"roles_and_responsibilities": [
{
"bullet_count": 5,
"heading": "Responsibilities",
"heading_was_present": true,
"source_marker": {
"first_5_words": "Work on high-quality architecture and",
"last_5_words": "analyses and reports"
},
"text": "Work on high-quality architecture and implementation design, collaborating with the customer, system/business analysts and onshore architects\nDesign and implement production Big Data environments using modern technologies\nWork with the team on modelling complex relationships in heterogeneous data environments\nBuild, validate and optimize large-scale, corporate-wide Big Data solutions\nWork with business stakeholders to translate their data/reporting needs to algorithms, analyses and reports",
"word_count": 56
},
{
"bullet_count": 4,
"heading": "Requirements",
"heading_was_present": true,
"source_marker": {
"first_5_words": "3+ years\u0027 experience in Java",
"last_5_words": "in Big Data practice"
},
"text": "3+ years\u0027 experience in Java\nExperience with Big Data (Hadoop, Spark, Kafka, etc.)\nGood command of English (B2)\nDesire to develop professionally in Big Data practice",
"word_count": 32
}
],
"urls": []
}
API 1 — extract-from-jd click to toggle
{
"final_skills": [
{
"is_primary": true,
"skill_name": "Java"
},
{
"is_primary": true,
"skill_name": "Hadoop"
},
{
"is_primary": true,
"skill_name": "Spark"
},
{
"is_primary": true,
"skill_name": "Kafka"
},
{
"is_primary": true,
"skill_name": "Big Data"
}
],
"jd_role": {
"display_name": "Senior Big Data Developer",
"rationale": null,
"role_aliases": [
"Big Data Engineer",
"Senior Data Engineer",
"Big Data Developer"
],
"role_archetype": "Engineering",
"slug": ""
},
"nano_parsed": {
"JD_type": "pass",
"about_company": {
"source_marker": {
"first_5_words": "EPAM Anywhere is a part",
"last_5_words": "transformation services provider."
},
"text": "EPAM Anywhere is a part of EPAM Systems, Inc. (NYSE: EPAM). Since 1993, EPAM has leveraged its advanced software engineering heritage to become the foremost global digital transformation services provider.",
"word_count": 32
},
"certifications": [],
"company_name": "EPAM Anywhere",
"ctc": null,
"domain": {
"primary": {
"aliases": [
"ITES",
"BPO",
"Tech Consulting"
],
"domain": "IT Services \u0026 Consulting"
},
"secondary": null
},
"education": [],
"experience": {
"max": null,
"min": 3,
"raw": "3+ years\u0027 experience in Java"
},
"job_locations": [
{
"aliases": [],
"city": null,
"country": "India",
"state": null,
"work_mode": "remote"
}
],
"role": "Senior Big Data Developer",
"role_aliases": [
"Big Data Engineer",
"Senior Data Engineer",
"Big Data Developer"
],
"role_archetype": "Engineering",
"roles_and_responsibilities": [
{
"bullet_count": 5,
"heading": "Responsibilities",
"heading_was_present": true,
"source_marker": {
"first_5_words": "Work on high-quality architecture and",
"last_5_words": "analyses and reports"
},
"text": "Work on high-quality architecture and implementation design, collaborating with the customer, system/business analysts and onshore architects\nDesign and implement production Big Data environments using modern technologies\nWork with the team on modelling complex relationships in heterogeneous data environments\nBuild, validate and optimize large-scale, corporate-wide Big Data solutions\nWork with business stakeholders to translate their data/reporting needs to algorithms, analyses and reports",
"word_count": 56
},
{
"bullet_count": 4,
"heading": "Requirements",
"heading_was_present": true,
"source_marker": {
"first_5_words": "3+ years\u0027 experience in Java",
"last_5_words": "in Big Data practice"
},
"text": "3+ years\u0027 experience in Java\nExperience with Big Data (Hadoop, Spark, Kafka, etc.)\nGood command of English (B2)\nDesire to develop professionally in Big Data practice",
"word_count": 32
}
],
"urls": []
},
"rejected": false,
"rejection_reason": null,
"run_id": "45180a43-bbd2-436e-9ee7-77d895a4325d",
"stage3_signals": {
"alias_found": true,
"alias_match_roles": [
{
"display_name": "Data Engineer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 2,
"score": 1.0,
"slug": "data-engineer",
"total_count": null
}
],
"kra_match_roles": [
{
"display_name": "Data Engineer",
"kra_matches": [
{
"kra_text": "Works with data analysts, data scientists, and business stakeholders to define data models, ingestion schedules, and data delivery requirements.",
"sentence": "Work with business stakeholders to translate their data/reporting needs to algorithms, analyses and reports",
"similarity": 0.6588
},
{
"kra_text": "Builds data ingestion pipelines to collect data from transactional databases, third-party APIs, event streams, and file sources into centralized data platforms.",
"sentence": "Build, validate and optimize large-scale, corporate-wide Big Data solutions",
"similarity": 0.591
},
{
"kra_text": "Works with data analysts, data scientists, and business stakeholders to define data models, ingestion schedules, and data delivery requirements.",
"sentence": "Work with the team on modelling complex relationships in heterogeneous data environments",
"similarity": 0.5595
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 2,
"score": 0.6031,
"slug": "data-engineer",
"total_count": null
},
{
"display_name": "Fullstack Developer",
"kra_matches": [
{
"kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
"sentence": "Work on high-quality architecture and implementation design, collaborating with the customer, system/business analysts and onshore architects",
"similarity": 0.501
},
{
"kra_text": "Works closely with product managers and UX designers to translate requirements and wireframes into working software features through iterative development.",
"sentence": "Work with business stakeholders to translate their data/reporting needs to algorithms, analyses and reports",
"similarity": 0.4818
},
{
"kra_text": "Designs and queries relational databases like PostgreSQL and document stores like MongoDB, writing migrations, indexes, and optimized queries.",
"sentence": "Design and implement production Big Data environments using modern technologies",
"similarity": 0.4776
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 15,
"score": 0.4868,
"slug": "full-stack-engineer",
"total_count": null
},
{
"display_name": "Cloud Architect",
"kra_matches": [
{
"kra_text": "Conducts architecture reviews, approves technical design documents, and guides engineering teams through cloud migration and modernization projects.",
"sentence": "Work on high-quality architecture and implementation design, collaborating with the customer, system/business analysts and onshore architects",
"similarity": 0.5553
},
{
"kra_text": "Designs multi-region and multi-availability-zone cloud infrastructure architectures for high availability, fault tolerance, and horizontal scalability.",
"sentence": "Design and implement production Big Data environments using modern technologies",
"similarity": 0.4608
},
{
"kra_text": "Evaluates cloud-native managed services, serverless compute, PaaS databases, and CDN solutions for workload fit and total cost of ownership.",
"sentence": "Build, validate and optimize large-scale, corporate-wide Big Data solutions",
"similarity": 0.4196
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 9,
"score": 0.4786,
"slug": "cloud-architect",
"total_count": null
},
{
"display_name": "MLOps Engineer",
"kra_matches": [
{
"kra_text": "Coordinates model promotion workflows across development, staging, and production environments including integration testing and data contract validation.",
"sentence": "Work with the team on modelling complex relationships in heterogeneous data environments",
"similarity": 0.4975
},
{
"kra_text": "Validates model performance benchmarks, data schema contracts, and system integration health before signing off on production release readiness.",
"sentence": "Build, validate and optimize large-scale, corporate-wide Big Data solutions",
"similarity": 0.4926
},
{
"kra_text": "Coordinates model promotion workflows across development, staging, and production environments including integration testing and data contract validation.",
"sentence": "Design and implement production Big Data environments using modern technologies",
"similarity": 0.4366
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 16,
"score": 0.4755,
"slug": "ml-ops-engineer",
"total_count": null
},
{
"display_name": "ML Engineer",
"kra_matches": [
{
"kra_text": "Translates product requirements into machine learning system specifications including feature definitions, model architecture choices, and success metric definitions.",
"sentence": "Work with business stakeholders to translate their data/reporting needs to algorithms, analyses and reports",
"similarity": 0.5001
},
{
"kra_text": "Prepares, cleans, and transforms training datasets, manages feature stores, and builds feature engineering pipelines for model training.",
"sentence": "Build, validate and optimize large-scale, corporate-wide Big Data solutions",
"similarity": 0.4721
},
{
"kra_text": "Monitors production model behavior for data drift, concept drift, and prediction performance degradation using monitoring dashboards and alerting.",
"sentence": "Design and implement production Big Data environments using modern technologies",
"similarity": 0.4434
}
],
"matched_count": null,
"matched_skills": null,
"role_id": 3,
"score": 0.4719,
"slug": "ml-engineer",
"total_count": null
}
],
"skill_match_roles": [
{
"display_name": "Data Engineer",
"kra_matches": null,
"matched_count": 4,
"matched_skills": [
"Apache Spark",
"Hadoop",
"Java",
"Kafka"
],
"role_id": 2,
"score": 0.8,
"slug": "data-engineer",
"total_count": 5
},
{
"display_name": "Backend Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Java",
"Kafka"
],
"role_id": 1,
"score": 0.4,
"slug": "backend-engineer",
"total_count": 5
},
{
"display_name": "Scala Backend Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Java",
"Kafka"
],
"role_id": 87,
"score": 0.4,
"slug": "scala-backend-developer",
"total_count": 5
},
{
"display_name": "Kotlin Backend Developer",
"kra_matches": null,
"matched_count": 2,
"matched_skills": [
"Java",
"Kafka"
],
"role_id": 84,
"score": 0.4,
"slug": "kotlin-server-backend-developer",
"total_count": 5
},
{
"display_name": "Pega Developer",
"kra_matches": null,
"matched_count": 1,
"matched_skills": [
"Java"
],
"role_id": 24,
"score": 0.2,
"slug": "pega-developer",
"total_count": 5
}
]
},
"stage4_decision": {
"alias_collision_detected": false,
"case": "A",
"chosen_role": {
"display_name": "Data Engineer",
"kra_matches": null,
"matched_count": null,
"matched_skills": null,
"role_id": 2,
"score": 1.0,
"slug": "data-engineer",
"total_count": null
},
"confidence": 1.0,
"is_new_role": false,
"llm2_fired": false,
"llm2_reasoning": null,
"matched_dimensions": [],
"matched_kras": [],
"matched_skills": [],
"new_role_display_name": null,
"new_role_slug": null,
"queued": false,
"reasoning": "Exact alias hit on data-engineer (1.0) \u2014 no other alias at this confidence; skill_top data-engineer 0.80 does not contradict",
"sub_role": null
},
"stage5_updates": {
"centroid_n_after": 207,
"centroid_updated": true,
"collision_log_id": null,
"new_kra_attached": null,
"new_skills_attached": [
{
"is_primary": true,
"queue_id": 10855,
"role_display_name": "Data Engineer",
"role_slug": "data-engineer",
"skill_name": "Big Data",
"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": 2010,
"existing_alias_text": "Hadoop",
"input_term": "Hadoop",
"matched_canonical": {
"category_id": 5,
"display_name": "Hadoop",
"id": 1351,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "hadoop",
"sub_category_id": 91,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "alias"
},
{
"alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
"alias_persisted": false,
"existing_alias_id": 2510,
"existing_alias_text": "spark",
"input_term": "Spark",
"matched_canonical": {
"category_id": 5,
"display_name": "Apache Spark",
"id": 1350,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "apache-spark",
"sub_category_id": 1021,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "alias"
},
{
"alias_persist_skipped_reason": "alias_text already exists for this canonical skill",
"alias_persisted": false,
"existing_alias_id": 173,
"existing_alias_text": "Kafka",
"input_term": "Kafka",
"matched_canonical": {
"category_id": 3,
"display_name": "Kafka",
"id": 36,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "TOOL",
"slug": "kafka",
"sub_category_id": 3533,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"matched_via": "alias"
}
],
"candidate_roles": [
{
"display_name": "Java Backend Developer",
"id": 79,
"rationale": null,
"role_archetype": "Engineering",
"slug": "java-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
},
{
"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": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
},
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-engineer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
},
{
"display_name": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
},
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
}
],
"chosen_role": {
"display_name": "Data Engineer",
"id": 2,
"rationale": "Exact alias hit on data-engineer (1.0) \u2014 no other alias at this confidence; skill_top data-engineer 0.80 does not contradict",
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Java Language and JVM",
"id": 279,
"rationale": "Core Java implementation skills used to build backend service logic, utilities, and internal abstractions. This is the primary coding surface for the role and includes language features plus JVM behavior that affect correctness and maintainability.",
"slug": "java-language-and-jvm",
"source": "db"
},
"input_skill": "Java",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Java Backend Developer",
"id": 79,
"rationale": null,
"role_archetype": "Engineering",
"slug": "java-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "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 Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Native Mobile Languages",
"id": 274,
"rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
"slug": "native-mobile-languages",
"source": "db"
},
"input_skill": "Java",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Pega Programming Languages \u0026 DSLs",
"id": 267,
"rationale": "Programming languages and domain-specific languages used in Pega development.",
"slug": "pega-programming-languages-dsls",
"source": "db"
},
"input_skill": "Java",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "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": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "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": "ETL and ELT Tooling",
"id": 24,
"rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
"slug": "etl-and-elt-tooling",
"source": "db"
},
"input_skill": "Hadoop",
"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": "ETL and ELT Tooling",
"id": 24,
"rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
"slug": "etl-and-elt-tooling",
"source": "db"
},
"input_skill": "Spark",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Asynchronous Messaging and Event Streaming",
"id": 297,
"rationale": "Asynchronous communication patterns and broker technologies used to decouple backend services and move work off the request path. Includes queues, pub/sub, event streams, consumer groups, dead-letter queues, and delivery semantics across systems such as Kafka, RabbitMQ, NATS, SQS/SNS, Pulsar, and ActiveMQ.",
"slug": "asynchronous-messaging-and-event-streaming",
"source": "db"
},
"input_skill": "Kafka",
"llm_role": null,
"roles_from_db": [
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Messaging and Background Jobs",
"id": 291,
"rationale": "Asynchronous processing patterns and worker systems used to decouple backend work from request handling. This is a coherent cluster because the role supports background jobs, retries, and deferred processing.",
"slug": "messaging-and-background-jobs",
"source": "db"
},
"input_skill": "Kafka",
"llm_role": null,
"roles_from_db": [
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Messaging and Event Streaming",
"id": 8,
"rationale": "Transport-layer systems used to move events and decouple producers from consumers. Data engineers use these systems to ingest, buffer, and distribute event data before downstream processing.",
"slug": "messaging-and-event-streaming",
"source": "db"
},
"input_skill": "Kafka",
"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": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
}
]
}
],
"input_final_skills": [
"Java",
"Hadoop",
"Spark",
"Kafka",
"Big Data"
],
"input_llm_skills": [
"Java",
"Hadoop",
"Spark",
"Kafka",
"Big Data"
],
"new_aliases_persisted": 0,
"run_id": "45180a43-bbd2-436e-9ee7-77d895a4325d",
"skills_detail": [
{
"aliases_in_db": [
{
"alias_text": "Java",
"alias_type": "CANONICAL",
"id": 1,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "JDK",
"alias_type": "VERSION",
"id": 2968,
"is_primary": false,
"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": "Java11",
"alias_type": "VERSION",
"id": 2976,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Java17",
"alias_type": "VERSION",
"id": 2977,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Java21",
"alias_type": "VERSION",
"id": 2978,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "Java8",
"alias_type": "VERSION",
"id": 2971,
"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 lts",
"alias_type": "VERSION",
"id": 3122,
"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": "Java Language and JVM",
"id": 279,
"rationale": "Core Java implementation skills used to build backend service logic, utilities, and internal abstractions. This is the primary coding surface for the role and includes language features plus JVM behavior that affect correctness and maintainability.",
"slug": "java-language-and-jvm",
"source": "db"
},
"input_skill": "Java",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Java Backend Developer",
"id": 79,
"rationale": null,
"role_archetype": "Engineering",
"slug": "java-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "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 Developer",
"id": 4,
"rationale": null,
"role_archetype": null,
"slug": "android-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Native Mobile Languages",
"id": 274,
"rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
"slug": "native-mobile-languages",
"source": "db"
},
"input_skill": "Java",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Pega Programming Languages \u0026 DSLs",
"id": 267,
"rationale": "Programming languages and domain-specific languages used in Pega development.",
"slug": "pega-programming-languages-dsls",
"source": "db"
},
"input_skill": "Java",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "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": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "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": "Hadoop",
"alias_type": "CANONICAL",
"id": 2010,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 5,
"display_name": "Hadoop",
"id": 1351,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "hadoop",
"sub_category_id": 91,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "ETL and ELT Tooling",
"id": 24,
"rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
"slug": "etl-and-elt-tooling",
"source": "db"
},
"input_skill": "Hadoop",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
}
]
}
],
"input_skill": "Hadoop",
"matched_via": "alias",
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": null,
"source_tag": "db",
"was_in_llm_skills": true
},
{
"aliases_in_db": [
{
"alias_text": "Apache Spark",
"alias_type": "CANONICAL",
"id": 2004,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "apache spark 3",
"alias_type": "VERSION",
"id": 2006,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "spark",
"alias_type": "VERSION",
"id": 2510,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "spark 3",
"alias_type": "VERSION",
"id": 2007,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "spark 3.x",
"alias_type": "VERSION",
"id": 2009,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
},
{
"alias_text": "spark3",
"alias_type": "VERSION",
"id": 2008,
"is_primary": false,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 5,
"display_name": "Apache Spark",
"id": 1350,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "FRAMEWORK",
"slug": "apache-spark",
"sub_category_id": 1021,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "ETL and ELT Tooling",
"id": 24,
"rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
"slug": "etl-and-elt-tooling",
"source": "db"
},
"input_skill": "Spark",
"llm_role": null,
"roles_from_db": [
{
"display_name": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
}
]
}
],
"input_skill": "Spark",
"matched_via": "alias",
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": null,
"source_tag": "db",
"was_in_llm_skills": true
},
{
"aliases_in_db": [
{
"alias_text": "Kafka",
"alias_type": "CANONICAL",
"id": 173,
"is_primary": true,
"match_strategy": "CASE_INSENSITIVE"
}
],
"canonical": {
"category_id": 3,
"display_name": "Kafka",
"id": 36,
"is_also_category": false,
"is_extractable": true,
"skill_nature": "TOOL",
"slug": "kafka",
"sub_category_id": 3533,
"typical_lifespan": "EVERGREEN",
"volatility": "STABLE"
},
"dimensions": [
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Asynchronous Messaging and Event Streaming",
"id": 297,
"rationale": "Asynchronous communication patterns and broker technologies used to decouple backend services and move work off the request path. Includes queues, pub/sub, event streams, consumer groups, dead-letter queues, and delivery semantics across systems such as Kafka, RabbitMQ, NATS, SQS/SNS, Pulsar, and ActiveMQ.",
"slug": "asynchronous-messaging-and-event-streaming",
"source": "db"
},
"input_skill": "Kafka",
"llm_role": null,
"roles_from_db": [
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Messaging and Background Jobs",
"id": 291,
"rationale": "Asynchronous processing patterns and worker systems used to decouple backend work from request handling. This is a coherent cluster because the role supports background jobs, retries, and deferred processing.",
"slug": "messaging-and-background-jobs",
"source": "db"
},
"input_skill": "Kafka",
"llm_role": null,
"roles_from_db": [
{
"display_name": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
}
]
},
{
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Messaging and Event Streaming",
"id": 8,
"rationale": "Transport-layer systems used to move events and decouple producers from consumers. Data engineers use these systems to ingest, buffer, and distribute event data before downstream processing.",
"slug": "messaging-and-event-streaming",
"source": "db"
},
"input_skill": "Kafka",
"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": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
}
]
}
],
"input_skill": "Kafka",
"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": "Big Data",
"matched_via": null,
"new_alias_persisted": false,
"new_alias_text": null,
"new_skill_meta": {
"derived": {
"category": "Data Engineering Tools",
"skill_nature": "CONCEPT",
"sub_category": "general",
"typical_lifespan": "MULTI_YEAR",
"version_strategy": "UNVERSIONED",
"volatility": "MEDIUM"
},
"enrichment": null,
"keep_log": [],
"locked_dimensions": [],
"merge_log": [],
"placed": null,
"relationships": null,
"skill_id": "big-data",
"split_log": [],
"typed": null,
"warnings": []
},
"source_tag": "llm",
"was_in_llm_skills": true
}
],
"unmatched_skills": [
"Big Data"
]
}
API 3 — final-role-output
{
"chosen_role": {
"display_name": "Data Engineer",
"id": 2,
"rationale": "Exact alias hit on data-engineer (1.0) \u2014 no other alias at this confidence; skill_top data-engineer 0.80 does not contradict",
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
},
"chosen_role_resolution": "in_db",
"final_input_skills": [
{
"skill": "Java",
"tag": "in_db"
},
{
"skill": "Hadoop",
"tag": "in_db"
},
{
"skill": "Spark",
"tag": "in_db"
},
{
"skill": "Kafka",
"tag": "in_db"
},
{
"skill": "Big Data",
"tag": "new"
}
],
"llm_cost_api1_usd": null,
"llm_cost_api2_usd": null,
"llm_cost_api3_usd": null,
"llm_cost_total_usd": null,
"persistence": {
"items": [
{
"chosen_role_id": 2,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Java Language and JVM",
"id": 279,
"rationale": "Core Java implementation skills used to build backend service logic, utilities, and internal abstractions. This is the primary coding surface for the role and includes language features plus JVM behavior that affect correctness and maintainability.",
"slug": "java-language-and-jvm",
"source": "db"
},
"dimension_id": 279,
"input_skill": "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": "Java Backend Developer",
"id": 79,
"rationale": null,
"role_archetype": "Engineering",
"slug": "java-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 2,
"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 Developer",
"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": 2,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Native Mobile Languages",
"id": 274,
"rationale": "Primary implementation languages used to build platform-specific app features, UI logic, and device integrations. This is the core coding surface for native mobile work on one platform.",
"slug": "native-mobile-languages",
"source": "db"
},
"dimension_id": 274,
"input_skill": "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": "Native Mobile Developer",
"id": 75,
"rationale": null,
"role_archetype": "Engineering",
"slug": "native-mobile-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 2,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Pega Programming Languages \u0026 DSLs",
"id": 267,
"rationale": "Programming languages and domain-specific languages used in Pega development.",
"slug": "pega-programming-languages-dsls",
"source": "db"
},
"dimension_id": 267,
"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": "Pega Developer",
"id": 24,
"rationale": null,
"role_archetype": null,
"slug": "pega-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 2,
"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": 435,
"rationale": null,
"role_archetype": "Engineering",
"slug": "fullstack-developer",
"source": "db"
},
{
"display_name": "Fullstack Developer",
"id": 15,
"rationale": null,
"role_archetype": null,
"slug": "full-stack-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 2,
"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": true,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
"role_dimension_saved": true,
"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": 2,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "ETL and ELT Tooling",
"id": 24,
"rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
"slug": "etl-and-elt-tooling",
"source": "db"
},
"dimension_id": 24,
"input_skill": "Hadoop",
"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": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1351,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 2,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "ETL and ELT Tooling",
"id": 24,
"rationale": "Packaged tools for extracting, loading, and transforming data across systems. This dimension covers connector-based ingestion, transformation frameworks, and managed integration products.",
"slug": "etl-and-elt-tooling",
"source": "db"
},
"dimension_id": 24,
"input_skill": "Spark",
"llm_role": null,
"matched_chosen_role": true,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
"role_dimension_saved": true,
"roles_from_db": [
{
"display_name": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 1350,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 2,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Asynchronous Messaging and Event Streaming",
"id": 297,
"rationale": "Asynchronous communication patterns and broker technologies used to decouple backend services and move work off the request path. Includes queues, pub/sub, event streams, consumer groups, dead-letter queues, and delivery semantics across systems such as Kafka, RabbitMQ, NATS, SQS/SNS, Pulsar, and ActiveMQ.",
"slug": "asynchronous-messaging-and-event-streaming",
"source": "db"
},
"dimension_id": 297,
"input_skill": "Kafka",
"llm_role": null,
"matched_chosen_role": false,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension skipped (dimension not under chosen role)",
"role_dimension_saved": false,
"roles_from_db": [
{
"display_name": ".NET Backend Developer",
"id": 83,
"rationale": null,
"role_archetype": "Engineering",
"slug": "dotnet-backend-developer",
"source": "db"
},
{
"display_name": "Go Backend Developer",
"id": 81,
"rationale": null,
"role_archetype": "Engineering",
"slug": "go-backend-developer",
"source": "db"
},
{
"display_name": "Kotlin Backend Developer",
"id": 84,
"rationale": null,
"role_archetype": "Engineering",
"slug": "kotlin-server-backend-developer",
"source": "db"
},
{
"display_name": "Node.js Backend Developer",
"id": 82,
"rationale": null,
"role_archetype": "Engineering",
"slug": "node-backend-developer",
"source": "db"
},
{
"display_name": "Scala Backend Developer",
"id": 87,
"rationale": null,
"role_archetype": "Engineering",
"slug": "scala-backend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 36,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 2,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Messaging and Background Jobs",
"id": 291,
"rationale": "Asynchronous processing patterns and worker systems used to decouple backend work from request handling. This is a coherent cluster because the role supports background jobs, retries, and deferred processing.",
"slug": "messaging-and-background-jobs",
"source": "db"
},
"dimension_id": 291,
"input_skill": "Kafka",
"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": "PHP Backend Developer",
"id": 86,
"rationale": null,
"role_archetype": "Engineering",
"slug": "php-backend-developer",
"source": "db"
},
{
"display_name": "Python Backend Developer",
"id": 80,
"rationale": null,
"role_archetype": "Engineering",
"slug": "python-backend-developer",
"source": "db"
},
{
"display_name": "Ruby Backend Developer",
"id": 85,
"rationale": null,
"role_archetype": "Engineering",
"slug": "ruby-backend-developer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 36,
"skill_tag": "in_db",
"skipped_reason": null
},
{
"chosen_role_id": 2,
"dimension": {
"difficulty_hint": "well_known",
"display_name": "Messaging and Event Streaming",
"id": 8,
"rationale": "Transport-layer systems used to move events and decouple producers from consumers. Data engineers use these systems to ingest, buffer, and distribute event data before downstream processing.",
"slug": "messaging-and-event-streaming",
"source": "db"
},
"dimension_id": 8,
"input_skill": "Kafka",
"llm_role": null,
"matched_chosen_role": true,
"outcome_line": "Existing dimension (library) \u00b7 Role\u2194dimension saved",
"role_dimension_saved": true,
"roles_from_db": [
{
"display_name": "Backend Developer",
"id": 1,
"rationale": null,
"role_archetype": "A Backend Engineer designs, builds, and maintains the server-side logic and data handling that power applications and services. They focus on implementing reliable business functionality, integrating with other systems, and ensuring the backend is scalable, maintainable, and observable.",
"slug": "backend-engineer",
"source": "db"
},
{
"display_name": "Data Engineer",
"id": 2,
"rationale": null,
"role_archetype": null,
"slug": "data-engineer",
"source": "db"
}
],
"skill_dimension_saved": true,
"skill_id": 36,
"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": "45180a43-bbd2-436e-9ee7-77d895a4325d"
}
LLM Calls
Every model call made for this run, in pipeline order. Click a card to see the model's response.