Prozessvorlagen-Konfiguration
Vollständige Referenz zur Konfiguration von Einstellungsprozessvorlagen mit YAML -- Phasentypen, Konfigurationsoptionen, Prüfer und Beispiele.
Übersicht
Eine Prozessvorlage definiert die Phasen, die ein Kandidat während Ihres Einstellungsprozesses durchläuft. Vorlagen werden in YAML verfasst und bestehen aus einer geordneten Liste von Phasen, jeweils mit einem Typ, einem Namen und optionaler Konfiguration.
Wenn Sie eine Stellenanzeige erstellen und eine Vorlage auswählen, werden die Phasen der Reihe nach angelegt. Kandidaten durchlaufen jede Phase sequenziell – von der Bewerbung bis zum Angebot.
Grundstruktur
name: My Hiring Process
description: |
A short description of this template.
Supports **Markdown** formatting.
tags:
- engineering
- remote
stages:
- type: application_form
name: "Application"
config:
candidate_description: "Tell us about yourself."
- type: live_interview
name: "Interview"
config:
duration_minutes: 60
- type: offer
name: "Offer"
Übergeordnete Schlüssel
| Schlüssel | Erforderlich | Beschreibung |
|---|---|---|
stages |
Ja | Geordnete Liste von Phasendefinitionen (mindestens eine) |
name |
Nein | Vorlagenname (kann auch im Formularfeld festgelegt werden) |
description |
Nein | Markdown-formatierte Beschreibung des Prozesses |
tags |
Nein | Liste von String-Tags zur Kategorisierung |
quick_fields |
Nein | Kandidaten-Metadatenfelder (siehe Schnellfelder weiter unten) |
Phasenschlüssel
Jede Phase erfordert name und type. Der optionale config-Hash und die reviewers-Liste variieren je nach Phasentyp.
| Schlüssel | Erforderlich | Beschreibung |
|---|---|---|
name |
Ja | Anzeigename der Phase |
type |
Ja | Einer der 10 unten aufgeführten Phasentypen |
config |
Nein | Typspezifische Konfigurationsoptionen |
reviewers |
Nein | Liste der Prüferzuweisungen |
Phasentypen-Referenz
application_form
Der Einstiegspunkt für Kandidaten. Erfasst strukturierte Informationen über benutzerdefinierte Formularfelder. Hält Kandidaten optional in einem Screening-Status, bevor sie weiterkommen.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Anweisungen, die dem Kandidaten angezeigt werden |
screening_enabled |
boolean | false | Einreichungen zur manuellen Prüfung zurückhalten, bevor sie weitergeleitet werden |
screening_message |
string | – | Nachricht, die Kandidaten während des aktiven Screenings angezeigt wird |
fields |
array | – | Liste der Formularfelddefinitionen (siehe unten) |
Formularfeldoptionen:
| Schlüssel | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
name |
Ja | string | Feldbezeichner |
type |
Ja | string | text, textarea, file, url, select, checkbox, email, phone |
required |
Nein | boolean | Ob das Feld ausgefüllt werden muss |
label |
Nein | string | Anzeigebeschriftung (Standard ist name) |
placeholder |
Nein | string | Platzhaltertext |
max_length |
Nein | integer | Maximale Zeichenanzahl (min: 1) |
options |
Nein | array | Auswahlmöglichkeiten für select-Felder |
- type: application_form
name: "Application"
config:
candidate_description: "Tell us about yourself."
screening_enabled: true
screening_message: "We'll review your application shortly."
fields:
- name: resume
type: file
required: true
- name: experience_level
type: select
required: true
options:
- "Junior (0-2 years)"
- "Mid (2-5 years)"
- "Senior (5+ years)"
- name: cover_letter
type: textarea
required: false
max_length: 500
code_assignment
Eine Take-Home-Programmieraufgabe. Wenn GitHub verbunden ist, wird für jeden Kandidaten ein privates Repository aus einer Vorlage erstellt. Beinhaltet Fristenverwaltung.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Anweisungen, die dem Kandidaten angezeigt werden |
github_template |
string | – | GitHub-Vorlagen-Repository (z. B. org/hiring-assignment) |
duration_days |
integer | – | Verfügbare Tage zur Fertigstellung (min: 1) |
estimated_hours |
string | – | Geschätzter Aufwand (z. B. "3-8") |
Vergütung: Auszahlungen werden pro Phase in der Phaseneinstellungsoberfläche konfiguriert, nicht im Vorlagen-YAML. Jeder Phasentyp kann eine Vergütung anbieten. Details finden Sie unter Kandidaten-Auszahlungen.
- type: code_assignment
name: "Take-Home Assignment"
config:
candidate_description: "Complete a practical coding exercise."
github_template: "mycompany/hiring-challenge"
duration_days: 7
estimated_hours: "3-6"
portfolio_upload
Kandidaten laden Arbeitsproben hoch (Design-Dateien, Schreibproben usw.). Unterstützt Dateitypbeschränkungen und Upload-Limits.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Anweisungen, die dem Kandidaten angezeigt werden |
accept |
array | – | Erlaubte Dateierweiterungen (z. B. pdf, png, figma) |
max_files |
integer | – | Maximale Dateianzahl (min: 1) |
- type: portfolio_upload
name: "Portfolio Review"
config:
candidate_description: "Share 3-5 examples of your best work."
accept:
- pdf
- png
- jpg
- figma
max_files: 5
questionnaire
Schriftliche Fragen, die Kandidaten asynchron beantworten. Nützlich für szenariobasiertes Screening in Support-, Vertriebs- oder redaktionellen Rollen.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Anweisungen, die dem Kandidaten angezeigt werden |
questions |
array | – | Liste der Fragendefinitionen |
Fragenoptionen:
| Schlüssel | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
type |
Ja | string | Fragenkategorie (z. B. scenario) |
prompt |
Ja | string | Der Fragetext |
- type: questionnaire
name: "Written Scenarios"
config:
candidate_description: "Respond to these real-world scenarios."
questions:
- type: scenario
prompt: "A customer reports a billing error. Walk us through your response."
- type: scenario
prompt: "You discover a bug affecting 10% of users. What do you do?"
video
Zeigt dem Kandidaten ein Video. Unterstützt hochgeladene Videos (über Mux) oder eingebettete Videos von externen Plattformen.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Anweisungen, die dem Kandidaten angezeigt werden |
video_source_type |
string | – | mux (hochgeladen) oder oembed (externe Einbettung) |
video_oembed_url |
string | – | URL für eingebettetes Video (wenn Quelle oembed ist) |
video_description |
string | – | Beschreibung oder Kontext zum Video |
video_min_watch_percentage |
integer | – | Mindestens erforderlicher Wiedergabeanteil in Prozent (1–100) |
- type: video
name: "Company Introduction"
config:
candidate_description: "Watch this video about our team and culture."
video_source_type: oembed
video_oembed_url: "https://www.youtube.com/watch?v=example"
video_description: "A 5-minute overview of our engineering team."
video_min_watch_percentage: 80
video_recording
Kandidaten nehmen eine Videoantwort auf oder laden eine hoch. Nützlich für Videovorstellungen, Video-Anschreiben oder asynchrone Video-Interviews. Erfordert die Mux-Integration.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Anweisungen, die dem Kandidaten angezeigt werden |
max_duration_seconds |
integer | 120 | Maximale Aufnahmelänge in Sekunden |
allow_upload |
boolean | true | Kandidaten das Hochladen einer voraufgezeichneten Videodatei erlauben |
max_retakes |
integer | – | Anzahl erlaubter Neuaufnahmen (leer = unbegrenzt) |
- type: video_recording
name: "Video Introduction"
config:
candidate_description: "Record a 2-minute video introducing yourself."
max_duration_seconds: 120
allow_upload: true
max_retakes: 3
team_review
Eine interne Prüfungsphase, in der Ihr Team einen Kandidaten bewertet. Unterstützt Abstimmungsschwellen und Vetoregeln.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Nachricht, die dem Kandidaten während dieser Phase angezeigt wird |
voting |
hash | – | Abstimmungskonfiguration (siehe unten) |
Abstimmungsoptionen:
| Schlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
threshold |
integer | – | Mindestanzahl an Ja-Stimmen zum Weiterkommen (1–10) |
require_all_reviewers |
boolean | false | Alle zugewiesenen Prüfer müssen abstimmen |
veto_auto_rejects |
boolean | false | Ein einzelnes Veto lehnt den Kandidaten automatisch ab |
- type: team_review
name: "Code Review"
config:
candidate_description: "Our team is reviewing your submission."
voting:
threshold: 2
require_all_reviewers: true
veto_auto_rejects: true
live_interview
Ein synchrones Interview per Videoanruf oder persönlich. Integriert sich mit der Kalenderplanung.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Anweisungen, die dem Kandidaten angezeigt werden |
duration_minutes |
integer | – | Interviewdauer in Minuten (min: 15) |
interviewers_required |
integer | – | Anzahl benötigter Interviewer (min: 1) |
includes_roleplay |
boolean | false | Ob das Interview eine Rollenspiel-Übung beinhaltet |
- type: live_interview
name: "Technical Interview"
config:
candidate_description: "A conversation about your technical skills."
duration_minutes: 60
interviewers_required: 2
reference_check
Referenzen von Kandidaten einholen und überprüfen.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Anweisungen, die dem Kandidaten angezeigt werden |
references_required |
integer | – | Anzahl benötigter Referenzen (min: 1) |
- type: reference_check
name: "References"
config:
candidate_description: "Provide contact details for your references."
references_required: 2
offer
Die abschließende Phase, in der Sie dem Kandidaten ein Angebot unterbreiten. Hat in der Regel minimale Konfiguration.
| Konfigurationsschlüssel | Typ | Standard | Beschreibung |
|---|---|---|---|
candidate_description |
string | – | Nachricht, die dem Kandidaten angezeigt wird |
- type: offer
name: "Offer"
config:
candidate_description: "We'd love to have you join the team."
Prüfer
Sie können jeder Phase Prüfer zuweisen. Jeder Prüfer benötigt eine E-Mail-Adresse und eine Rolle.
| Schlüssel | Erforderlich | Beschreibung |
|---|---|---|
email |
Ja | E-Mail-Adresse des Prüfers (muss einem Teammitglied entsprechen) |
role |
Ja | reviewer (Standard) oder lead (primärer Entscheidungsträger) |
- type: team_review
name: "Code Review"
config:
voting:
threshold: 2
reviewers:
- email: [email protected]
role: lead
- email: [email protected]
role: reviewer
- email: [email protected]
role: reviewer
Schnellfelder
Schnellfelder erfassen Kandidaten-Metadaten auf der obersten Ebene der Vorlage. Sie werden in der Kandidaten-Seitenleiste zur schnellen Einsicht angezeigt.
| Schlüssel | Erforderlich | Typ | Beschreibung |
|---|---|---|---|
key |
Ja | string | Eindeutiger Bezeichner |
label |
Ja | string | Anzeigebeschriftung |
field_type |
Nein | string | text (Standard), textarea, select, date |
placeholder |
Nein | string | Platzhaltertext |
options |
Nein | array | Auswahlmöglichkeiten für select-Felder |
quick_fields:
- key: salary_expectation
label: "Salary Expectation"
field_type: text
placeholder: "$80,000 - $100,000"
- key: start_date
label: "Earliest Start Date"
field_type: date
- key: work_authorization
label: "Work Authorization"
field_type: select
options:
- "US Citizen"
- "Permanent Resident"
- "Requires Sponsorship"
Vollständiges Beispiel
Eine vollständige Vorlage für die Einstellung eines Software Engineers, einschließlich Screening, Code Assignment, Team Review, zwei Interview-Runden, Referenzprüfung und Angebot. Um der Assignment-Phase eine Vergütung hinzuzufügen, konfigurieren Sie Auszahlungen in der Phaseneinstellungsoberfläche – siehe Kandidaten-Auszahlungen.
name: Software Engineer - Standard
description: |
Comprehensive process for mid-to-senior software engineers.
Includes a take-home assignment with team code review.
tags:
- engineering
- technical
- assignment
quick_fields:
- key: salary_expectation
label: "Salary Expectation"
field_type: text
- key: notice_period
label: "Notice Period"
field_type: text
stages:
- type: application_form
name: "Application"
config:
candidate_description: "Tell us about yourself and your experience."
screening_enabled: true
screening_message: "We're reviewing your application."
fields:
- name: resume
type: file
required: true
- name: github_url
type: url
required: false
- name: motivation
type: textarea
required: true
max_length: 500
- type: code_assignment
name: "Take-Home Assignment"
config:
candidate_description: "Complete a practical coding exercise at your own pace."
github_template: "mycompany/hiring-assignment"
duration_days: 8
estimated_hours: "3-8"
reviewers:
- email: [email protected]
role: lead
- type: team_review
name: "Code Review"
config:
candidate_description: "Our team reviews your code submission."
voting:
threshold: 2
require_all_reviewers: true
veto_auto_rejects: true
reviewers:
- email: [email protected]
role: lead
- email: [email protected]
role: reviewer
- type: live_interview
name: "Technical Interview"
config:
candidate_description: "A conversation about your technical skills."
duration_minutes: 75
interviewers_required: 2
- type: live_interview
name: "Culture & Values"
config:
candidate_description: "Get to know the team and learn about our culture."
duration_minutes: 45
interviewers_required: 1
- type: reference_check
name: "References"
config:
references_required: 2
- type: offer
name: "Offer"
config:
candidate_description: "We'll present you with an offer to join the team."
Tipps
- Beginnen Sie mit
application_form– es ist der natürliche Einstiegspunkt und ermöglicht das Erfassen von Lebensläufen und grundlegenden Informationen. - Enden Sie mit
offer– das hält die Pipeline übersichtlich und bietet eine abschließende Phase für das Tracking. - Nutzen Sie das Screening im Bewerbungsformular, um Kandidaten manuell zu prüfen, bevor sie weiterkommen. So wird verhindert, dass unqualifizierte Kandidaten Aufgaben erhalten.
- Vergüten Sie Take-Home-Aufgaben – konfigurieren Sie Auszahlungen in den Phaseneinstellungen, um Kandidaten zu entlohnen. Siehe Kandidaten-Auszahlungen.
- Halten Sie Prozesse unter 7 Phasen – lange Pipelines führen zu Kandidatenabbrüchen.
- Weisen Sie Prüfer den team_review- und code_assignment-Phasen zu, damit die richtigen Personen automatisch benachrichtigt werden.
- Verwenden Sie
candidate_descriptionin jeder Phase – Kandidaten sehen diese Nachricht, daher reduziert klare Kommunikation Verwirrung und Supportanfragen.