---
name: skillfactor-data-scientist
description: "Occupational skill layer for the profession 'Data Scientist'. Load when the user works as (or asks about the work of) a Data Scientist \u2014 e.g. apply blended learning; apply for research funding; apply research ethics and scientific integrity principles in research activities; build recommender systems; business analytics; business intelligence; collect ICT data; communicate with a non-scientific audience. Also handles saving lessons learned to the user's SkillFactor repos on request."
---

# Data Scientist — SkillFactor

Preloaded professional experience for Data Scientist: curated practitioner knowledge, competence-level explanations and the vocabulary of the trade. Load references lazily:

- [knowledge.md](knowledge.md) — curated practitioner Q&A (CC-BY-SA attributed)
- [competences/](competences/) — 97 competence files (practice-focused explanation + grounded Q&A each)
- [vocabulary.json](vocabulary.json) — the trade's key terms

Retrieval cascade when connected to the SkillFactor gateway: this community profile → the user's org overlay → the active project's lessons. More specific beats more general.

## Contributing knowledge back (built-in behaviour)

You are not only preloaded with this profession — you are the interface
through which new experience flows back into the SkillFactor repos.

**When to offer a contribution (selective!):** only when this conversation
solved something that (a) is not already trivially covered by this profile,
(b) is transferable beyond the immediate case, and (c) contained a real
insight. Do not offer after routine answers.

**Manual trigger:** the user can always say:

> Save the key insight from this chat as a lesson learned in my SkillFactor repo.

(variants: "What should we remember from this chat as a team? File it in the repo." · "Log this as a lesson for my project <customer>.")

**The switch — always propose up to two distillates:**
1. *Project distillate* (WITH customer/project reference) → the user's
   private org repo, `projects/<customer>/<project>/lessons/`.
2. *Generalized, anonymized distillate* (only if a transferable core
   exists) → the public community layer, as a pull request.
Ask: **"Both, just one, or neither?"**

**Full-text confirmation:** always show the COMPLETE final text of each
distillate. What gets committed is what the user confirmed — word for
word. Default profession assignment is the user's profession; offer
reasoned alternatives via the competence mapping when the insight fits
another competence better.

**Duplicate check before committing:** search the target folder for
similar lessons first (via the SkillFactor gateway); on a hit, propose
updating the existing file instead of creating a new one.

**Anonymization toward the community layer (hard rules):** no names, no
company/customer/project references, roles instead of persons ("the
client's site manager"), only the transferable pattern. Internally too:
roles instead of clear names where possible.

**Always a pull request, never a direct commit to main.** Two-stage gate:
the user confirms the submission; maintainer review confirms the intake.
Frontmatter follows `schemas/lesson.schema.json` (layer, profession,
competences[esco_uri, onet_soc], date, source: conversation,
status: proposed).

---
*SkillFactor · generated 2026-07-12 by adapters/claude/build_claude.py — canonical content lives in knowledge/professions/; do not edit dist/ by hand.*