Skip to main content

Jobs & skills framework — configuration guide

This guide is for administrators preparing the job and skill catalogue. Keep configuration ownership separate from implementation generation. A modern navigation shell can open a legacy form. Daily browsing is covered by the functional guide; contracts and source paths are in the technical guide.

Ownership and generation​

Owner / scopeLegacyNextgen
Project / platform corePermission profiles, tenant feature activation, field definitions, translations and controlled import preparation.API authentication and action permissions, company context, validation, persistence and asynchronous consumers.
Customer administratorAuthorized Jobs and skills screens: references, groups, skills, job descriptions and statuses. Availability depends on the tenant and actual permissions.Framework CRUD APIs verified. No dedicated nextgen customer editor identified in inspected front-end routes; do not invent a parallel screen or configure legacy settings through an unrelated nextgen page.

Customer administrators can maintain records through the authorized Jobs and skills workspace. Nextgen API routes provide separate integration contracts; use the interface and integration paths enabled for your deployment.

Customer administrator — legacy​

Prepare the catalogue in dependency order​

  1. Agree on reference ownership, publication rules, languages and stable codes.
  2. Prepare References before importing or creating dependent records.
  3. Prepare Skill groups, then skills and job descriptions, then attach skills to jobs with the required mastery and importance where supported.
  4. Review publication status, translations and representative employee visibility before wider release.

This order is Documented in Confluence in the Jobs & Skills Framework playbook, v8, 8 August 2023. The current code confirms repository relationships, but no import or publication was performed during this documentation work.

References: separate public visibility from main status​

Open Jobs and skills → References with authorized access. Review the translated name, public / visible to employees option and main option before saving through your normal change process.

FieldAllowed values / default evidenceScope, dependency and effect
NameTranslated text; actual form validation must be checked before submission.Identifies the repository containing jobs, skills and groups. Names are not stable import identifiers.
Public / employee visibilityBoolean, optional in the legacy form. Existing values are record-specific; no universal legacy creation default verified.Affects repository availability in relevant screens. Do not assume every employee job route applies the same repository predicate.
MainBoolean, optional in the legacy form.Current legacy controller demotes other repositories when selected as main. It is different from public visibility.
System typeCode distinguishes Neobrain and External.Existing system records may have restricted naming; do not rename or remove system references to follow an old playbook literally.

Source: legacy src/Company/ReferentialBundle/Controller/DefaultController.php and src/Main/ConfigBundle/Form/Type/ReferentialType.php. How to manage your repositories?, v10, 27 March 2023, documents visibility and historical main behavior. Its statement that main has no customer impact is not a reason to ignore the current single-main enforcement. Different employee catalogue queries require route-specific validation.

Skill groups​

Open Skill groups and inspect the group before assigning skills. Verified in code, SkillGroupType exposes translated title, repository, measurable checkbox, weight, type and position.

SettingValues and validationEffect / safe preparation
Title / repositoryRequired translated title and repository.Establish the container before dependent skill imports.
TypeMultiple choices from hard, soft, other.Classifies the group. The historical guide recommends one group per type; it is documentary guidance, not a newly verified uniqueness validator.
WeightRequired, nonblank string in the inspected form.Used as configured weighting; do not impose an unverified numeric range or mandatory 50/50 split.
MeasurableOptional boolean.Review assessment expectations with the platform team; no universal initial value verified.
PositionInteger, empty-data fallback 1 in the form.Ordering input exists in current code. The 2023 guide's claim that position was unsupported was not revalidated at runtime.

How to manage your skills groups?, v4, 20 February 2023, describes assigning previously ungrouped skills. Treat that as a remediation scenario; do not assume it reassigns all existing groups.

Skill content, translations and identifiers​

Open Skills, select the pencil and review each language tab. Maintain the skill title, description and mastery-label meanings consistently. A translated field can be empty even when another language contains content.

Legacy English skill configuration

The skill editor separates translated title, description and mastery-level labels by language tab. Select each language to maintain and review its content before saving.

View full size

Verified in code: SkillType exposes translated content, optional code/group, required repository and tags. The controller can generate an NB_… code when the tenant's auto-code capability is active and the code is absent. Its effective activation/default was not verified. Do not replace stable external codes merely because titles change. Automatic translation was observed as a control; provider, overwrite behavior and quotas were not validated.

Job definitions, expected skills and publication​

Prepare the title, descriptive sections, reference, stable code and status, then attach the relevant skills. Set expected mastery and importance for each skill where those controls are available. These describe the job; employee mastery and motivation are individual data. The nextgen job–skill DTO does not establish an identical importance field or fixed mastery scale.

Status choices are tenant-defined. Validate the status's actual employee-visible property rather than relying on the displayed name “Published”. Job custom fields can expose additional filters independently in manager and employee contexts. For example, the inspected custom field “famille” was separate from the standard family selector.

Use the status rules configured for the company and confirm employee visibility in the relevant workspace before wider publication. See Creating a job description for the documented workflow.

Replacing or importing a framework​

The Lexi import guide, v4, 28 May 2026, documents mapping old and new identities before replacement: one-to-one, merges, splits, additions and removals. Preserve the link to existing assessments deliberately. A Lexi export is not automatically a SmartMobility-ready import file. Its example mastery/importance scales are documentary context, not universal nextgen API constraints.

Before any approved migration, reconcile codes, translated names, repositories, groups, job–skill requirements and assessment mappings in a test process. No import, backup recovery or automatic rollback was tested here. Reverting a visibility checkbox is not recovery of deleted or merged records.

Platform-team reference — legacy​

The following are code-defined dependencies, not customer self-service instructions. Effective tenant values and global defaults were not verified.

Capability / keyCode-defined dependency and user effect
referentiel_r, referentiel_c, job_c_d, job_duplicateAction-specific catalogue rights. Some job write actions use OR checks; others differ. Audit route-level checks before changing a profile.
job_direction_bofoEnables the manager direction filter in the checked template.
module_metiers_filter_directions_boDespite the key name, the inspected template uses its inverse to expose job-family filtering. Check code before changing it.
module_metiers_filter_evolutions_boControls development/evolution filtering through an inverted visibility condition.
qualification_levels_bofoExposes qualification-level controls when active.
check_classificationParticipates in classification consistency-filter visibility through the checked template condition.
Job custom fields, contexts bo / foControl additional manager/employee fields and filters. A field label need not be translated automatically.
jobs_matching_profileConditions the employee recommendation area. A visible proximity dot does not establish a universal threshold or refresh schedule.
skill_autogenerated_codeEnables controller-generated skill codes when absent. Review identifier ownership first.
export_job_descriptions_as_CSVChanges export format selection in the legacy export path. No export was run.

Sources: legacy Job and Skill controllers, job list template, Customer/InternalJobBundle/Controller/DefaultController.php and SearchService.php. The 2023 playbook recommends some hidden filters and group weights for its project scenario; these recommendations are not current global defaults. Its negatively phrased rights table conflicts with positive descriptions, so current route checks take precedence for implementation claims.

Platform-team reference — nextgen​

Verified in code: configure supported API authentication/action permissions and company context for /api/v1/job, /skill, /skill-group, /referential and nested job skills. Use the reference DTO's required locale and boolean fields; do not reuse a legacy import row as an API request.

The first new reference is made main by the listener. Creating/updating a main reference demotes the previous main. Deletion is guarded by a deletability check, including dependent jobs, skills and groups; it is not a universal cleanup operation. Job/skill-group deletions are configured as soft deletes; skill/reference and job–skill deletion use different policies. See the technical contracts.

Job-assignment and skill-attached events can propagate missing skills to employee records asynchronously. Prepare the relevant consumer runtime and monitoring as part of deployment. Do not promise immediate profile updates, removal symmetry or replacement of assessed levels. AIhub import pipelines are separate integrations; a catalogue Save is not proof of an immediate AIhub refresh.

Customer administrator — nextgen​

No dedicated framework administration UI was identified in nextgen-front/src/router/private-routes.ts and the related bounded module search. Nextgen backend CRUD is verified; screen parity, deployment exposure, customer role provisioning and shared persistence with the legacy site are not verified. Use the available authorized catalogue interface and agreed integration process; do not claim an equivalent nextgen settings page exists.

Validation, rollout and troubleshooting​

Validate in an approved test scope before any real change: representative EN/FR job and skill titles; repository/group relationships; stable codes; expected mastery separate from assessments; publication with the employee persona; manager and employee filters; and permissions on each action. Recheck empty translations and route-specific visibility when a manager can see more than an employee.

For a denied API action, verify the exact action permission and company context. For an invalid reference or repeated job–skill attachment, use the technical guide's validation contracts. For delayed user skills, investigate event/consumer processing rather than repeatedly creating the relationship. Recovery for destructive replacement requires an agreed migration and backup process; none was exercised here.

Evidence and limitations​

  • Observed in application: 15 October 2026, smartmobility.io; existing manager session; independently captured EN/FR list and skill-edit screens. No settings, permissions, imports or forms were saved. Platform-core and dedicated nextgen settings screenshots were unavailable; repository/group field tables are code-backed rather than live form captures.
  • Verified in code: paths and symbols above plus nextgen src/Domain/V1/{Job,Skill,SkillGroup,JobSkill,Referential}/DTO, routing YAML, ReferentielListener, repositories and consumers detailed in the technical guide. Local source does not prove deployment identity or shared storage.
  • Documented in Confluence: feature-specific playbook and reference/group/job/Lexi guides cited above with verified versions/dates. Supplied PS entry points Delivery Philosophy & Project Methodology, v7, 30 December 2025, and Onboarding/learning and partner certification, v9, 18 February 2026, provide methodology context rather than verified feature switches. Supplied KBCT entry 2136702980 was unavailable.
  • Not verified: effective platform defaults, numeric weighting constraints beyond the inspected form, complete save/error behavior, translation overwrite rules, nextgen editor parity, migration rollback and live event delivery. Conflicts in the 2023 reference/group guidance are explicitly retained above rather than silently treated as current rules.

Last updated on 3 November 2026