The project started from a structural problem in the legacy HR data. The old setup was sufficient for broad job code administration, but it was not detailed enough to build future Job Roles, Job Profiles, and competency mapping for Talent Intelligence.
Root problem
The legacy Job Family was Human Resources, but the Job Function layer had very few usable categories, mainly HR Analyst and HR Operations. Job code titles carried job level and level track, such as JL8M-HR HR Analyst, but the actual HR workstream was still hidden behind a broad label.
Why this blocks the next system step
Job Role needs to become the primary mapping object for competencies, skills, and proficiency levels. Job Profile can then be attached to the role as a requirement container for education, experience, job description, and other role requirements. If the source structure only says HR Analyst or HR Operations, it cannot explain whether the employee performs recruitment, HR technology, payroll, HRBP, compensation, learning, employee relations, or organization development work.
Initial C-level direction
The agreed direction was to expand HR Job Function into a more meaningful architecture and create Job Roles from the combination of Job Function and level track. This was a strong first step, but the first role rule was still too broad when implemented in the system.
System issue found after implementation
If we kept the first rule, different JL levels could produce the same role title while the system generated different role codes. That is not clear for HR users and becomes confusing when writing competency mapping, because the business sees the same role name but the system treats them as different role records.
flowchart TB
A["Legacy Job Family
Human Resources"] --> B["Legacy Job Function"]
B --> C["HR Analyst"]
B --> D["HR Operations"]
C --> E["Job Code Title
Job Level plus Level Track plus broad HR label
Example JL8M-HR HR Analyst"]
D --> E
E --> F["Job Code Mapping
Employees mapped through broad job codes"]
F --> G["Weak foundation
for Job Role"]
G --> H["Weak foundation
for Job Profile"]
H --> I["Weak foundation
for competency mapping"]
classDef source fill:#FFF7ED,stroke:#EA580C,color:#111827,stroke-width:2px
classDef legacy fill:#E0F2FE,stroke:#0284C7,color:#0F172A,stroke-width:2px
classDef code fill:#F8FAFC,stroke:#64748B,color:#111827,stroke-width:2px
classDef risk fill:#FEE2E2,stroke:#DC2626,color:#7F1D1D,stroke-width:2px
class A source
class B,C,D legacy
class E,F code
class G,H,I risk