Skip to content

Careers Page

The Careers page is the public-facing portal where prospective candidates can browse open job listings and submit applications. It is separate from the internal Recruitment ATS — it provides the candidate-facing experience, while the Recruitment tool manages the internal pipeline. No authentication is required to view or apply.

  • Public job listings — Browse all published positions with department, location, and employment type
  • Job detail view — Full job description with an apply button
  • Resume upload — Candidates upload a PDF or Word document (max 10 MB) when applying
  • Application submission — Collects name, email, phone, cover letter, and resume; creates a candidate record and application in the ATS pipeline
  • Candidate deduplication — Existing candidates are matched by email and their application is linked to the existing record
  • Self-scheduling — Interview self-schedule links (token-based) allow candidates to pick available time slots; confirmed slots create Google Calendar events automatically
  • LinkedIn enrichment — Submitted applications trigger a background LinkedIn profile lookup to enrich candidate data

The Careers page is accessible at /careers. It does not require login and is visible to anyone with access to the app URL.

MethodPathAuthDescription
GET/api/careers/jobsNoneList all published jobs
GET/api/careers/jobs/:idNoneGet job detail
POST/api/careers/upload-resumeNoneUpload resume to R2 storage (PDF/Word, max 10 MB)
POST/api/careers/applyNoneSubmit a job application
GET/api/careers/schedule/:tokenTokenGet available interview slots for a scheduling link
POST/api/careers/schedule/:tokenTokenConfirm a time slot and create a Google Calendar event
  • Recruitment — The internal ATS that receives and manages applications submitted via this page