US-321: Create Job Opening & Publish¶
1. Story Title¶
Publish job opening to careers page
2. Context / Background¶
Recruitment requires public visibility of open roles; first step in pipeline.
3. User Persona¶
Primary: Priya – HR Manager Secondary: Hiring Manager
4. Problem Statement¶
No mechanism to publicly list job openings; applicants cannot discover roles.
5. Desired Outcome¶
HR creates a job record (title, description, location, employment type) and toggles Publish to expose on public careers page.
6. Business Value¶
Enables inbound candidate funnel, reducing manual posting overhead.
7. Scope (In / Out)¶
In: Job creation form, publish toggle, public listing page. Out: Application form (handled in subsequent story), multi-language content.
8. Acceptance Criteria (BDD)¶
Scenario: Create and publish job
Given HR creates a job with Publish enabled
When she saves
Then job appears on public careers page
Scenario: Unpublished job hidden
Given a job exists with Publish disabled
When a candidate views careers page
Then job is not listed
Scenario: Update job details
Given a published job
When HR edits the description
Then updated text appears on careers page
Scenario: Invalid required field
Given HR leaves title blank
When saving
Then validation error shown
9. UX Notes / References¶
Internal form; public list with simple card layout; SEO-friendly metadata tags.
10. Data / Domain Model Impact¶
JobOpening entity; published flag; timestamps.
11. NFR Touchpoints¶
- Performance: public listing cache refresh < 1 min after change.
- Security: public endpoint only exposes published + non-sensitive fields.
- Observability: job publish events.
12. Dependencies¶
Core architecture (hosting + routing). No HR employee dependency.
13. Risks & Mitigations¶
| Risk | Impact | Probability | Mitigation |
|---|---|---|---|
| SEO issues reduce visibility | Fewer applicants | Medium | Basic meta tags & sitemap generation |
14. Estimation Support¶
- Entity + CRUD
- Public listing endpoint
- Cache/invalidation
- UI internal + public
15. Analytics / Success Metrics¶
Published jobs count; views per job; click-through to apply (later).
16. Rollout / Release Strategy¶
Pilot with single job; expand after verifying listing performance.
17. Definition of Ready Checklist¶
- Field list finalized
- Public page route confirmed
18. Definition of Done Checklist¶
- Listing visible externally
- Publish/unpublish operations audited
19. Open Questions¶
- Need draft state separate from unpublished?
Version: 1.0