Job
A job
is a part of the core
and stored in ./core.ppl
of
the workspace. It tracks the basic requirements for a position within an
organization, primarily for performance management purposes. It also
defines requirements within the career matrix.
Fields
The following arguments are supported:
name
- (Required) The human-readable name of the job -String
requirements
- (Optional) A map of requirements by category for this job. See the career matrix topic for a full description. This field's properties are dependent on what is defined there.
Examples
Minimal
// since there are no requirements, there should be no career matrix either.
job manager {
name: "Engineering Manager"
}
member alex_rivera {
first_name: "Alex"
last_name: "Rivera"
job: manager
}
Full
job software_engineer_1 {
name: "Software Engineer I"
requirements: {
technical: {
implementation: "Implements well-defined features with guidance"
code_quality: "Writes maintainable code following team standards"
code_review: "Participates in code reviews and bug fixes"
testing: "Learns testing best practices"
}
project_execution: {
delivery: "Delivers assigned tasks within expected timeframes"
clarity: "Seeks clarification when requirements are unclear"
updates: "Updates progress regularly"
process: "Follows established development processes"
}
problem_solving: {
debugging: "Debugs and resolves basic technical issues"
impact: "Understands how their code impacts immediate dependencies"
decomposition: "Learns to break down problems into manageable tasks"
}
collaboration: {
participation: "Actively participates in team meetings"
communication: "Communicates blockers and progress clearly"
feedback: "Receives and implements feedback effectively"
teamwork: "Works well with immediate team members"
}
growth: {
learning: "Demonstrates eagerness to learn new technologies"
initiative: "Takes initiative in skill development"
mentorship: "Seeks and accepts mentorship"
domain: "Builds understanding of product domain"
}
}
}
matrix software_engineering {
name: "Software Engineering"
categories: {
technical: {
name: "Technical"
description: "Core technical and architectural capabilities"
}
project_execution: {
name: "Project Execution"
description: "Delivery and implementation of technical work"
}
problem_solving: {
name: "Problem Solving"
description: "Technical problem solving and system thinking"
}
collaboration: {
name: "Collaboration"
description: "Working with others and leadership"
}
growth: {
name: "Growth and Learning"
description: "Personal and professional development"
}
}
jobs: [
software_engineer_1,
]
}
member kevin_osei {
first_name: "Kevin"
last_name: "Osei"
job: software_engineer_1
}