We use cookies for analytics and to serve ads. Accept to enable Google Analytics and AdSense. You can decline to stay opt-out.
Job board/listing pages with an ItemList of JobPostings, FAQs, and breadcrumb navigation.
Represents the list of job postings on the page.
Captures each individual job with title, location, and hiring org.
Answers application process, timeline, and remote eligibility questions.
Provides navigation context from the careers hub.
Ensure every applicable required property is present in your implementation. Nested props reference their parent objects (for example, `offers.priceCurrency`).
Paste as a single script tag. Keep product details, offer data, shipping/returns, and FAQ answers in sync with the page.
[
{
"@context": "https://schema.org",
"@type": "ItemList",
"@id": "https://www.example.com/careers/engineering#list",
"name": "Engineering Jobs",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "JobPosting",
"@id": "https://www.example.com/careers/senior-frontend#job",
"title": "Senior Frontend Engineer",
"description": "Lead frontend initiatives using React/TypeScript. Improve performance and DX.",
"datePosted": "2025-02-10",
"validThrough": "2025-04-30",
"employmentType": "FULL_TIME",
"jobLocation": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"addressCountry": "US",
"addressLocality": "Remote"
}
},
"hiringOrganization": {
"@type": "Organization",
"name": "Example Corp",
"sameAs": "https://www.example.com"
},
"baseSalary": {
"@type": "MonetaryAmount",
"currency": "USD",
"value": {
"@type": "QuantitativeValue",
"minValue": 150000,
"maxValue": 190000,
"unitText": "YEAR"
}
},
"applicantLocationRequirements": {
"@type": "Country",
"name": "United States"
},
"directApply": true
}
},
{
"@type": "ListItem",
"position": 2,
"item": {
"@type": "JobPosting",
"@id": "https://www.example.com/careers/data-engineer#job",
"title": "Data Engineer",
"description": "Build and optimize our analytics pipelines and data platform.",
"datePosted": "2025-01-28",
"employmentType": "FULL_TIME",
"jobLocation": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"addressCountry": "US",
"addressLocality": "Austin",
"addressRegion": "TX",
"postalCode": "73301"
}
},
"hiringOrganization": {
"@type": "Organization",
"name": "Example Corp",
"sameAs": "https://www.example.com"
},
"baseSalary": {
"@type": "MonetaryAmount",
"currency": "USD",
"value": {
"@type": "QuantitativeValue",
"minValue": 140000,
"maxValue": 180000,
"unitText": "YEAR"
}
},
"directApply": true
}
}
]
},
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Do you hire remotely?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. Roles marked Remote accept applicants in the listed countries. Check applicantLocationRequirements for any restrictions."
}
},
{
"@type": "Question",
"name": "How long does the process take?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Our typical process is 2-3 weeks: recruiter screen, hiring manager interview, panel, then offer."
}
},
{
"@type": "Question",
"name": "How do I apply?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Use the Apply link on each job. We do not accept applications via email. DirectApply is supported from the job page."
}
}
]
},
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.example.com" },
{ "@type": "ListItem", "position": 2, "name": "Careers", "item": "https://www.example.com/careers" },
{ "@type": "ListItem", "position": 3, "name": "Engineering", "item": "https://www.example.com/careers/engineering" }
]
}
]Include one JobPosting per listing visible on the page. Keep titles, locations, and salaries aligned with the UI.
Set directApply to true only if candidates can apply directly on the page without intermediate redirects.