The thing you hire into is a Position — one seat, under one Job Description, in one org unit. Before a single application arrives you create that Position: pick the Job Description it belongs to, place it in the structure, give it a title candidates will read, write or generate the job description, and choose how open it is.
Before you can hire: the Job Description must exist and be complete
A Position is always created under a Job Description, so the Job Description comes first. It must be complete — linked to both a sub-sector and a job family. An incomplete one is flagged Placeholder and is deliberately excluded from the Job Description picker on this form.
If the Job Description you need doesn't exist yet, create it at /{slug}/app/job-description — you can adopt it from the Saudi Standard Classification of Occupations or write your own, and it inherits its job family's competency set automatically. See Creating a Job Description.
The Job Description also carries three things this form deliberately does not ask you again: the required competencies (used for CV screening, interview rubrics, career paths and succession), the salary band, and the Saudization policy. Set them once on the Job Description and every Position under it inherits them.
Where to start
Either:
/{slug}/app/positions→ New position, or- the Job Description's own page → Create position (which pre-selects the Job Description for you).
Creating a Position requires the hiring permission — Talent Acquisition and HR Administrator have it. A Workforce Architect can define the Job Description but not open hiring on it.
The form
Two steps: Job Description & source, then Position details.
Step 1 — Job Description & source
Job Description (required)
A searchable list — type in either language, or search by job family. Only complete, non-archived Job Descriptions are offered. If the list is empty, the form links you to the Job Descriptions screen to build one.
Source
Once the Job Description is picked, choose where the Position comes from:
- From the predefined position library — the shipped catalog of 303 Saudi-labour-market positions, each mapped to one SSCO job description. Only the entries matching your Job Description's SSCO code are offered, with compliance badges (Saudis only, women only, licence required, localization quota) shown on each row. Picking one fills in the bilingual job title and seeds the job description from the position's summary — so you arrive at step 2 with the work already started.
- Create from scratch — you define every detail yourself on the next step.
A Job Description with no library matches falls through to "from scratch" automatically.
Step 2 — Position details
Org unit (optional)
Which department or section this seat sits in. Each option shows the unit's type and its full parent path, so two units with the same name are never ambiguous.
Picking one places the Position in the org structure straight away — it counts as placed, appears in the org chart, and its workload can be measured. Leave it empty to place it later; until you do it shows under the Not linked to any unit filter on the Positions list, with a banner that offers to show you every unplaced seat.
Job title (English) and Job title (Arabic)
At least one is required — you do not have to fill both. This is the outward-facing title. Whichever language you leave blank falls back to the Job Description's name, so a Position never renders untitled.
Keep it conventional. Sales Engineer is found by more candidates than Sales Wizard.
Job description (optional)
Two ways to fill it:
- Write it yourself, in either or both languages. Adopting a predefined position seeds it from the position's summary; whatever you type afterwards is yours and is never overwritten.
- Press Generate with AI. The model takes the Job Description's sector, its Saudization setting and its required competencies, and drafts a structured bilingual description — summary, responsibilities, requirements, preferred. You confirm the AI cost before it runs, the output replaces any existing draft, and it is fully editable and never overwritten afterwards. See Generating a job description with AI.
The description is optional because Positions are internal by default. Two reasons to write one anyway: it is what candidates read on the public posting, and reopening a closed Position later is refused without one.
Hiring pathway (required)
| Pathway | Who sees it |
|---|---|
| Internal only | Existing employees only. No public page is ever created. |
| Internal first | Internal now; opens externally by itself once your workspace's internal-first window elapses (14 days by default — change it in hiring configuration). You can also publish early with Make public now. |
| External | Open to everyone from the moment you save. |
What happens when you save
In one step, the platform:
- creates the Position with hiring status Open and stamps the moment it opened;
- sets the external date according to the pathway — now for External, now + the internal-first window for Internal first, never for Internal only;
- creates the hiring pipeline that will receive candidates;
- lands you on the Position page, where the Public posting card gives you the link, an AI-drafted share post, and WhatsApp / LinkedIn buttons.
No emails are sent and no one is notified. Everything stays workspace-internal until the first candidate applies.
Editing it afterwards
Edit on the Position page changes the job titles and the job description. The Job Description, the org unit and the pathway are not editable there — the Job Description is the Position's identity, the org unit is managed from the org structure, and the pathway is changed with the Make external action.
Next
The AI job-description generator in detail — what it does well, what it does badly, and how to steer it without rewriting from scratch.